From 22686249d05921f62a033819f0294c6586d46bf3 Mon Sep 17 00:00:00 2001
From: licp <lichunping@guanfang.com.cn>
Date: 星期五, 09 八月 2024 16:57:25 +0800
Subject: [PATCH] 修改数采bug

---
 src/components/do/b1-inspect-order-plan/Inspection.vue |  165 ++++++++++++++++++++++++++++++++++++++-----------------
 1 files changed, 114 insertions(+), 51 deletions(-)

diff --git a/src/components/do/b1-inspect-order-plan/Inspection.vue b/src/components/do/b1-inspect-order-plan/Inspection.vue
index 7511cec..713522c 100644
--- a/src/components/do/b1-inspect-order-plan/Inspection.vue
+++ b/src/components/do/b1-inspect-order-plan/Inspection.vue
@@ -242,7 +242,7 @@
         <!-- <el-button size="small" type="primary" @click="fiberOpticVisible=true" v-if="fiberOptic.length>0">鍏夌氦鍒囨崲</el-button>
         <el-button size="small" type="primary" @click="fiberOpticTapeVisible=true" v-if="fiberOpticTape.length>0">鍏夌氦甯﹀垏鎹�</el-button>
         <el-button size="small" type="primary" @click="bushingVisible=true" v-if="bushing.length>0">濂楃鍒囨崲</el-button> -->
-        <el-button size="small" type="primary" @click="sampleVisible=true">鏍峰搧鍒囨崲</el-button>
+        <el-button size="small" type="primary" @click="sampleVisible=true;uploadSample()">鏍峰搧鍒囨崲</el-button>
         <el-button size="small" type="primary" @click="taskVisible=true">浠诲姟鍒囨崲</el-button>
         <el-button size="small" type="primary" @click="addVerifyDia = true" v-if="state==1"
           :loading="submitLoading">鎻愪氦</el-button>
@@ -384,6 +384,7 @@
                     <template v-if="PROJECT=='妫�娴嬩腑蹇�'||PROJECT=='瑁呭鐢电紗'&&getInspectionValueType(n.i) != 2 ">
                       <span v-if="n.v.v===1" :style="`font-family:${n.v.ff} !important;color: green;`">鍚堟牸</span>
                       <span v-else-if="n.v.v===0" :style="`font-family:${n.v.ff} !important;color: red;`">涓嶅悎鏍�</span>
+                      <span v-else-if="n.v.v===3" :style="`font-family:${n.v.ff} !important;color: #3A7BFA;`">涓嶅垽瀹�</span>
                       <span v-else :style="`font-family:${n.v.ff} !important;`">寰呭畾</span>
                     </template>
                   </template>
@@ -612,6 +613,7 @@
               <template slot-scope="scope">
                 <span v-if="scope.row.arr[index].insResult===1" style="color: green;">鍚堟牸</span>
                 <span v-else-if="scope.row.arr[index].insResult===0" style="color: red;">涓嶅悎鏍�</span>
+                <span v-else-if="scope.row.arr[index].insResult===3" style="color: #3A7BFA;">涓嶅垽瀹�</span>
                 <span v-else>寰呭畾</span>
               </template>
             </el-table-column>
@@ -691,6 +693,7 @@
                 <template v-else>
                   <span v-if="item.insResult===1" style="color: green;">鍚堟牸</span>
                   <span v-else-if="item.insResult===0" style="color: red;">涓嶅悎鏍�</span>
+                  <span v-else-if="item.insResult===3" style="color: #3A7BFA;">涓嶅垽瀹�</span>
                   <span v-else>寰呭畾</span>
                 </template>
               </td>
@@ -1052,7 +1055,9 @@
           }
         ],
         getDataIndex:[],
-        getDataIndexLoading:false
+        getDataIndexLoading:false,
+        changeType:null,
+        getDataTypeId:''
       }
     },
     computed: {
@@ -1110,15 +1115,18 @@
           }
           let list = await this.getCurrentProduct(this.currentSample.id,0)
           this.currentSample.insProduct = this.HaveJson(list)
