From cd948d4615d3ae6c571e4ed04275e851632a2dba Mon Sep 17 00:00:00 2001
From: lxp <1928192722@qq.com>
Date: 星期五, 09 八月 2024 09:24:20 +0800
Subject: [PATCH] Merge branch 'master' of http://114.132.189.42:9002/r/center-lims-before

---
 src/components/do/b1-inspect-order-plan/Inspection.vue |  255 +++++++++++++++++++++++++++++++++++---------------
 1 files changed, 177 insertions(+), 78 deletions(-)

diff --git a/src/components/do/b1-inspect-order-plan/Inspection.vue b/src/components/do/b1-inspect-order-plan/Inspection.vue
index d21c3a0..c454335 100644
--- a/src/components/do/b1-inspect-order-plan/Inspection.vue
+++ b/src/components/do/b1-inspect-order-plan/Inspection.vue
@@ -22,7 +22,7 @@
 
   .search .form-inline {
     padding-top: 20px;
-    padding-left: 50px;
+    padding-left: 0px;
   }
 
   .center {
@@ -254,18 +254,20 @@
       </el-col>
     </el-row>
     <div class="search">
-      <el-form :inline="true" :model="searchForm" class="form-inline" label-width="100px">
+      <el-form :inline="true" :model="searchForm" class="form-inline" label-width="100px" label-position="right">
         <el-form-item label="濮旀墭缂栧彿:">
           <el-input clearable v-model="insOrder.entrustCode" disabled size="small" placeholder="璇疯緭鍏�"></el-input>
         </el-form-item>
         <el-form-item label="鏍峰搧缂栧彿:">
-          <el-input clearable v-model="currentSample.sampleCode" disabled size="small" placeholder="璇疯緭鍏�"></el-input>
+          <el-tooltip :disabled="!currentSample.sampleCode" :content="currentSample.sampleCode">
+            <el-input clearable v-model="currentSample.sampleCode" disabled size="small" placeholder="璇疯緭鍏�" ></el-input>
+          </el-tooltip>
         </el-form-item>
         <el-form-item label="鏍峰搧鍚嶇О:">
           <el-input clearable v-model="currentSample.sample" disabled size="small" placeholder="璇疯緭鍏�"></el-input>
         </el-form-item>
         <el-form-item label="鏍峰搧鏁伴噺:">
-          <el-input clearable v-model="sampleProduct.length" disabled size="small" placeholder="璇疯緭鍏�"></el-input>
+          <el-input clearable v-model="sampleProduct.length" disabled size="small" placeholder="璇疯緭鍏�" ></el-input>
         </el-form-item>
         <el-form-item label="涓嬪彂鏃堕棿:">
           <el-input clearable v-model="insOrder.sendTime" disabled size="small" placeholder="璇疯緭鍏�"></el-input>
@@ -279,6 +281,10 @@
         <el-form-item label="褰撳墠鏍峰搧浣嶆暟:">
           <el-tag v-if="currentKey">{{ `NO.${currentKey}` }}</el-tag>
         </el-form-item>
+        <el-form-item label="澶囨敞:">
+          <span style="color:red">{{ insOrder.remark?insOrder.remark:'-' }}</span>
+          <!-- <el-tag v-if="currentKey">{{ insOrder.remark }}</el-tag> -->
+        </el-form-item>
       </el-form>
     </div>
     <div class="center">
@@ -291,8 +297,19 @@
           </el-radio-group>
         </div>
         <div style="display: flex;align-items: center;">
+          <span v-if="casing.length>0&&tableLists.find(m=>m.templateId==currentTable)&&tableLists.find(m=>m.templateId==currentTable).templateName=='鎴愬搧缂嗘楠屽師濮嬭褰�'">&nbsp;&nbsp;濂楃锛�</span>
+          <el-select v-model="currentTab" placeholder="璇烽�夋嫨" @change="m=>handleChange(m,3)" v-if="casing.length>0&&tableLists.find(m=>m.templateId==currentTable)&&tableLists.find(m=>m.templateId==currentTable).templateName=='鎴愬搧缂嗘楠屽師濮嬭褰�'" size="small" :loading="getReportModelLoading" @focus="getReportModel(currentSample.id)">
+            <el-option
+              v-for="item in casing"
+              :key="item.id"
+              :label="item.color"
+              :value="item.id">
+              <span style="float: left">{{ item.color}}</span>
+              <el-tag :type="item.state==1?'success':'danger'" style="float: right;margin-top: 5px;" size="small">{{ item.state==1?'宸叉':'鏈' }}</el-tag>
+            </el-option>
+          </el-select>
           <span v-if="fibers.length>0&&tableLists.find(m=>m.templateId==currentTable)&&tableLists.find(m=>m.templateId==currentTable).templateName!='娓╁害寰幆妫�楠屽師濮嬭褰�'">&nbsp;&nbsp;鍏夌氦甯︼細</span>
-          <el-select v-model="currentTab" placeholder="璇烽�夋嫨" @change="m=>handleChange(m,1)" v-if="fibers.length>0&&tableLists.find(m=>m.templateId==currentTable)&&tableLists.find(m=>m.templateId==currentTable).templateName!='娓╁害寰幆妫�楠屽師濮嬭褰�'" size="small">
+          <el-select v-model="currentTab" placeholder="璇烽�夋嫨" @change="m=>handleChange(m,1)" v-if="fibers.length>0&&tableLists.find(m=>m.templateId==currentTable)&&tableLists.find(m=>m.templateId==currentTable).templateName!='娓╁害寰幆妫�楠屽師濮嬭褰�'" size="small" :loading="getReportModelLoading" @focus="getReportModel(currentSample.id)">
             <el-option
               v-for="item in fibers"
               :key="item.value"
@@ -303,7 +320,7 @@
             </el-option>
           </el-select>
           <span v-if="fiber.length>0&&tableLists.find(m=>m.templateId==currentTable)&&tableLists.find(m=>m.templateId==currentTable).templateName!='娓╁害寰幆妫�楠屽師濮嬭褰�'">&nbsp;&nbsp;鍏夌氦锛�</span>
-          <el-select v-model="currentTab" placeholder="璇烽�夋嫨" @change="m=>handleChange(m,2)" v-if="fiber.length>0&&tableLists.find(m=>m.templateId==currentTable)&&tableLists.find(m=>m.templateId==currentTable).templateName!='娓╁害寰幆妫�楠屽師濮嬭褰�'" size="small">
+          <el-select v-model="currentTab" placeholder="璇烽�夋嫨" @change="m=>handleChange(m,2)" v-if="fiber.length>0&&tableLists.find(m=>m.templateId==currentTable)&&tableLists.find(m=>m.templateId==currentTable).templateName!='娓╁害寰幆妫�楠屽師濮嬭褰�'" size="small" :loading="getReportModelLoading" @focus="getReportModel(currentSample.id)">
             <el-option
               v-for="item in fiber"
               :label="item.bushColor+'-'+item.color"
@@ -367,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>
@@ -400,7 +418,7 @@
                       <i class="el-icon-caret-left table_caret" style="width: 16px;" @click="caretSample(-1)" v-if="!currentFiberOpticTape&&!currentFiberOptic"></i>
                       <div :style="`font-family:${n.v.ff} !important;overflow: hidden;white-space: nowrap;width: calc(100% - 32px);`">{{currentSample.sampleCode}}</div>
                       <i class="el-icon-caret-right table_caret" style="width: 16px;"
-                      v-if="!currentFiberOpticTape&&!currentFiberOptic"@click="caretSample(1)"></i>
+                      v-if="!currentFiberOpticTape&&!currentFiberOptic" @click="caretSample(1)"></i>
                     </div>
                   </template>
                   <template v-else-if="n.v.ps!=undefined && n.v.ps.value==='鏍峰搧鍨嬪彿'">
@@ -595,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>
@@ -674,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>
@@ -747,6 +767,7 @@
               size="medium" style="margin-right: 5px;">{{item.label}}</el-tag>
           </template>
         </el-table-column>
+        <el-table-column prop="checkName" label="妫�楠屼汉" min-width="80px" show-overflow-tooltip></el-table-column>
         <el-table-column prop="isLeave" label="鏄惁鐣欐牱" width="95px" show-overflow-tooltip align="center">
           <template slot-scope="scope">
             <span>{{ scope.row.isLeave==0?'鍚�':'鏄�' }}</span>
@@ -925,6 +946,8 @@
           requiredUp: []
         },
         upIndex: 0,
