From e20c00b978046bb77fc302aa0a49cda49f4f1345 Mon Sep 17 00:00:00 2001
From: licp <lichunping@guanfang.com.cn>
Date: 星期三, 26 六月 2024 18:03:54 +0800
Subject: [PATCH] 完善计算

---
 src/components/do/b1-ins-order/add.vue |  103 ++++++++++++++++++++++++++++++++++++++++-----------
 1 files changed, 81 insertions(+), 22 deletions(-)

diff --git a/src/components/do/b1-ins-order/add.vue b/src/components/do/b1-ins-order/add.vue
index 64dc4cd..b4a4ca4 100644
--- a/src/components/do/b1-ins-order/add.vue
+++ b/src/components/do/b1-ins-order/add.vue
@@ -163,8 +163,8 @@
             </el-select>
           </div>
         </el-col>
-        <el-col class="search_thing" :span="6">
-          <div class="search_label"><span class="required-span">* </span>濮旀墭浜猴細</div>
+        <el-col class="search_thing" :span="6" >
+          <div class="search_label"><span class="required-span">* </span>鍒跺崟浜猴細</div>
           <div class="search_input">
             <el-input size="small" clearable disabled v-model="addObj.custom"></el-input>
             <!-- <el-input readonly size="small" v-model="addObj.custom">
@@ -186,7 +186,7 @@
         <el-col class="search_thing" :span="6">
           <div class="search_label"><span class="required-span">* </span>鑱旂郴鏂瑰紡锛�</div>
           <div class="search_input">
-            <el-input size="small" placeholder="閫夋嫨濮旀墭瀹㈡埛" clearable disabled v-model="addObj.phone"></el-input>
+            <el-input size="small" placeholder="閫夋嫨濮旀墭瀹㈡埛" clearable :readonly="active>1" v-model="addObj.phone"></el-input>
           </div>
         </el-col>
         <el-col class="search_thing" :span="6">
@@ -306,7 +306,7 @@
           </div>
         </el-col>
         <el-col class="search_thing" :span="6">
-          <div class="search_label">鍒跺崟浜猴細</div>
+          <div class="search_label">濮旀墭浜猴細</div>
           <div class="search_input">
             <el-input size="small" placeholder="璇疯緭鍏�" clearable v-model="addObj.prepareUser" :readonly="active>1"></el-input>
           </div>
@@ -612,6 +612,12 @@
       <el-table
       :data="editTable"
       style="width: 100%">
+      <!-- inspectionItemList -->
+      <el-table-column
+          prop="inspectionItemList"
+          label="妫�楠岄」"
+          width="180">
+        </el-table-column>
         <el-table-column
           prop="sampleCode"
           label="鏍峰搧缂栧彿"
@@ -801,6 +807,8 @@
         totalArr: [],
         model: null,
         standardMethodListId: null,
