Pārlūkot izejas kodu

1.海运出口 报表修改字段
2.商务中心 客户托书 新加时直接提取价格明细不显示价格 导入之后需要直接保存
3.审批管理 新加路由缓存
4.海运进出口 费用主表更改字段
5.海运进出口 列表页 分单号需要合计
6.海运进出口 复制单据 取消默认值

Qukatie 6 mēneši atpakaļ
vecāks
revīzija
0578db4281

+ 14 - 0
src/router/views/index.js

@@ -1010,6 +1010,20 @@ export default [{
     component: () => import( /* webpackChunkName: "views" */ '@/views/approveData/index')
   }]
 },
+{
+  path: '/approveDataH/index',
+  component: Layout,
+  hidden: true,
+  children: [{
+    path: '/approveDataH/index',
+    name: "审批数据(H)",
+    meta: {
+      i18n: '/approveDataH/index',
+      keepAlive: true,
+    },
+    component: () => import( /* webpackChunkName: "views" */ '@/views/approveDataH/index')
+  }]
+},
 // 账单明细
 {
   path: '/bill_details',

+ 4 - 4
src/views/iosBasicData/OceanFreightImport/bills/assembly/feecenter.vue

@@ -32,12 +32,12 @@
                         </el-form-item>
                     </el-col>
                     <el-col :span="6">
-                        <el-form-item label="booking NO" prop="bookingNo" v-if="this.assemblyForm.billType != 'MH'">
+                        <el-form-item label="HB/L NO" prop="hblno">
                             <span slot="label">
-                                <span style="color: #1e9fff">booking NO</span>
+                                <span style="color: #1e9fff">HB/L NO</span>
                             </span>
-                            <el-input type="age" style="width: 100%;" v-model="assemblyForm.bookingNo" size="small"
-                                autocomplete="off" disabled clearable placeholder="booking NO"></el-input>
+                            <el-input type="age" style="width: 100%;" v-model="assemblyForm.hblno" size="small"
+                                autocomplete="off" disabled clearable placeholder="HB/L NO"></el-input>
                         </el-form-item>
                     </el-col>
                 </el-row>

+ 26 - 2
src/views/iosBasicData/OceanFreightImport/bills/index.vue

@@ -6,7 +6,8 @@
                 v-model="form" ref="crud" :search.sync="query" @row-update="rowUpdate" @row-save="rowSave"
                 @row-del="rowDel" @search-change="searchChange" @search-reset="searchReset" :row-style="rowStyle"
                 @selection-change="selectionChange" @current-change="currentChange" @size-change="sizeChange"
-                @refresh-change="refreshChange" @on-load="onLoad" @expand-change="expandChange" @resetColumn="
+                :summary-method="summaryMethod" @refresh-change="refreshChange" @on-load="onLoad"
+                @expand-change="expandChange" @resetColumn="
                     resetColumnTwo('crud', 'option', 'optionBack', 309.11)
                     " @saveColumn="
                         saveColumnTwo('crud', 'option', 'optionBack', 309.11)
@@ -465,6 +466,7 @@ export default {
                 editBtn: false,
                 menuWidth: "auto",
                 align: "center",
+                showSummary: true,
                 column: [
                     {
                         label: "所属公司",
@@ -1454,6 +1456,28 @@ export default {
         }
     },
     methods: {
+        summaryMethod({ columns, data }) {
+            const sums = [];
+            if (columns.length > 0) {
+                columns.forEach((column, index) => {
+                    sums[0] = "合计";
+                    let prop = column.property
+                    if (['teu', 'teuTotal', 'quantityV20', 'quantityV40', 'quantityV40hc', 'quantityV45', 'quantityV48'].includes(prop)) {
+                        let values = this.data.filter(item => item.hblno).map(item => Number(item[prop] || 0));
+                        let all = values.length !== 0 ? sums[index] = values.reduce((a, b) => {
+                            return a + b;
+                        }) : 0
+                        if (prop == 'teu' || prop == 'quantityV20' || prop == 'quantityV40' || prop == 'quantityV40hc' || prop == 'quantityV45' || prop == 'quantityV48') {
+                            console.log(all)
+                            sums[index] = all
+                        }
+                    } else {
+                        sums[index]
+                    }
+                });
+            }
+            return sums;
+        },
         costSubmit() {
             let podId = []
             let destinationId = []
@@ -2088,7 +2112,7 @@ export default {
                 title: "复制单据",
                 width: "300px",
                 menuPosition: "right",
-                data: { checkbox: "复制费用,复制箱型箱量" },
+                data: { checkbox: "" },
                 option: {
                     submitText: "确认",
                     emptyText: "取消",

+ 26 - 3
src/views/iosBasicData/SeafreightExportF/bills/index.vue

@@ -6,7 +6,7 @@
                 v-model="form" ref="crud" :search.sync="query" @row-update="rowUpdate" @row-save="rowSave"
                 @row-del="rowDel" @search-change="searchChange" @search-reset="searchReset"
                 @selection-change="selectionChange" @current-change="currentChange" @size-change="sizeChange"
-                @refresh-change="refreshChange" @on-load="onLoad" :row-style="rowStyle"
+                @refresh-change="refreshChange" @on-load="onLoad" :row-style="rowStyle" :summary-method="summaryMethod"
                 @resetColumn="resetColumnTwo('crud', 309)" @saveColumn="saveColumnTwo('crud', optionBack, 309)">
                 <template slot-scope="{ disabled, size }" slot="billSortSearch">
                     <el-radio-group v-model="query.billSort">
@@ -170,7 +170,7 @@
                 <template slot="eta" slot-scope="scope">
                     <span>{{
                         scope.row.eta ? scope.row.eta.slice(0, 10) : ""
-                        }}</span>
+                    }}</span>
                 </template>
                 <template slot="updateTime" slot-scope="scope">
                     <span>{{
@@ -599,6 +599,7 @@ export default {
                 editBtn: false,
                 menuWidth: "auto",
                 align: "center",
+                showSummary: true,
                 column: [
                     {
                         label: "所属公司",
@@ -1689,6 +1690,28 @@ export default {
         }
     },
     methods: {
+        summaryMethod({ columns, data }) {
+            const sums = [];
+            if (columns.length > 0) {
+                columns.forEach((column, index) => {
+                    sums[0] = "合计";
+                    let prop = column.property
+                    if (['teu','teuTotal','quantityV20','quantityV40','quantityV40hc','quantityV45','quantityV48'].includes(prop)) {
+                        let values = this.data.filter(item=>item.hblno).map(item => Number(item[prop] || 0));
+                        let all = values.length !== 0 ? sums[index] = values.reduce((a, b) => {
+                            return a + b;
+                        }) : 0
+                        if (prop == 'teu'||prop == 'quantityV20'||prop == 'quantityV40'||prop == 'quantityV40hc'||prop == 'quantityV45'||prop == 'quantityV48') {
+                            console.log(all)
+                            sums[index] = all
+                        }
+                    } else {
+                        sums[index]
+                    }
+                });
+            }
+            return sums;
+        },
         freightRateSubmit() {
             const ids = []
             for (let item of this.selectionList) {
@@ -2389,7 +2412,7 @@ export default {
                 title: "复制单据",
                 width: "300px",
                 menuPosition: "right",
-                data: { checkbox: "复制费用,复制箱型箱量" },
+                data: { checkbox: "" },
                 option: {
                     submitText: "确认",
                     emptyText: "取消",

+ 11 - 9
src/views/iosBasicData/businessCenter/customerLetter/detailsPage.vue

@@ -7,9 +7,9 @@
         </el-button>
       </div>
       <div class="add-customer-btn">
-        <el-button size="small"  :disabled="!form.id" @click="$refs.print.openDialog()">预 览
+        <el-button size="small" :disabled="!form.id" @click="$refs.print.openDialog()">预 览
         </el-button>
-        <el-button v-if="roleName.indexOf('admin') != -1" size="small"  :disabled="!form.id"
+        <el-button v-if="roleName.indexOf('admin') != -1" size="small" :disabled="!form.id"
           @click="$refs.report.openDialog()">报表设计
         </el-button>
         <!--        <el-button class="el-button&#45;&#45;small-yh" style="margin-left: 6px;" type="danger" size="small"
@@ -28,7 +28,7 @@
         <el-button v-if="form.id" class="el-button--small-yh" style="margin-left: 6px;" type="success" size="small"
           :disabled="form.status != 0 || form.issueStatus == 1" @click="application">运费申请
         </el-button>
-        <el-button v-if="form.status == 1"  class="el-button--small-yh" style="margin-left: 6px;" type="danger"
+        <el-button v-if="form.status == 1" class="el-button--small-yh" style="margin-left: 6px;" type="danger"
           size="small" @click="revokeApplication">撤销单据请核
         </el-button>
         <el-dropdown style="line-height: 0" v-if="importTemplate == 1">
@@ -216,7 +216,8 @@
                       </el-form-item>
                     </el-col>
                     <el-col span="12">
-                      <el-form-item label="OP" prop="operatorName">
+                      <el-form-item label="OP" prop="operatorName"
+                        :rules="[{ required: true, message: ' ', trigger: 'blur' }]">
                         <dic-select v-model="form.operatorName" placeholder="OP" :key="form.branchId" label="realName"
                           :url="'/blade-user/userListAll?roleAlias=操作员&deptId=' + form.branchId" :filterable="true"
                           @selectChange="dicChange('operatorName', $event)" :disabled="editDisabled"></dic-select>
@@ -521,8 +522,8 @@ export default {
       form: {
         branchId: JSON.parse(localStorage.getItem('sysitemData')).deptId,
         branchName: JSON.parse(localStorage.getItem('sysitemData')).deptName,
-        operatorName: JSON.parse(localStorage.getItem('saber-userInfo')).content.user_name, // OP 默认登录人
-        operatorId: JSON.parse(localStorage.getItem('saber-userInfo')).content.user_id,
+        customerServiceName: JSON.parse(localStorage.getItem('saber-userInfo')).content.user_name, // OP 默认登录人
+        customerServiceId: JSON.parse(localStorage.getItem('saber-userInfo')).content.user_id,
         businessType: 'KHTS',
         billNoFormat: 'KHTS',
         businessTypeCode: 'KHTS',
@@ -1093,7 +1094,6 @@ export default {
       }
     },
     importData(row) {
-      console.log(row)
       this.form.preContainersList.forEach(item => {
         if (item.cntrTypeCode == '20GP') {
           item.salesPrice = row.gp20
@@ -1108,7 +1108,7 @@ export default {
           item.costPrice = row.hc40Cost
         }
       })
-      console.log(this.form.preContainersList)
+      this.submit()
     },
     textareaBlur(name, row) {
       this.form.detail[name] = row.toUpperCase()
@@ -1255,7 +1255,9 @@ export default {
       }
       this.form.preContainersList.push({
         pid: this.form.id,
-        $cellEdit: true
+        $cellEdit: true,
+        oceanFreight: 0,
+        salesPrice: 0
       })
     },
     async feecAddRow() {