+        changeType:null,
+        getReportModelLoading:false,
         insOrder: {},
         sampleProduct: [],
         typeList: [],
@@ -967,6 +990,7 @@
         temptList:null,
         fiber:[],
         fibers:[],
+        casing:[],
         currentTab:null,
         wareForm:{
           inspectionItem:1,
@@ -1031,7 +1055,8 @@
           }
         ],
         getDataIndex:[],
-        getDataIndexLoading:false
+        getDataIndexLoading:false,
+        changeType:null,
       }
     },
     computed: {
@@ -1089,15 +1114,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()
@@ -1123,19 +1151,30 @@
       },
       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)
+            }
+            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)
@@ -1162,9 +1201,6 @@
                 this.tableList = this.tableLists.filter(m => m.templateId == val1)
                 this.handleTableData()
               }
-              // this.$delete(this.tableList,0)
-              // this.$set(this.tableList, 0, m)
-              // this.handleTableData()
             }
           })
         }
@@ -1272,6 +1308,32 @@
                 value:data[i][j].result,
                 frequency:data[i].frequency
               }
+              let list = this.tableList[0].arr
+              list.forEach((item,index)=>{
+                let num0 = 0;
+                let str = ''
+                let str0 = i+','+j
+                item.forEach(m=>{
+                  if(m.v.ps&&(m.v.ps.value=='妫�楠屽瓙椤�'||m.v.ps.value=='妫�楠岄」')){
+                    if(m.v.ps&&m.v.ps.value=='妫�楠岄」'){
+                      if(num0==0){
+                        str = m.v.v+','
+                        num0++
+                      }
+                    }
+                    if(m.v.ps&&m.v.ps.value=='妫�楠屽瓙椤�'){
+                      if(num0==1){
+                        str = str+m.v.v
+                      }
+                    }
+                  }
+                  if(data[i][j].equipName&&data[i][j].equipValue&&m.v&&m.v.ps&&m.v.ps.value=='璁惧缂栫爜'&&str0==str){
+                    if(!m.v.v){
+                      this.changeEquip(data[i][j].equipValue,m,data[i][j].equipName)
+                    }
+                  }
+                })
+              })
             }else if(j!='frequency'&&data[i][j]&&Array.isArray(data[i][j].result)){
               let str0 = i+','+j
               let list = this.tableList[0].arr
@@ -1999,14 +2061,18 @@
         this.currentSample = this.HaveJson(row)
         let list = await this.getCurrentProduct(row.id,0)
         this.currentSample.insProduct = this.HaveJson(list)
+        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)
@@ -2025,19 +2091,35 @@
           currentTable:this.currentTable
         }));
       },