+        symbolList:[
+        'RTS','A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z']
       }
     },
     watch: {
@@ -906,9 +914,8 @@
         this.selectUserDia = false
       },
       containsValue(str) {
-        let arr = ['RTS','D','W','X','H','L']
         let symbolItem = ''
-        arr.some(value =>{
+        this.symbolList.some(value =>{
           if(str.includes(value)){
             symbolItem  = value
             return true
@@ -942,6 +949,12 @@
               return code[index] + '' + num
             }
           }
+        }catch(e){}
+      },
+      handleTell(tell,symbolItem, value){
+        try{
+          let num = this.replaceAll(tell, symbolItem, value)
+          return num
         }catch(e){}
       },
       replaceAll(str,find,value) {
@@ -985,9 +998,7 @@
               this.saveMethod(sampleList)
             }).catch(() => {})
           }else{
-            let isRTS = this.totalArr.find(a => a.ask != null && (a.ask.includes('RTS') || a.ask.includes('D') || a.ask
-            .includes('W') ||
-            a.ask.includes('X') || a.ask.includes('H') || a.ask.includes('L')) && a.state == 1)
+            let isRTS = this.totalArr.find(a => a.ask != null && this.symbolList.find(b=>a.ask.includes(b)) && a.state == 1)
             if (isRTS) {
               this.editTable = this.handleData(sampleList,this.containsValue, 0)
               this.bsm3Dia = true;
@@ -998,8 +1009,12 @@
         }
       },
       save0(){
-        let sampleList = this.handleData(this.HaveJson(this.sampleList),this.handleAsk,1)
-        this.saveMethod(sampleList)
+        if(this.editTable.every(m=>m.value)){
+          let sampleList = this.handleData(this.HaveJson(this.sampleList),this.handleAsk,1)
+          this.saveMethod(sampleList)
+        }else{
+          this.$message.error('璇峰~鍐欒瘑鍒鍊�')
+        }
       },
       handleData(sampleList,calBack,type){
         let editTable = []
@@ -1015,7 +1030,10 @@
               if (a.state == 1) {
                 if(type==0){
                   let str = calBack(a.ask)
-                  str&&obj.symbolList.push(str)
+                  str&&obj.symbolList.push({
+                    symbolItem:str,
+                    inspectionItem:a.inspectionItem,
+                  })
                 }else if(type==1){
                   let arr = this.editTable.filter(b => b.sampleId == item.id)
                   arr.forEach(f => {
@@ -1023,6 +1041,10 @@
                       let ask = calBack(a.ask, f.symbolItem,f.value)
                       if (ask) {
                         a.ask = ask
+                      }
+                      let tell = this.handleTell(a.tell, f.symbolItem,f.value)
+                      if (tell) {
+                        a.tell = tell
                       }
                     }
                   })
@@ -1040,18 +1062,21 @@
                       if (c.state == 1) {
                         if(type==0){
                           let str = calBack(c.ask)
-                          str&&obj.symbolList.push(str)
+                          str&&obj.symbolList.push({
+                    symbolItem:str,
+                    inspectionItem:c.inspectionItem,
+                  })
                         }else if(type==1){
-                          // let ask = calBack(c.ask, c.rts)
-                          // if (ask && c.state == 1) {
-                          //   c.ask = csk
-                          // }
                           let arr = this.editTable.filter(b => b.sampleId == item.id)
                           arr.forEach(f => {
                             if(c.ask.includes(f.symbolItem)){
                               let ask = calBack(c.ask, f.symbolItem,f.value)
                               if (ask) {
                                 c.ask = ask
+                              }
+                              let tell = this.handleTell(c.tell, f.symbolItem,f.value)
+                              if (tell) {
+                                c.tell = tell
                               }
                             }
                           })
@@ -1068,7 +1093,10 @@
                       if (c.state == 1) {
                         if(type==0){
                           let str = calBack(c.ask)
-                          str&&obj.symbolList.push(str)
+                          str&&obj.symbolList.push({
+                    symbolItem:str,
+                    inspectionItem:c.inspectionItem,
+                  })
                         }else if(type==1){
                           // let ask = calBack(c.ask, c.rts)
                           // if (ask && c.state == 1) {
@@ -1080,6 +1108,10 @@
                               let ask = calBack(c.ask, f.symbolItem,f.value)
                               if (ask) {
                                 c.ask = ask
+                              }
+                              let tell = this.handleTell(c.tell, f.symbolItem,f.value)
+                              if (tell) {
+                                c.tell = tell
                               }
                             }
                           })
@@ -1094,7 +1126,10 @@
                           if (d.state == 1) {
                             if(type==0){
                               let str = calBack(d.ask)
-                              str&&obj.symbolList.push(str)
+                              str&&obj.symbolList.push({
+                    symbolItem:str,
+                    inspectionItem:d.inspectionItem,
+                  })
                             }else if(type==1){
                               // let ask = calBack(d.ask, d.rts)
                               // if (ask && d.state == 1) {
@@ -1106,6 +1141,10 @@
                                   let ask = calBack(d.ask, f.symbolItem,f.value)
                                   if (ask) {
                                     d.ask = ask
+                                  }
+                                  let tell = this.handleTell(d.tell, f.symbolItem,f.value)
+                                  if (tell) {
+                                    d.tell = tell
                                   }
                                 }
                               })
@@ -1125,7 +1164,23 @@
         })
         if(type==0){
           editTable.forEach(a => {
-            a.symbolList = Array.from(new Set(a.symbolList))
+            a.symbolList.forEach(b => {
+              let arr = a.symbolList.filter(c => c.symbolItem == b.symbolItem);
+              b.inspectionItemList = arr.map(c => c.inspectionItem).join(',')
+            })
+          })
+          editTable.forEach(a => {
+            let mySet = new Set();
+            a.symbolList = a.symbolList.filter(b =>{
+              let num0 = mySet.size;
+              mySet.add(b.symbolItem);
+              let num1 = mySet.size;
+              if(num0!=num1){
+                return true;
+              }else{
+                return false
+              }
+            })
           })
           let editTableNew = []
           editTable.forEach(a => {
@@ -1133,9 +1188,10 @@
               let obj = {
                 sampleCode:a.sampleCode,
                 model:a.model,
-                symbolItem:b,
+                symbolItem:b.symbolItem,
                 sampleId:a.sampleId,
-                value:null
+                value:null,
+                inspectionItemList:b.inspectionItemList,
               }
               editTableNew.push(obj)
             })
@@ -1154,6 +1210,7 @@
               a.model = a.model + ((a.modelNum == null || a.modelNum == '' || a.modelNum == 'null') ?
                 '' : (
                   '-' + a.modelNum))
+              a.insProduct = a.insProduct.filter(b=>b.state === 1)
               return a
             })),
             pairing: JSON.stringify(this.bsm2Val2)
@@ -1182,6 +1239,8 @@
             this.saveLoad = false
             if (res.code == 201) return
             this.$message.success('鎻愪氦鎴愬姛')
+            // this.$parent.multipleSelection = [{id: this.currentId}]
+            // this.$parent.print()
             // 濡傛灉绱ф�ョ▼搴︿负绱ф�ワ紝闇�瑕佺洿鎺ヤ笅鍙戜汉鍛�
             // if (this.addObj.type == 2) {
             // 	this.issuedDialogVisible = true;

--
Gitblit v1.9.3