qukaidi před 3 roky
rodič
revize
89fc40fa70

+ 42 - 33
src/views/importTrade/receipt/config/customerContact.json

@@ -3,16 +3,16 @@
   "tip": false,
   "simplePage": true,
   "searchShow": true,
-  "addBtn":false,
-  "editBtn":false,
-  "addRowBtn":false,
-  "cellBtn":false,
-  "cancelBtn":false,
+  "addBtn": false,
+  "editBtn": false,
+  "addRowBtn": false,
+  "cellBtn": false,
+  "cancelBtn": false,
   "refreshBtn": false,
   "searchMenuSpan": 6,
   "dialogWidth": "60%",
   "align": "center",
-  "delBtn":false,
+  "delBtn": false,
   "tree": true,
   "border": true,
   "index": true,
@@ -44,13 +44,13 @@
       "decimals": 6
     }
   ],
-  "column":[
+  "column": [
     {
       "label": "提单号",
       "prop": "billNo",
       "overHidden": true,
       "index": 1,
-      "width":150,
+      "width": 150,
       "rules": [
         {
           "required": false,
@@ -58,12 +58,13 @@
           "trigger": "blur"
         }
       ]
-    },{
+    },
+    {
       "label": "合同号",
       "prop": "contractNumber",
       "overHidden": true,
       "index": 2,
-      "width":150,
+      "width": 150,
       "rules": [
         {
           "required": false,
@@ -71,12 +72,13 @@
           "trigger": "blur"
         }
       ]
-    },{
+    },
+    {
       "label": "货物品种",
       "prop": "priceCategory",
       "overHidden": true,
       "index": 3,
-      "width":200,
+      "width": 200,
       "rules": [
         {
           "required": false,
@@ -90,21 +92,21 @@
       "prop": "cntrNo",
       "overHidden": true,
       "index": 4,
-      "width":120
+      "width": 120
     },
-   {
+    {
       "label": "件数",
       "prop": "actualQuantity",
-     "overHidden": true,
+      "overHidden": true,
       "index": 6,
-      "width":120
+      "width": 120
     },
     {
       "label": "发票重量(吨)",
       "prop": "invoiceWeight",
       "overHidden": true,
       "index": 7,
-      "width":120,
+      "width": 120,
       "rules": [
         {
           "required": false,
@@ -118,7 +120,7 @@
       "prop": "billWeight",
       "overHidden": true,
       "index": 8,
-      "width":120,
+      "width": 120,
       "rules": [
         {
           "required": false,
@@ -128,11 +130,18 @@
       ]
     },
     {
+      "label": "毛重(吨)",
+      "prop": "grossWeight",
+      "overHidden": true,
+      "index": 9,
+      "width": 120
+    },
+    {
       "label": "单价",
       "prop": "price",
       "overHidden": true,
-      "index": 9,
-      "width":120,
+      "index": 10,
+      "width": 120,
       "rules": [
         {
           "required": false,
@@ -145,8 +154,8 @@
       "label": "销售金额",
       "prop": "contractAmount",
       "overHidden": true,
-      "index": 10,
-      "width":120,
+      "index": 11,
+      "width": 120,
       "rules": [
         {
           "required": false,
@@ -159,8 +168,8 @@
       "label": "备注",
       "prop": "remarks",
       "overHidden": true,
-      "index": 11,
-      "width":180,
+      "index": 12,
+      "width": 180,
       "cell": true,
       "rules": [
         {
@@ -174,8 +183,8 @@
       "label": "创建人",
       "prop": "createUserName",
       "overHidden": true,
-      "index": 12,
-      "width":100
+      "index": 13,
+      "width": 100
     },
     {
       "label": "创建日期",
@@ -183,15 +192,15 @@
       "type": "date",
       "format": "yyyy-MM-dd HH:mm:ss",
       "overHidden": true,
-      "index": 13,
-      "width":160
+      "index": 14,
+      "width": 160
     },
     {
       "label": "修改人",
       "prop": "updateUserName",
       "overHidden": true,
-      "index": 14,
-      "width":100
+      "index": 15,
+      "width": 100
     },
     {
       "label": "修改日期",
@@ -199,8 +208,8 @@
       "type": "date",
       "format": "yyyy-MM-dd HH:mm:ss",
       "overHidden": true,
-      "index": 15,
-      "width":160
+      "index": 16,
+      "width": 160
     }
   ]
-}
+}

+ 1 - 0
src/views/importTrade/receipt/detailsPageEdit.vue

@@ -103,6 +103,7 @@
             @row-click="handleRowClick"
             @row-update="rowUpdate"
             @saveColumn="saveColumn"
+            @resetColumn="resetColumn"
             @row-del="rowDel"
           >
             <template slot-scope="{row}" slot="billNo">

+ 30 - 20
src/views/purchase/contract/detailsPage.vue

@@ -16,8 +16,8 @@
             </el-button>
             <el-dropdown-menu slot="dropdown">
               <el-dropdown-item :loading="buttonLoading" @click.native="auditCheck">提交审批</el-dropdown-item>
-              <el-dropdown-item v-if="false" @click.native="checkScheduleDialog = true">审批进度</el-dropdown-item>
-              <el-dropdown-item v-if="false">撤销审批</el-dropdown-item>
+              <el-dropdown-item @click.native="checkScheduleDialog = true">审批进度</el-dropdown-item>
+              <el-dropdown-item disabled>撤销审批</el-dropdown-item>
             </el-dropdown-menu>
           </el-dropdown>
 
@@ -224,11 +224,13 @@
               <el-button type="warning" size="small" :loading="buttonLoading"
                 :disabled="selectContact.length == 0 || viewDisabled" @click="beforePage()">生成收货单
               </el-button>
+              <el-button type="warning" size="small" :loading="buttonLoading" :disabled="viewDisabled"
+                @click="download">下载模板
+              </el-button>
               <el-upload :action="baseURL" :headers="headers" :disabled="viewDisabled" :on-progress="uploading"
                 :show-file-list=false accept=".xls,.xlsx" multiple :on-success="importTemplate" :on-error="uploadError"
                 style="float: right">
-                <el-button type="primary" size="small" icon="el-icon-upload" v-show="goodsActives == 'goods'"
-                  :disabled="detailData.seeDisabled || browse">导 入</el-button>
+                <el-button type="primary" size="small" icon="el-icon-upload" :disabled="viewDisabled">导 入</el-button>
               </el-upload>
             </template>
           </avue-crud>
@@ -279,7 +281,7 @@ import { isPercentage, roundNumbers } from "@/util/validate";
 import billApplication from "@/components/bill/billApplication";
 //商品详情接口
 import { corpsattn } from "@/api/basicData/configuration"
-import { contrastObj, contrastList } from "@/util/contrastData";
+import { contrastObj, contrastList, contrastList2 } from "@/util/contrastData";
 import ApplyPayment from "../../../components/finance/applyPayment";
 import financialAccount from "../../../components/finance/financialAccount";
 import { pleaseCheck } from "@/api/basicData/configuration"
@@ -312,7 +314,7 @@ export default {
   },
   data() {
     return {
-      baseURL: '/api/blade-purchase-sales/orderitems/importPrice', // 商品明细上传路径
+      baseURL: '/api/trade-purchase/purchase-order/importPrice', // 商品明细上传路径
       headers: { "Blade-Auth": 'Bearer ' + getToken() },
       form: {},
       disabled: false,
@@ -662,7 +664,7 @@ export default {
       this.paymentTypeDic = res.data.data
     })
     this.getWorkDicts("boxModel").then(res => {
-     this.findObject(this.customerContact.column, "cntrType").dicData =
+      this.findObject(this.customerContact.column, "cntrType").dicData =
         res.data.data;
     })
     if (this.detailData.view) {
@@ -765,7 +767,7 @@ export default {
     beforeFinance(feesData, callback) {
       let params = {}
       if (contrastObj(this.form, this.oldForm) || contrastList(this.contactsData, this.oldContactsData)
-        || contrastList(feesData, this.oldFeesList) || contrastList(this.orderFilesList, this.oldFilesList)
+        || contrastList2(feesData, this.oldFeesList) || contrastList(this.orderFilesList, this.oldFilesList)
       ) {
         this.$confirm("数据发生变化,请先提交保存?", {
           confirmButtonText: "保存",
@@ -1183,6 +1185,10 @@ export default {
         })
       }
     },
+    download() {
+      window.open(`/api/trade-purchase/purchase-order/exportPrice?${this.website.tokenHeader
+        }=${getToken()}`);
+    },
     copyData() {
       if (this.verificationData()) {
         this.takeDisabled = false
@@ -1272,19 +1278,23 @@ export default {
     // 商品明细上传成功钩子
     importTemplate(res, file) {
       this.openFullScreen(true)
-      if (res.data.lose.length > 0) {
-        this.$message({
-          showClose: true,
-          message: '导入明细失败的大字有:' + res.data.lose.toString(),
-          type: 'error',
-          duration: 10000,
-        });
-      }
-      res.data.list.forEach(item => {
-
+      res.data.forEach(item => {
+        const params = {
+          ...item,
+          price: this.form.salesPrice,
+          cntrNum: 1,
+        }
+        this.$refs.crudContact.rowCellAdd(params)
       })
-
-
+    },
+    openFullScreen(res, text) {
+      const loading = this.$loading({
+        lock: true,
+        text: text,
+        spinner: 'el-icon-loading',
+        background: 'rgba(0, 0, 0, 0.7)'
+      });
+      if (res === true) loading.close();
     },
     //列保存触发
     async saveColumn() {

+ 11 - 9
src/views/salesManagement/salesContract/detailsPage.vue

@@ -12,16 +12,15 @@
         </el-button>
 
         <el-dropdown style="padding: 0 6px;line-height: 0">
-          <el-button type="primary" size="small" :loading="buttonLoading" :disabled="!form.id || viewDisabled">
+          <el-button type="primary" size="small" :loading="buttonLoading" :disabled="!form.id">
             审核处理<i class="el-icon-arrow-down el-icon--right"></i>
           </el-button>
           <el-dropdown-menu slot="dropdown">
             <el-dropdown-item :loading="buttonLoading" @click.native="auditCheck">审核数据</el-dropdown-item>
-            <el-dropdown-item v-if="false">审核进度</el-dropdown-item>
-            <el-dropdown-item v-if="false">撤销审核</el-dropdown-item>
+            <el-dropdown-item @click.native="checkScheduleDialog = true">审核进度</el-dropdown-item>
+            <el-dropdown-item disabled>撤销审核</el-dropdown-item>
           </el-dropdown-menu>
         </el-dropdown>
-
         <el-dropdown style="padding: 0 6px;line-height: 0" v-if="false">
           <el-button type="warning" :loading="buttonLoading" :disabled="!form.id || viewDisabled" size="small">
             账单处理<i class="el-icon-arrow-down el-icon--right"></i>
@@ -99,7 +98,8 @@
                 <el-input type="textarea" v-else-if="(item.prop === 'orderRemark')" v-model="form[item.prop]"
                   :disabled="viewDisabled" size="small" autocomplete="off" placeholder="请输入"></el-input>
                 <el-input type="age" v-else v-model="form[item.prop]" size="small"
-                  :disabled="item.disabled ? true : false || viewDisabled" autocomplete="off" placeholder="请输入"></el-input>
+                  :disabled="item.disabled ? true : false || viewDisabled" autocomplete="off" placeholder="请输入">
+                </el-input>
               </el-form-item>
             </el-col>
           </el-row>
@@ -120,7 +120,8 @@
               <span v-if="row.$cellEdit" class="required_fields">*</span>
               <el-select v-if="row.$cellEdit" style="width:90% !important;" v-model="row.orgOrderNo" placeholder=" "
                 size="small" clearable filterable>
-                <el-option v-for="(item, index) in contractDic" :key="index" :label="item.orderNo" :value="item.orderNo">
+                <el-option v-for="(item, index) in contractDic" :key="index" :label="item.orderNo"
+                  :value="item.orderNo">
                 </el-option>
               </el-select>
               <span v-else>{{ row.orgOrderNo }}</span>
@@ -189,7 +190,7 @@
               <el-button type="primary" icon="el-icon-plus" size="small" :disabled="viewDisabled"
                 :loading="buttonLoading" @click="newDetails">录入明细</el-button>
               <el-button type="warning" size="small" :loading="buttonLoading"
-                :disabled="selection.length < 1 || viewDisabled" @click="generateShipmentD">生成发货单
+                :disabled="selection.length ==0|| form.status!=1 " @click="generateShipmentD">生成发货单
               </el-button>
               <!--              <el-button type="info"
                          size="small"
@@ -928,11 +929,12 @@ export default {
               this.$message.success("操作成功!")
               detailSaleList(res.data.data.id).then(res => {
                 this.afterEcho(res.data.data)
-              }).finally(() => {
-                this.buttonLoading = false
               })
             }
           })
+            .finally(() => {
+              this.buttonLoading = false
+            })
           if (status === true) {
             this.$emit("goBack");
           }