+      handleCasing(inspectionItem){
+        if(this.changeType!=3){
+          if(inspectionItem.includes('鏉惧绠�')){
+            return false
+          }else{
+            return true
+          }
+        }else{
+          return true
+        }
+      },
       getReportModel(id){
         if(this.PROJECT!='妫�娴嬩腑蹇�'){
           return
         }
+        this.getReportModelLoading = true
         this.$axios.post(this.$api.insOrderPlan.getReportModel+'?sampleId='+id, {}).then(res => {
+          this.getReportModelLoading = false
           this.fibers = res.data['鍏夌氦甯�']
           this.fiber = res.data['鍏夌氦']
+          this.casing = res.data['濂楃']
         })
       },
       async handleChange(m,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: [],
@@ -2054,7 +2136,8 @@
               type: 'saveData',
               tableList:this.tableList,
               param:this.param,
-              currentTable:this.currentTable
+              currentTable:this.currentTable,
+              bushing:m
             }));
           }else{
             this.tableLists = []
@@ -2559,33 +2642,53 @@
         this.handleExcelMethod()
       },
       changeInput(m, code, n) {
+        // let str = code.split('-')
+        // let pId = str[3]
+        // if(!this.param[pId].equipValue||this.param[pId].equipValue.length==0||!this.param[pId].equipValue[0].v.v){
+        //   let inspectionItem = ''
+        //   let idS = []
+        //   let child = 0
+        //   for (let i in this.currentSample.insProduct) {
+        //     if(this.currentSample.insProduct[i].id==pId){
+        //       inspectionItem = this.currentSample.insProduct[i].inspectionItem
+        //     }
+        //   }
+        //   for (let i in this.currentSample.insProduct) {
+        //     if(this.currentSample.insProduct[i].inspectionItem==inspectionItem&&this.currentSample.insProduct[i].id!=pId){
+        //       idS.push(this.currentSample.insProduct[i].id)
+        //     }
+        //   }
+        //   for (let i = 0;i<idS.length;i++) {
+        //     if(this.param[idS[i]].equipValue&&this.param[idS[i]].equipValue.length>0&&this.param[idS[i]].equipValue[0].v.v){
+        //       child++
+        //     }
+        //   }
+        //   if(child==0){
+        //     n.v.v = null
+        //     this.$message.error('璇峰厛濉啓璁惧淇℃伅')
+        //     return
+        //   }
+        // }
         let str = code.split('-')
         let pId = str[3]
-        if(!this.param[pId].equipValue||this.param[pId].equipValue.length==0||!this.param[pId].equipValue[0].v.v){
-          let inspectionItem = ''
-          let idS = []
-          let child = 0
-          for (let i in this.currentSample.insProduct) {
-            if(this.currentSample.insProduct[i].id==pId){
-              inspectionItem = this.currentSample.insProduct[i].inspectionItem
+        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.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
             }
-          }
-          for (let i in this.currentSample.insProduct) {
-            if(this.currentSample.insProduct[i].inspectionItem==inspectionItem&&this.currentSample.insProduct[i].id!=pId){
-              idS.push(this.currentSample.insProduct[i].id)
-            }
-          }
-          for (let i = 0;i<idS.length;i++) {
-            if(this.param[idS[i]].equipValue&&this.param[idS[i]].equipValue.length>0&&this.param[idS[i]].equipValue[0].v.v){
-              child++
-            }
-          }
-          if(child==0){
-            n.v.v = null
-            this.$message.error('璇峰厛濉啓璁惧淇℃伅')
+            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)
@@ -2635,18 +2738,6 @@
                     }
                   }
                 }
