From 843104043cb7c573b31b96bf2fd8a24d3e8c12a1 Mon Sep 17 00:00:00 2001
From: value <z1292839451@163.com>
Date: 星期四, 06 六月 2024 00:29:47 +0800
Subject: [PATCH] 部分功能小调整

---
 src/components/do/b1-inspect-order-plan/Inspection.vue |  103 ++++++++++++++++++++++++++++++++++++++++++++-------
 1 files changed, 89 insertions(+), 14 deletions(-)

diff --git a/src/components/do/b1-inspect-order-plan/Inspection.vue b/src/components/do/b1-inspect-order-plan/Inspection.vue
index f0d7503..13d3872 100644
--- a/src/components/do/b1-inspect-order-plan/Inspection.vue
+++ b/src/components/do/b1-inspect-order-plan/Inspection.vue
@@ -120,6 +120,19 @@
   .collection:active {
     opacity: .7;
   }
+  .table_caret{
+    font-size: 16px;
+    margin: 0 5px;
+    color: rgba(0, 0, 0, 0.1);
+  }
+  .table_caret:hover{
+    color: #409eff;
+    cursor: pointer;
+  }
+
+  .table_caret:active{
+    opacity: .8;
+  }
 </style>
 <style>
   .inspection .el-form-item__label {
@@ -169,6 +182,11 @@
   .inspection .el-textarea__inner {
     min-height: 100% !important;
   }
+
+  .inspection .tables .el-input{
+    display: flex;
+    align-items: center;
+  }
 </style>
 <template>
   <div v-loading="loading" class="inspection">
@@ -213,7 +231,7 @@
           <el-input clearable v-model="insOrder.appointed" disabled size="small" placeholder="璇疯緭鍏�"></el-input>
         </el-form-item>
         <el-form-item label="褰撳墠鏍峰搧浣嶆暟:">
-          <el-tag v-if="currentSample.index">{{ `NO.${currentSample.index}` }}</el-tag>
+          <el-tag v-if="currentKey">{{ `NO.${currentKey}` }}</el-tag>
         </el-form-item>
       </el-form>
     </div>
@@ -224,7 +242,7 @@
             size="small">{{ item.templateName }}</el-radio-button>
         </el-radio-group>
       </div>
-      <div class="center-box" id="nav">
+      <div class="center-box" id="nav" v-loading="tableLoading">
         <table border="1" class="tables" cellpadding="10" v-for="(item,index) in tableList" :key="index">
           <tbody>
             <tr v-for="(m,i) in item.arr" :key="i">
@@ -284,6 +302,16 @@
                       <el-option v-for="(e, i) in enumList" :key="i" :label="e.label" :value="e.value"></el-option>
                     </el-select> -->
                     <span :style="`font-family:${n.v.ff} !important;`">{{n.v.v}}</span>
+                  </template>
+                  <template v-else-if="n.v.ps!=undefined && n.v.ps.value==='鏍峰搧缂栧彿'">
+                    <div style="display: flex;flex-wrap: nowrap;align-items: center;">
+                      <i class="el-icon-caret-left table_caret" @click="caretSample(-1)"></i>
+                      <div :style="`font-family:${n.v.ff} !important;`">{{currentSample.sampleCode}}</div>
+                      <i class="el-icon-caret-right table_caret" @click="caretSample(1)"></i>
+                    </div>
+                  </template>
+                  <template v-else-if="n.v.ps!=undefined && n.v.ps.value==='鏍峰搧鍨嬪彿'">
+                    <div :style="`font-family:${n.v.ff} !important;`" v-if="currentSample.model!==undefined&&currentSample.model!==null">{{currentSample.model}}</div>
                   </template>
                   <span v-else :style="`font-family:${n.v.ff} !important;`">{{n.v.v}}</span>
                 </div>
@@ -470,6 +498,7 @@
         currentFiberOpticTape:null,//褰撳墠鍏夌氦甯�
         currentFiberOptic:null,//褰撳墠鍏夌氦
         currentBushing:null,//褰撳墠濂楃
+        tableLoading:false,
       }
     },
     created() {
@@ -490,7 +519,7 @@
         this.$axios.post(this.$api.insOrderPlan.doInsOrder, {
           id: val,
           laboratory: this.sonLaboratory
-        }).then(res => {
+        }).then(async res => {
           this.insOrder = res.data.insOrder;
           this.urgentList.forEach(m => {
             if (m.value == this.insOrder.type) {
@@ -499,6 +528,8 @@
           })
           this.sampleProduct = res.data.sampleProduct
           this.currentSample = this.HaveJson(this.sampleProduct[0])
+          let list = await this.getCurrentProduct(this.currentSample.id,0)
+          this.currentSample.insProduct = this.HaveJson(list)
           this.currentSample.insProduct.forEach(a => {
             this.param[a.id] = {
               insValue: [],
@@ -542,6 +573,12 @@
       }
     },
     methods: {
+      async getCurrentProduct(id,type){
+        this.tableLoading = true;
+        let res = await this.$axios.post(this.$api.insOrderPlan.getInsProduct+'?id='+id+'&type='+type+'&laboratory='+this.sonLaboratory)
+        this.tableLoading = false;
+        return res.data
+      },
       handleChangeBushing(row, column, event){
         this.currentBushing = row;
         this.fiberOpticTape = []
@@ -557,7 +594,7 @@
         }
         this.bushingVisible = false;
       },
-      handleChangeOptic(row, column, event){
+      async handleChangeOptic(row, column, event){
         this.currentFiberOptic = row;
         this.currentFiberOptic.productList.forEach(a => {
           this.param[a.id] = {
@@ -569,11 +606,12 @@
             insResult: null
           }
         })
-        this.getTableLists0(row)
         this.fiberOpticVisible = false;
+        let list = await this.getCurrentProduct(row.id,2)
+        this.getTableLists0(list)
         this.currentKey = row.index
       },
-      handleChangeTape(row, column, event){
+      async handleChangeTape(row, column, event){
         this.currentFiberOpticTape = row;
         this.param = {}
         this.fiberOptic = []
@@ -588,15 +626,16 @@
             insResult: null
           }
         })
-        this.getTableLists0(row)
+        this.fiberOpticTapeVisible = false;
+        let list = await this.getCurrentProduct(row.id,1)
+        this.getTableLists0(list)
         if(row.fiber&&row.fiber.length>0){
           // 閰嶇疆鍏夌氦
           this.fiberOptic = row.fiber;
         }
-        this.fiberOpticTapeVisible = false;
         this.currentKey = row.index
       },
-      handleChangeSample(row, column, event) {
+      async handleChangeSample(row, column, event) {
         this.param = {}
         // 娓呯┖鍏夌氦閰嶇疆鐩稿叧鏁版嵁
         this.fiberOpticTape = []
@@ -605,7 +644,10 @@
         this.currentFiberOptic = null;
         this.bushing = []
         this.currentBushing = null;
-        this.currentSample.insProduct = this.HaveJson(row.insProduct)
+        this.sampleVisible = false;
+        this.currentSample = this.HaveJson(row)
+        let list = await this.getCurrentProduct(row.id,0)
+        this.currentSample.insProduct = this.HaveJson(list)
         this.currentSample.insProduct.forEach(a => {
           this.param[a.id] = {
             insValue: [],
@@ -622,7 +664,6 @@
         }
         // this.handleTableData()
         this.getTableLists();
-        this.sampleVisible = false;
         this.currentKey = row.index
       },
       handleChangeTask(row) {
@@ -714,9 +755,9 @@
         }
       },
       // 鍏夌氦閰嶇疆鐩稿叧妯℃澘table鍒楄〃
-      getTableLists0(obj){
+      getTableLists0(list){
         const mySet1 = new Set();
-        this.tableLists = obj.productList.filter(m => {
+        this.tableLists = list.filter(m => {
           let num0 = mySet1.size;
           if (m.templateId != null&&m.template != null) {
             mySet1.add(JSON.stringify({
@@ -733,7 +774,7 @@
           this.tableList = null;
           this.tableList = [this.tableLists[0]]
           this.currentTable = this.tableLists[0].templateId;
-          this.currentSample.insProduct = this.HaveJson(obj.productList)
+          this.currentSample.insProduct = this.HaveJson(list)
           this.handleTableData()
         }
       },
@@ -1025,6 +1066,15 @@
                     return res < m.split('<')[1]
                   }else if (m.includes('>')) {
                     return res > m.split('>')[1]
+                  }else if (m.includes('~')) {
+                    let k = m.split('~')
+                    return res >= k[0] && res <= k[1]
+                  }else if(m.includes('-')){
+                    let k = m.split('-')
+                    return res >= k[0] && res <= k[1]
+                  }else if(m.includes('卤')){
+                    let k = m.split('卤')
+                    return res >= (k[0] - k[1]) && res <= (k[0] + k[1])
                   }
                 })
                 if(this.getInspectionValueType(item.i)==1){
@@ -1440,6 +1490,31 @@
         nav.addEventListener("mouseleave", function(event) {
           flag = false;
         });
+      },
+      async caretSample(num){
+        let index = this.currentKey + num
+        if(index < 1){
+          this.$message.error('褰撳墠鏄涓�涓牱鍝�')
+          return
+        } else if(index > this.sampleProduct.length){
+          this.$message.error('褰撳墠鏄渶鍚庝竴涓牱鍝�')
+          return
+        }
+        this.currentKey = index
+        this.currentSample = this.HaveJson(this.sampleProduct[index - 1])
+        let list = await this.getCurrentProduct(this.currentSample.id,0)
+        this.currentSample.insProduct = this.HaveJson(list)
+        this.currentSample.insProduct.forEach(a => {
+          this.param[a.id] = {
+            insValue: [],
+            comValue: [],
+            resValue: null,
+            equipValue: [],
+            equipName: [],
+            insResult: null
+          }
+        })
+        this.getTableLists()
       }
     }
   }

--
Gitblit v1.9.3