-          // console.log(this.currentSample)
+          this.param = {}
+          this.changeType = 0;
           this.currentSample.insProduct.forEach(a => {
-            this.param[a.id] = {
-              insValue: [],
-              comValue: [],
-              resValue: null,
-              equipValue: [],
-              equipName: [],
-              insResult: null
+            if(this.handleCasing(a.inspectionItem)){
+              this.param[a.id] = {
+                insValue: [],
+                comValue: [],
+                resValue: null,
+                equipValue: [],
+                equipName: [],
+                insResult: null
+              }
             }
           })
           this.determineWhetherToCollectData()
@@ -1143,29 +1151,31 @@
         })
       },
       currentTable(val1, val0) {
-        if(val0 !=null && val1 != val0){
-        if(this.tableLists.find(m=>m.templateId==val1)&&(this.tableLists.find(m=>m.templateId==val1).templateName=='鎴愬搧缂嗘楠屽師濮嬭褰�')){
-          if(this.casing.length>0){
-            this.handleChange(this.casing[0].id,3)
+        if (val0 != null && val1 != val0) {
+          if(this.tableLists.find(m=>m.templateId==val1)&&(this.tableLists.find(m=>m.templateId==val1).templateName=='鎴愬搧缂嗘楠屽師濮嬭褰�')){
+            if(this.casing.length>0){
+              this.handleChange(this.casing[0].id,3)
+            }
+            return
           }
-          return
-        }
-        if(this.changeType && this.changeType>0){
-          return
-        }
+          if(this.changeType&&this.changeType>0){
+            return
+          }
           this.tableLists.forEach(async (m, i) => {
             if (m.templateId == val1) {
               let list = await this.getCurrentProduct(this.currentSample.id,0)
               this.currentSample.insProduct = this.HaveJson(list)
-              // console.log(this.currentSample)
+              this.param = {}
               this.currentSample.insProduct.forEach(a => {
-                this.param[a.id] = {
-                  insValue: [],
-                  comValue: [],
-                  resValue: null,
-                  equipValue: [],
-                  equipName: [],
-                  insResult: null
+                if(this.handleCasing(a.inspectionItem)){
+                  this.param[a.id] = {
+                    insValue: [],
+                    comValue: [],
+                    resValue: null,
+                    equipValue: [],
+                    equipName: [],
+                    insResult: null
+                  }
                 }
               })
               this.getReportModel(this.currentSample.id)
@@ -1194,7 +1204,6 @@
               }
             }
           })
-          this.handleCasing()
         }
       },
       equipForm:{
@@ -1389,6 +1398,7 @@
             // 鍚� Worker 鍙戦�佹秷鎭紝寮�濮嬪鐞嗛�昏緫
             this.getDataIndexLoading = false
             this.dataGetDia = false
+            this.getDataTypeId = ''
             this.worker0.postMessage(JSON.stringify({
               dataAcquisitionInfo: this.dataAcquisitionInfo,
               list:this.tableList[0].arr
@@ -1404,6 +1414,8 @@
             let {list,n} = result.value
             this.$set(this.tableList[0],'arr',list)
             this.changeInput('',`${this.currentSample.insProduct[0].templateId}-${n.r}-${n.c}-${n.i}`,n)
+          }else if(result.getDataTypeId){
+            this.getDataTypeId = result.getDataTypeId
           }
         };
       },
@@ -1977,6 +1989,14 @@
         this.collected = collected
         this.temDataAcquisition = temDataAcquisition
       },
+      uploadSample(){
+        this.$axios.post(this.$api.insOrderPlan.doInsOrder, {
+          id: this.id,
+          laboratory: this.sonLaboratory
+        }).then(async res => {
+          this.sampleProduct = res.data.sampleProduct
+        })
+      },
       async getCurrentProduct(id,type){
         this.tableLoading = true;
         let res = await this.$axios.post(this.$api.insOrderPlan.getInsProduct+'?id='+id+'&type='+type+'&laboratory='+this.sonLaboratory)
@@ -2053,15 +2073,18 @@
         this.currentSample = this.HaveJson(row)
         let list = await this.getCurrentProduct(row.id,0)
         this.currentSample.insProduct = this.HaveJson(list)
-        this.handleCasing()
+        this.param = {}
+        this.changeType = 0;
         this.currentSample.insProduct.forEach(a => {
-          this.param[a.id] = {
-            insValue: [],
-            comValue: [],
-            resValue: null,
-            equipValue: [],
-            equipName: [],
-            insResult: null
+          if(this.handleCasing(a.inspectionItem)){
+            this.param[a.id] = {
+              insValue: [],
+              comValue: [],
+              resValue: null,
+              equipValue: [],
+              equipName: [],
+              insResult: null
+            }
           }
         })
         this.getReportModel(row.id)
@@ -2080,9 +2103,15 @@
           currentTable:this.currentTable
         }));
       },
