瀏覽代碼

修改禅道1958的bug

Qukatie 9 月之前
父節點
當前提交
30f4274a62

+ 188 - 0
src/components/tradeAgency/fee-oceanFreight.vue

@@ -159,6 +159,73 @@
                 <span v-else>{{ row.stlExrate }}</span>
             </tempalte>
         </avue-crud>
+        <avue-crud id="out-table" class="box-card" :header-cell-class-name="headerClassName" ref="crud"
+        :row-style="{ height: '16px' }" :cell-style="{ padding: '0px' }" :option="sumOption" :data="sumData"></avue-crud>
+        <!--有admin 显示,有收和付各一个也显示出来-->
+        <div v-if="roleName.indexOf('admin') != -1 || ((roleName.indexOf('应收修改') != -1 || roleName.indexOf('应收查看') != -1) && (roleName.indexOf('应付修改') != -1 || roleName.indexOf('应付查看') != -1))"
+            style="display: flex;align-items: center;justify-content: space-around">
+            <div style="width: 30%">
+                <div class="bottomFlex" style="justify-content: space-around">
+                    <div>
+                        <div style="color: #81B337">
+                            <span>应收:</span>
+                            <span class="weightnum">¥{{ form.amountDr }}元</span>
+                        </div>
+                    </div>
+                    <div>
+                        <div style="color: #6BBCD1">
+                            <span>应付:</span>
+                            <span class="weightnum">¥{{ form.amountCr }}元</span>
+                        </div>
+                    </div>
+                    <div class="bottomFlex">
+                        <span>利润</span>
+                        <span>¥{{ form.amountProfit }}元</span>
+                    </div>
+                </div>
+            </div>
+            <div style="width: 30%">
+                <div class="bottomFlex" style="justify-content: space-around">
+                    <div>
+                        <div style="color: #81B337">
+                            <span>应收:</span>
+                            <span class="weightnum">${{ form.amountDrUsd }}元</span>
+                        </div>
+                    </div>
+                    <div>
+                        <div style="color: #6BBCD1">
+                            <span>应付:</span>
+                            <span class="weightnum">${{ form.amountCrUsd }}元</span>
+                        </div>
+                    </div>
+                    <div class="bottomFlex">
+                        <span>利润</span>
+                        <span>${{ form.amountProfitUsd }}元</span>
+                    </div>
+                </div>
+            </div>
+            <div style="width: 30%">
+                <div class="bottomFlex" style="justify-content: space-around">
+                    <div>
+                        <div style="color: #81B337">
+                            <span>应收:</span>
+                            <span class="weightnum">¥{{ form.amountDrLoc }}元</span>
+                        </div>
+
+                    </div>
+                    <div>
+                        <div style="color: #6BBCD1">
+                            <span>应付:</span>
+                            <span class="weightnum">¥{{ form.amountCrLoc }}元</span>
+                        </div>
+                    </div>
+                    <div class="bottomFlex">
+                        <span>利润</span>
+                        <span>¥{{ form.amountProfitLoc }}元</span>
+                    </div>
+                </div>
+            </div>
+        </div>
         <el-dialog title="提示" :visible.sync="templateVisible" append-to-body width="70%" :close-on-click-modal="false"
             :before-close="handleClose">
             <div>
