From 544f30e28a3d8ea41e5ea8c0add2ce77c1b6fb1a Mon Sep 17 00:00:00 2001
From: haoxuan <haoxuan>
Date: 星期二, 07 五月 2024 17:48:31 +0800
Subject: [PATCH] 工种管理模块 编辑工种接口400的问题修改+增加如果启用不达标保底,则必须输入保底工资的逻辑

---
 src/views/productManage/silkRegisterForm/addPage.vue |  143 ++++++++++++++++++++++++++++++++---------------
 1 files changed, 97 insertions(+), 46 deletions(-)

diff --git a/src/views/productManage/silkRegisterForm/addPage.vue b/src/views/productManage/silkRegisterForm/addPage.vue
index cb5a4c1..24bcbdb 100644
--- a/src/views/productManage/silkRegisterForm/addPage.vue
+++ b/src/views/productManage/silkRegisterForm/addPage.vue
@@ -48,7 +48,7 @@
             label-width="80px"
           >
             <el-form-item label="缂栧彿" prop="number" class="form-item">
-              <el-input v-model="form.number" placeholder="璇疯緭鍏�"> </el-input>
+              <el-input v-model="form.number" :disabled="title=='淇敼'?true:false" placeholder="璇疯緭鍏�"> </el-input>
             </el-form-item>
             <el-form-item label="钀戒笣鏃堕棿" prop="finishDate" class="form-item">
               <el-date-picker
@@ -66,6 +66,7 @@
                 v-model="form.market"
                 placeholder="璇烽�夋嫨"
                 class="select-width"
+                @change="getGroupNumber"
               >
                 <el-option
                   v-for="item in marketList"
@@ -76,18 +77,18 @@
                 </el-option>
               </el-select>
             </el-form-item>
-            <el-form-item label="杞﹂棿" prop="name" class="form-item">
+            <el-form-item label="杞﹂棿" prop="workshopObj" class="form-item">
               <el-select
-                v-model="form.name"
+                v-model="form.workshopObj"
                 placeholder="璇烽�夋嫨"
                 class="select-width"
-                @change="getGroupNumber"
+                @change="getGroupNumber('workshopObj')"
               >
                 <el-option
                   v-for="item in nameList"
                   :key="item.ID"
                   :label="item.name"
-                  :value="item.name"
+                  :value="{ value: item.number, label: item.name }"
                 >
                 </el-option>
               </el-select>
@@ -115,6 +116,7 @@
                 placeholder="璇峰厛閫夋嫨杞﹂棿"
                 no-data-text="璇峰厛閫夋嫨杞﹂棿"
                 class="select-width"
+                @change="getGroupNumber()"
               >
                 <el-option
                   v-for="item in workshopGroupList"
@@ -179,6 +181,7 @@
               :detail-enter="isView ? true : false"
               :selectBox="false"
               :detailEnter="true"
+              :isBorder="true"
               :show-summary="showSummary"
               :product-table-list="tableList"
               @inputContent="inputContent"
@@ -220,25 +223,25 @@
           :model="form"
           :rules="rules"
           label-position="right"
-          label-width="60px"
+          label-width="70px"
         >
           <div class="form-box-t">
-            <el-form-item label="缂栧彿" prop="number" class="form-item">
+            <el-form-item label="缂栧彿锛�" prop="number" class="form-item">
               {{ form.number }}
             </el-form-item>
-            <el-form-item label="杞﹂棿" prop="name" class="form-item">
-              {{ form.name }}
+            <el-form-item label="杞﹂棿锛�" prop="workshopName" class="form-item">
+              {{ form.workshopName }}
             </el-form-item>
-            <el-form-item label="缁勫埆" prop="workshopGroup" class="form-item">
+            <el-form-item label="缁勫埆锛�" prop="workshopGroup" class="form-item">
               {{ form.workshopGroup }}
             </el-form-item>
-            <el-form-item label="鍥炴暟" prop="circle" class="form-item">
+            <el-form-item label="鍥炴暟锛�" prop="circle" class="form-item">
               {{ form.circle }}
             </el-form-item>
-            <el-form-item label="瑙勬牸" prop="spec" class="form-item">
+            <el-form-item label="瑙勬牸锛�" prop="spec" class="form-item">
               {{ form.spec }}
             </el-form-item>