-      handleCasing(){
-        if(this.tableLists.find(m=>m.templateId==this.currentTable)&&(this.tableLists.find(m=>m.templateId==this.currentTable).templateName!='鎴愬搧缂嗘楠屽師濮嬭褰�')){
-          this.currentSample.insProduct = this.currentSample.insProduct.filter(m=>!m.inspectionItem.includes('鏉惧绠�'))
+      handleCasing(inspectionItem){
+        if(this.changeType!=3){
+          if(inspectionItem.includes('鏉惧绠�')){
+            return false
+          }else{
+            return true
+          }
+        }else{
+          return true
         }
       },
       getReportModel(id){
@@ -2098,10 +2127,11 @@
         })
       },
       async handleChange(m,type){
-        this.changeType = type;
+        this.changeType = type
         if(m){
           let list = await this.getCurrentProduct(m,type)
           if(list.length>0){
+            this.param = {}
             list.forEach(a => {
               this.param[a.id] = {
                 insValue: [],
@@ -2651,6 +2681,26 @@
         //     return
         //   }
         // }
+        let str = code.split('-')
+        let pId = str[3]
+        for(let i =0;i<this.currentSample.insProduct.length;i++){
+          if(this.currentSample.insProduct[i].id==pId&&(this.currentSample.insProduct[i].ask=='-'||this.currentSample.insProduct[i].ask=='/'||this.currentSample.insProduct[i].ask=='鈥�')){
+            this.tableList[0].arr.forEach(item=>{
+              item.forEach(m=>{
+                if(m.i==pId&&m.v.ps&&m.v.ps.value=='缁撹'){
+                  this.$set(m.v,'v',3)
+                }
+              })
+            })
+            if(this.param[pId].insResult&&this.param[pId].insResult.v){
+              this.param[pId].insResult.v.v = 3
+            }
+            this.saveInsContext()
+            return
+          }
+        }
+        // this.currentTable.
+        // if(!this.param[pId].equipValue||this.param[pId].equipValue.length==0||!this.param[pId].equipValue[0].v.v){}
         if (n) {
           // if (this.PROJECT === '瑁呭鐢电紗') {
           //   let num2 = new this.$Big(n.v.v)
@@ -2676,15 +2726,20 @@
             currentSample:this.currentSample,
             PROJECT:this.PROJECT,
             param:this.param,
-            currentTable:this.currentTable
+            currentTable:this.currentTable,
+            getDataTypeId:this.getDataTypeId
           }));
         } catch (error) {
           console.log(444,error);
         }
+        let getDataType = false
 
         // 鐩戝惉 Worker 杩斿洖鐨勭粨鏋�
         this.worker.onmessage = (event) => {
           this.result = JSON.parse(event.data);
+          if(this.result.value.getDataTypeId){
+            getDataType = true
+          }
           switch (this.result.method){
             case 'saveInsContext':
               this.$nextTick(()=>{
@@ -2700,7 +2755,13 @@
                     }
                   }
                 }
-                this.saveInsContext()
+                if(this.isGet&&!this.dataAcquisitionEidtAble&&!getDataType){
+                  return
+                }
+                setTimeout(()=>{
+                  this.saveInsContext()
+                },2000)
+                // this.saveInsContext()
               })
               break;
             case 'tableList':
@@ -3094,8 +3155,8 @@
         return
       },
       saveInsContext() {
-        console.log(1111,this.param)
         try {
+          console.log(1111,this.param)
           if(this.param){
             this.$axios.post(this.$api.insOrderPlan.saveInsContext, {
               param: JSON.stringify(this.param)
@@ -3221,16 +3282,18 @@
         this.currentSample = this.HaveJson(this.sampleProduct[index - 1])
         let list = await this.getCurrentProduct(this.currentSample.id,0)
         this.currentSample.insProduct = this.HaveJson(list)
-        this.handleCasing()
         this.param = {}
+        this.changeType = 0;
         this.currentSample.insProduct.forEach(a => {
-          this.param[a.id] = {
-            insValue: [],
-            comValue: [],
-            resValue: null,
-            equipValue: [],
-            equipName: [],
-            insResult: null
+          if(this.handleCasing(a.inspectionItem)){
+            this.param[a.id] = {
+              insValue: [],
+              comValue: [],
+              resValue: null,
+              equipValue: [],
+              equipName: [],
+              insResult: null
+            }
           }
         })
         this.getTableLists()

--
Gitblit v1.9.3