@@ -232,6 +299,47 @@ export default {
     },
     data() {
         return {
+            sumData: [],
+            sumOption: {
+                border: true,
+                align: 'center',
+                menuAlign: 'center',
+                menu: false,
+                header: false,
+                addBtn: false,
+                // height: '100px',
+                column: [
+                    {
+                        label: '客户',
+                        prop: 'corpCnName',
+                        overHidden: true,
+                    }, {
+                        label: 'RMB应收',
+                        prop: 'rmbD',
+                        overHidden: true,
+                    }, {
+                        label: 'RMB应付',
+                        prop: 'rmbC',
+                        overHidden: true,
+                    }, {
+                        label: 'USD应收',
+                        prop: 'usdD',
+                        overHidden: true,
+                    }, {
+                        label: 'USD应付',
+                        prop: 'usdC',
+                        overHidden: true,
+                    }, {
+                        label: '合计应收',
+                        prop: 'sumD',
+                        overHidden: true,
+                    }, {
+                        label: '合计应付',
+                        prop: 'sumC',
+                        overHidden: true,
+                    }
+                ]
+            },
             loading: false,
             query: {},
             page: {
@@ -753,13 +861,65 @@ export default {
             templateRightData: [],
             itemDIds: null,
             itemCIds: null,
+            roleName:null,
         }
     },
     async created() {
+        this.roleName = localStorage.getItem('roleName').split(',')
         this.optionD = await this.getColumnData(this.getColumnName(392), this.optionDBack);
         this.optionC = await this.getColumnData(this.getColumnName(393), this.optionCBack);
     },
     methods: {
+        getSum() {
+            let sumArr = []
+            let corpArr = []
+            let newArr = []
+            this.sumData = []
+            sumArr = this.form.feeCenterListD.concat(this.form.feeCenterListC)
+            sumArr.forEach(e => {
+                if (e.corpCnName) {
+                    corpArr.push(e.corpCnName)
+                }
+            })
+            newArr = [... new Set(corpArr)]
+            newArr.forEach(e => {
+                let rmbD = 0
+                let rmbC = 0
+                let usdD = 0
+                let usdC = 0
+                let sumD = 0
+                let sumC = 0
+                sumArr.forEach(item => {
+                    if (e == item.corpCnName) {
+                        if (item.curCode == 'CNY' && item.dc == 'D') {
+                            rmbD += Number(item.amount)
+                            sumD += Number(item.amount)
+                        }
+                        if (item.curCode == 'CNY' && item.dc == 'C') {
+                            rmbC += Number(item.amount)
+                            sumC += Number(item.amount)
+                        }
+                        if (item.curCode == 'USD' && item.dc == 'D') {
+                            usdD += Number(item.amount)
+                            sumD += Number(item.amount) * Number(item.exrate)
+                        }
+                        if (item.curCode == 'USD' && item.dc == 'C') {
+                            usdC += Number(item.amount)
+                            sumC += Number(item.amount) * Number(item.exrate)
+                        }
+                    }
+                })
+                this.sumData.push({
+                    corpCnName: e,
+                    rmbD: rmbD,
+                    rmbC: rmbC,
+                    usdD: usdD,
+                    usdC: usdC,
+                    sumD: sumD,
+                    sumC: sumC
+                })
+            })
+        },
         // 模板导入
         templateExport() {
             if (!this.lefttemplate.id) {
@@ -1449,6 +1609,26 @@ export default {
         }
 
     },
+    watch: {
+        // 监听业务类型 如果不是分单 可以编辑分单号
+        'form.feeCenterListD': {
+            // 执行方法
+            handler(oldValue, newValue) {
+                this.getSum()
+            },
+            deep: true, // 深度监听
+            immediate: true  // 第一次改变就执行
+        },
+        // 监听箱信息数据 箱信息中有温度 自动切换 冻货
+        'form.feeCenterListC': {
+            // 执行方法
+            handler(oldValue, newValue) {
+                this.getSum()
+            },
+            deep: true, // 深度监听
+            immediate: true  // 第一次改变就执行,
+        }
+    },
 }
 </script>
 <style>
@@ -1492,4 +1672,12 @@ export default {
 .el-table--small th {
     padding: 2px !important;
 }
+.bottomFlex {
+    display: flex;
+    align-items: center;
+}
+.weightnum {
+    font-size: 15px;
+    font-weight: 500;
+}
 </style>

+ 1 - 1
src/views/tradeAgency/oceanFreightImport/detailsPage.vue

@@ -728,7 +728,7 @@ export default {
                             label: '否',
                             value: 0
                         }],
-                        disabled: false,
+                        disabled: true,
                     },
                     {
                         label: "放单方式",