-                // let obj = this.param[code.split('-')[3]]
-                // this.tableList[0].arr.forEach(item=>{
-                //   item.forEach(m=>{
-                //     if(obj&&obj.insResult&&m.c==obj.insResult.c&&m.r==obj.insResult.r){
-                //       m.v.v = obj.insResult.v.v
-                //     }
-                //     if(obj&&obj.resValue&&m.c==obj.resValue.c&&m.r==obj.resValue.r){
-                //       m.v.v = obj.resValue.v.v
-                //     }
-                //   })
-                // })
-                // console.log(this.tableList,this.param)
                 this.saveInsContext()
               })
               break;
@@ -3067,8 +3158,6 @@
       },
       changeEquip(val, n,v) {
         this.$set(n.v,'v',val)
-        console.log(3333,val,n)
-        this.$set(n.v,'v',val)
         this.tableList[0].arr.forEach((item,index)=>{
           item.forEach((m,i)=>{
             if(this.param[m.i]){
@@ -3095,13 +3184,20 @@
           }
         }
         for (let i in this.equipOptions) {
-          if (this.equipOptions[i].value === val) {
+          if (this.equipOptions[i].value == val) {
             for (let i1 in this.param[n.i].equipName) {
               if (this.param[n.i].equipName[i1].i === n.i && this.param[n.i].equipName[i1].r === n.r) {
                 this.$delete(this.param[n.i].equipValue[i1].v,'v')
                 this.$set(this.param[n.i].equipValue[i1].v,'v',val)
                 this.$delete(this.param[n.i].equipName[i1].v,'v')
                 this.$set(this.param[n.i].equipName[i1].v,'v',this.equipOptions[i].label)
+                this.tableList[0].arr.forEach((item,index)=>{
+                  item.forEach((m)=>{
+                    if(m.i==n.i&&m.v.ps&&m.v.ps.value=='璁惧鍚嶇О'){
+                      this.$set(m.v,'v',this.equipOptions[i].label)
+                    }
+                  })
+                })
               }
             }
           }
@@ -3164,14 +3260,17 @@
         let list = await this.getCurrentProduct(this.currentSample.id,0)
         this.currentSample.insProduct = this.HaveJson(list)
         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