-            <el-form-item label="鏃ユ湡" prop="finishDate" class="form-item">
+            <el-form-item label="鏃ユ湡锛�" prop="finishDate" class="form-item">
               {{ form.finishDate }}
             </el-form-item>
           </div>
@@ -249,6 +252,8 @@
               tooltip-effect="dark"
               style="width: 100%"
               :height="'calc(100% - 0px)'"
+              :header-cell-style="{ background: '#f1f3f8',color: '#000009', 'font-size': '12px', 'font-family': 'PingFangSC' }"
+              border
             >
               <el-table-column label="杞﹀彿" prop="ID" width="100">
               </el-table-column>
@@ -425,11 +430,12 @@
 </template>
 
 <script>
-// getWorkshopManageList,
+// getWorkshopManageList
 import {
   saveRegister,
   getDictList,
   getRegisterDetails,
+  getCarNumber
 } from "@/api/productManage/silkRegisterForm.js";
 import {
   getCheckDetails,
@@ -448,6 +454,7 @@
   computed: {},
   data() {
     return {
+      title:'',
       loading: false,
       activeName: "first",
       searchOptions: [],
@@ -465,8 +472,12 @@
         finishDate: [
           { required: true, message: "璇烽�夋嫨", trigger: ["change", "blur"] },
         ],
+        // 搴勫彛
+        market: [
+          { required: true, message: "璇烽�夋嫨", trigger: ["change", "blur"] },
+        ],
         // 杞﹂棿 搴旇true
-        name: [
+        workshopObj: [
           { required: true, message: "璇烽�夋嫨", trigger: ["change", "blur"] },
         ],
         spec: [
@@ -546,8 +557,6 @@
           {
             label: "绾ゅ害鍚堣",
             prop: "sum",
-            inputNumber: true,
-            isRequird: true,
           }, // 涓嬫鍥炶鏃ユ湡
         ],
       },
@@ -571,19 +580,20 @@
       this.activeName = query.activeName ? query.activeName : "first";
       this.registerId = query.id ? query.id : "";
       this.inspectID = query.inspectID ? query.inspectID : "";
+      this.title= query.title ? query.title : "";
     }
     this.getSelectDataList();
     this.keyword = "";
     this.getDetailsData();
   },
   methods: {
-    getDetailsData(id) {
+    async getDetailsData(id) {
       if (this.activeName == "first") {
         this.form = {
           number: "",
           finishDate: "",
           market: "",
-          name: "",
+          workshopObj: "",
           spec: "",
           workshopGroup: "",
           circleTwo: "",
@@ -592,14 +602,18 @@
           position: "",
         };
         if (this.registerId) {
-          getRegisterDetails({ id: id ? id : this.registerId }).then(
+         await getRegisterDetails({ id: id ? id : this.registerId }).then(
             (response) => {
               if (response.code === 200) {
                 let config = JSON.parse(
                   JSON.stringify(response.data ? response.data : {})
                 );
                 this.form = config;
-                this.getGroupNumber()
+                this.form.workshopObj={
+                  value:config.workshopNumber,
+                  label:config.workshopName,
+                }
+                this.getGroupNumber('','edit')
                 let finenessList=config.finenessList
                   ? config.finenessList
                   : [];
@@ -608,7 +622,6 @@
                     item.productId=index+1
                   })
                 }
-                console.log(finenessList,'===finenessList')
                 this.tableList.tableData = finenessList
                 this.tableData = this.tableList.tableData;
               }
@@ -618,7 +631,7 @@
       } else {
         this.form = {
           number: "",
-          name: "",
+          workshopObj: "",
           workshopGroup: "",
           circle: "",
           spec: "",
@@ -642,7 +655,7 @@
               );
               this.form = config;
               this.form.number = config.finenessRegister.number;
-              this.form.name = config.finenessRegister.name;
+              this.form.workshopName = config.finenessRegister.workshopName;
               this.form.workshopGroup = config.finenessRegister.workshopGroup;
               this.form.spec = config.finenessRegister.spec;
               this.form.finishDate = config.finenessRegister.finishDate;
@@ -756,27 +769,46 @@
         }
       });
     },
-    getGroupNumber() {
-      if (this.form.name) {
-        //缁勫埆
-        let number = "";
-        for (let i in this.nameList) {
-          if (this.nameList[i].name == this.form.name) {
-            number = this.nameList[i].number;
-            break;
-          }
-        }
-        getWorkshopManageGroup({ number: number }).then((res) => {
-          if (res.code == 200) {
-            this.workshopGroupList = [];
-            let workshopGroupList = res.data || {};
-            if (Object.keys(workshopGroupList).length > 0) {
-              for (let i in workshopGroupList) {
-                this.workshopGroupList.push(workshopGroupList[i]);
+    async getGroupNumber(val,type) {
+      if (Object.keys(this.form.workshopObj).length>0) {
+        if(this.form.workshopObj.value){
+          await getWorkshopManageGroup({ number: this.form.workshopObj.value }).then((res) => {
+            if (res.code == 200) {
+              this.workshopGroupList = [];
+              let workshopGroupList = res.data || {};
+              this.workshopGroupList=[]
+              if(val=='workshopObj'){
+                this.form.workshopGroup=''
+              }
+              if (Object.keys(workshopGroupList).length > 0) {
+                for (let i in workshopGroupList) {
+                  this.workshopGroupList.push(workshopGroupList[i]);
+                }
               }
             }
+          })
+        }
+        if(this.form.workshopGroup&&this.form.market&&type!='edit'){
+          await  getCarNumber({
+              workshopName:this.form.workshopObj.label,
+              marketName:this.form.market,
+              groupNumber:this.form.workshopGroup,
+            }).then((res) => {
+              if (res.code == 200) {
+                this.tableData=[]
+                let data = res.data?JSON.parse(JSON.stringify(res.data)) : [];
+               if(Object.keys(data).length>0){
+                for(let i in data){
+                    this.tableData.push({position:data[i],productId:Number(i)*2+1})
+                    this.tableData.push({position:data[i],productId:Number(i)*2+2})
+                }
+               }
+               this.tableList.tableData = this.tableData 
+              }else{
+                this.tableData=[]
+              }
+            });
           }
-        });
       } else {
         this.workshopGroupList = [];
       }
@@ -786,7 +818,6 @@
     },
     // 浜у搧鏂板
     addProductClick() {
-      debugger
       this.productId++;
       this.tableData.push({
         productId: this.productId,
@@ -805,7 +836,11 @@
         if (item.productId === row.productId) {
           item[prop] = val;
         }
+        if(item.fineness&&item.quantity){
+          item.sum=Number(item.fineness)*Number(item.quantity).toFixed(2)
+        }
       });
+      this.tableList.tableData= this.tableData 
     },
     tabsClick() {
       // if (tab.name === "first") {
@@ -838,7 +873,7 @@
           number: "",
           finishDate: "",
           market: "",
-          name: "",
+          workshopObj: "",
           spec: "",
           workshopGroup: "",
           circleTwo: "",
@@ -873,15 +908,26 @@
         if (valid) {
           let form = JSON.parse(JSON.stringify(this.form));
           // params.workshopGroup=Number(params.workshopGroup)
-          this.isAddloading = true;
           if (this.activeName == "first") {
             delete form.circleTwo;
             let finenessList = JSON.parse(
               JSON.stringify(this.tableList.tableData)
             );
+            let isContinue=false
+            for (let i in finenessList) {
+              if(!finenessList[i].position||!finenessList[i].fineness||!finenessList[i].quantity||!finenessList[i].sum){
+                isContinue=true
+                break;
+              }
+            }
+            if(isContinue){
+              this.$message.error('璇峰~鍐欏畬鏁村啀淇濆瓨锛�')
+              return true;
+            }
             for (let i in finenessList) {
               delete finenessList[i].productId;
             }
+            this.isAddloading = true;
             let params = {
               finenessList: finenessList,
               ...form,
@@ -890,6 +936,8 @@
             if (this.inspectID) {
               params.ID = this.form.ID ? this.form.ID : Number(this.inspectID);
             }
+            params.workshopName=this.form.workshopObj.label;
+            params.workshopNumber=this.form.workshopObj.value;
             saveRegister(params)
               .then((res) => {
                 if (res.code == 200) {
@@ -911,7 +959,9 @@
               });
           } else {
             let paramsTwo = {
-              ...form,
+              // ...form,
+              info:form,
+              items:this.tableTwoList.tableInfomation,
             };
             // 缂栬緫
             if (this.registerId) {
@@ -919,6 +969,7 @@
                 ? this.form.ID
                 : Number(this.registerId);
             }
+            this.isAddloading = true;
             saveCheck(paramsTwo)
               .then((res) => {
                 if (res.code == 200) {

--
Gitblit v1.8.0