From 4e93a3fab91b42560336647ea1051a8f9ad554fd Mon Sep 17 00:00:00 2001
From: spring <2396852758@qq.com>
Date: 星期三, 23 四月 2025 13:36:32 +0800
Subject: [PATCH] 优化检验任务模板样式

---
 src/views/business/inspectionTask/inspection.vue |  131 ++++++++++++++++++++++++++++++++++++-------
 1 files changed, 110 insertions(+), 21 deletions(-)

diff --git a/src/views/business/inspectionTask/inspection.vue b/src/views/business/inspectionTask/inspection.vue
index e83d703..deb64f8 100644
--- a/src/views/business/inspectionTask/inspection.vue
+++ b/src/views/business/inspectionTask/inspection.vue
@@ -91,9 +91,9 @@
           </el-radio-group>
         </div>
         <div style="display: flex; align-items: center">
-          <el-button v-if="state == 1" size="small" type="primary" @click="openAddUnpass">鏂板涓嶅悎鏍煎娴�</el-button>
+          <!-- <el-button v-if="state == 1" size="small" type="primary" @click="openAddUnpass">鏂板涓嶅悎鏍煎娴�</el-button>
           <el-button v-if="state == 1" size="small" type="primary" @click="unpassCheck">涓嶅悎鏍煎娴�</el-button>
-          <el-button v-if="state > 1" size="small" type="primary" @click="viewUnpassCheck">鏌ョ湅涓嶅悎鏍煎娴�</el-button>
+          <el-button v-if="state > 1" size="small" type="primary" @click="viewUnpassCheck">鏌ョ湅涓嶅悎鏍煎娴�</el-button> -->
           <span v-if="cableTagList.length > 0">&nbsp;&nbsp;鐢电紗閰嶇疆锛�</span>
           <el-select v-if="cableTagList.length > 0" v-model="currentTab" clearable placeholder="璇烽�夋嫨" size="small"
             @change="(m) => handleChangeCableTag(currentSample.id, 0, 'cableTag', m)
@@ -138,6 +138,11 @@
                 type="success">宸叉</el-tag>
             </el-option>
           </el-select>
+          <!-- 缃戝垎浠暟閲囧浗浜�/杩涘彛 -->
+          <NetworkAnalyzerDataAcquisition :itemList="currentSample.insProduct" :param="param"
+            :equipOptions="equipOptions"
+            v-if="Array.isArray(currentSample.insProduct) && currentSample.insProduct.length > 0 && param"
+            ref="NetworkAnalyzerDataAcquisition" />
           <el-button :loading="dataAcquisitionLoading" v-if="state == 1" size="small" type="primary"
             @click="getDataAcquisitionDevice">鏁版嵁閲囬泦</el-button>
           <el-button :type="dataAcquisitionEidtAble ? '' : 'primary'" v-if="state == 1" size="small"
@@ -151,18 +156,18 @@
           <table v-for="(item, index) in tableList" :key="index + currentTable + currentSample.id" border="1"
             cellpadding="10" class="tables" id="myTable">
             <tbody>
-              <tr style="white-space: nowrap">
-                濮旀墭缂栧彿锛歿{
-                  insOrder.entrustCode
-                }}
+              <tr>
+                <th :colspan="50" style="text-align: left !important;">
+                  濮旀墭缂栧彿锛歿{
+                    insOrder.entrustCode
+                  }}
+                </th>
               </tr>
               <tr v-for="(m, i) in item.arr" :key="i">
                 <td v-for="(n, j) in m" v-if="n.v.mc == undefined || Object.keys(n.v.mc).length === 4"
                   :id="item.templateId + '-' + n.i + '-' + n.r + '-' + n.c" :key="j"
                   :colspan="n.v.mc && n.v.mc.cs ? n.v.mc.cs : 1" :rowspan="n.v.mc && n.v.mc.rs ? n.v.mc.rs : 1" :style="`background:${n.v.bg ? n.v.bg : ''};color:${n.v.fc
-                    };font-size:${n.v.fs}px;width:${handleWidth(
-                      n
-                    )}px !important;height:${item.style.rowlen[n.r]}px;font-wight:${n.v.bl ? 'bold' : ''
+                    };font-size:${n.v.fs}px;height:${item.style.rowlen[n.r]}px;font-wight:${n.v.bl ? 'bold' : ''
                     };`">
                   <div :class="`content-h-${n.v.ht} content-v-${n.v.vt}`" :style="`width:${handleWidth(n)}px !important;min-height:${item.style.rowlen[n.r]
                     }px;`" class="content">
@@ -323,14 +328,14 @@
                     ">
                       <span v-if="state > 1 || (n.u != userId && n.u != undefined && n.u != '')">{{ n.v.v }}</span>
                       <el-date-picker v-else v-model="n.v.v" type="datetime" placeholder="" format="yyyy-MM-dd HH:mm:ss"
-                        value-format="yyyy-MM-dd HH:mm:ss">
+                        value-format="yyyy-MM-dd HH:mm:ss" @change="(val) => changeTestTime(val, n, 'testStartTime')">
                       </el-date-picker>
                     </template>
                     <template v-else-if="n.v.ps != undefined && n.v.ps.value === '缁堟鏃堕棿'
                     ">
                       <span v-if="state > 1 || (n.u != userId && n.u != undefined && n.u != '')">{{ n.v.v }}</span>
                       <el-date-picker v-else v-model="n.v.v" type="datetime" placeholder="" format="yyyy-MM-dd HH:mm:ss"
-                        value-format="yyyy-MM-dd HH:mm:ss">
+                        value-format="yyyy-MM-dd HH:mm:ss" @change="(val) => changeTestTime(val, n, 'testEndTime')">
                       </el-date-picker>
                     </template>
                     <span v-else :style="`font-family:${n.v.ff} !important;`" v-html="getValue(n.v)"></span>
@@ -529,6 +534,7 @@
 import UnPassDialog from "../unpass/components/unPassDialog.vue";
 import AddUnPass from "../unpass/components/addUnPass.vue";
 import InspectionWord from "./components/InspectionWord.vue";
+import NetworkAnalyzerDataAcquisition from "./components/NetworkAnalyzerDataAcquisition.vue";
 import PurchaseVerification from "../unpass/components/PurchaseVerification.vue";
 import {
   doInsOrder,
@@ -563,6 +569,7 @@
     limsTable,
     UnPassDialog,
     InspectionWord,
+    NetworkAnalyzerDataAcquisition,
   },
   data() {
     return {
@@ -837,6 +844,8 @@
                 equipValue: [],
                 equipName: [],
                 insResult: null,
+                testEndTime: [],
+                testStartTime: [],
               };
             });
             // 鍘婚噸妯℃澘锛岃繑鍥炴湁鍑犱釜妯℃澘
@@ -964,7 +973,7 @@
         // 璧嬪�煎綋鍓嶆牱鍝佸垪琛�
         this.sampleProduct = res.data.sampleProduct;
         this.currentSample = this.HaveJson(this.sampleProduct[0]);
-        let insProduct = this.HaveJson(this.currentSample.insProduct);
+        // let insProduct = this.HaveJson(this.currentSample.insProduct);
         // 娓╁害銆佹箍搴﹁祴鍊�
         this.otherForm = {
           temperature: this.insOrder.temperature
@@ -991,6 +1000,8 @@
             equipValue: [],
             equipName: [],
             insResult: null,
+            testEndTime: [],
+            testStartTime: [],
           };
         });
         if (this.currentSample.index == undefined)
@@ -1461,6 +1472,7 @@
     },
     // 澶氱嚎绋�
     startWorker() {
+      console.log(`Worker 绾跨▼寮�濮嬭繍琛�...`, this.worker, this.worker0)
       if (this.worker) {
         this.stopWorker(); // 纭繚涔嬪墠鐨� Worker 宸插仠姝�
       }
@@ -1533,7 +1545,7 @@
         repetitionTag: this.repetitionTag
       });
       this.tableLoading = false;
-      if (res.data.length > 0) {
+      if (res.data) {
         return res.data;
       }
     },
@@ -1558,6 +1570,8 @@
           equipValue: [],
           equipName: [],
           insResult: null,
+          testEndTime: [],
+          testStartTime: [],
         };
       });
       // 澶勭悊椤甸潰鍒楄〃鏁版嵁
@@ -1603,6 +1617,8 @@
               equipValue: [],
               equipName: [],
               insResult: null,
+              testEndTime: [],
+              testStartTime: [],
             };
           });
           this.getTableLists0(list);
@@ -1961,7 +1977,7 @@
                 (a.template[b].v.ps.value === "璇曢獙鏂规硶" ||
                   a.template[b].v.ps.value === "妫�娴嬫柟娉�")
               ) {
-                a.template[b].v.v = id.product.method;
+                a.template[b].v.v = id.product.methodS;
               }
               if (
                 a.template[b].v.ps != undefined &&
@@ -2008,6 +2024,7 @@
           (n) => n.v.ps != undefined && n.v.ps.value === "鏈�缁堝��"
         ); //鏈�缁堝�煎垪琛�
         a.template.forEach((b) => {
+          // console.log(444444, b)
           if (
             b.v.ps != undefined &&
             b.v.ps.value === "搴忓彿" &&
@@ -2057,24 +2074,22 @@
             b.i && this.param[b.i] && this.param[b.i].equipName.push(b);
           }
           if (b.v.ps != undefined && b.v.ps.value === "璧峰鏃堕棿") {
-            this.$set(b.v, "v", "");
-            b.u = "";
+            this.$set(b.v, "v", '');
             let obj = this.currentSample.insProduct.find(m => m.id == b.i)
             if (obj) {
               this.$set(b, "u", obj.checkUserId);
             }
-            // b.v.v = ''
-            // b.i && this.param[b.i] && this.param[b.i].equipName.push(b);
+            // this.param[b.i].testStartTime = []
+            b.i && this.param[b.i] && this.param[b.i].testStartTime.push(b);
           }
           if (b.v.ps != undefined && b.v.ps.value === "缁堟鏃堕棿") {
             this.$set(b.v, "v", "");
-            b.u = "";
             let obj = this.currentSample.insProduct.find(m => m.id == b.i)
             if (obj) {
               this.$set(b, "u", obj.checkUserId);
             }
-            // b.v.v = ''
-            // b.i && this.param[b.i] && this.param[b.i].equipName.push(b);
+            // this.param[b.i].testEndTime = []
+            b.i && this.param[b.i] && this.param[b.i].testEndTime.push(b);
           }
           if (b.v.ps != undefined && b.v.ps.value === "鏈�缁堝��") {
             // b.v.v = ''
@@ -2216,6 +2231,24 @@
           console.log("璁惧鍚嶇О璧嬪��----", e);
         }
         try {
+          // 璧峰鏃堕棿璧嬪��
+          let testStartTime = a.insProductResult.testStartTime ? JSON.parse(a.insProductResult.testStartTime) : []
+          for (let i = 0; i < testStartTime.length; i++) {
+            // 鏅�氳澶囧悕绉拌祴鍊�
+            this.param[a.id].testStartTime[i].v.v = testStartTime[i].v;
+          }
+        } catch (e) {
+
+        }
+        try {
+          // 缁堟鏃堕棿璧嬪��
+          let testEndTime = a.insProductResult.testEndTime ? JSON.parse(a.insProductResult.testEndTime) : []
+          for (let i = 0; i < testEndTime.length; i++) {
+            // 鏅�氳澶囧悕绉拌祴鍊�
+            this.param[a.id].testEndTime[i].v.v = testEndTime[i].v;
+          }
+        } catch (e) { }
+        try {
           // 鏈�缁堝�艰祴鍊�
           this.param[a.id].resValue.v.v = this.toFixed(
             a.lastValue,
@@ -2227,6 +2260,10 @@
       });
       // 瀵筫xcel鍑芥暟杩涜澶勭悊
       this.handleExcelMethod();
+      this.$nextTick(() => {
+        // 鏄惁灞曠ず缃戝垎浠寜閽�
+        this.$refs.NetworkAnalyzerDataAcquisition.init()
+      })
     },
     // 妫�楠屽�艰緭鍏ュ悗瑙﹀彂鐨勫嚱鏁�
     changeInput(m, code, n, getDataType, changeSelect) {
@@ -2240,6 +2277,9 @@
         // 瀹氫箟涓�涓嚱鏁版潵楠岃瘉鍒嗘暟鏄惁鏈夋晥
         if (typeof n.v.v == "string") {
           function isValidFraction(fraction) {
+            if (typeof fraction == 'number') {
+              return true
+            }
             const [numerator, denominator] = fraction.split("/"); // 鍒嗗瓙鍜屽垎姣�
             return !(!denominator || !numerator);
           }
@@ -2411,6 +2451,46 @@
                 console.log(888, error);
               }
             }
+            break;
+          // 璧嬪�艰捣濮嬫椂闂�
+          case "testEndTime":
+            if (value && value.length > 0) {
+              this.tableList[0].insProductResult[m] = [];
+              value.forEach((a, i) => {
+                let obj = {
+                  v: a.v.v,
+                };
+                this.tableList[0].insProductResult[m].push(obj);
+              });
+              try {
+                this.tableList[0].insProductResult[m] = JSON.stringify(
+                  this.tableList[0].insProductResult[m]
+                );
+              } catch (error) {
+                console.log(888, error);
+              }
+            }
+            // this.tableList[0].insProductResult[m] = value ? value.v.v : "";
+            break;
+          // 璧嬪�肩粓姝㈡椂闂�
+          case "testStartTime":
+            if (value && value.length > 0) {
+              this.tableList[0].insProductResult[m] = [];
+              value.forEach((a, i) => {
+                let obj = {
+                  v: a.v.v,
+                };
+                this.tableList[0].insProductResult[m].push(obj);
+              });
+              try {
+                this.tableList[0].insProductResult[m] = JSON.stringify(
+                  this.tableList[0].insProductResult[m]
+                );
+              } catch (error) {
+                console.log(888, error);
+              }
+            }
+            // this.tableList[0].insProductResult[m] = value ? value.v.v : "";
             break;
           // 璧嬪�兼渶缁堝��
           case "resValue":
@@ -2790,9 +2870,16 @@
         }
         // 淇濆瓨鏁版嵁
         this.saveInsContext(n.i);
+        // 鏄惁灞曠ず缃戝垎浠寜閽�
+        this.$refs.NetworkAnalyzerDataAcquisition.init()
       } catch (e) {
         console.log("changeEquip----", e);
       }
+    },
+    // 璧峰鏃堕棿/缁堟鏃堕棿淇濆瓨
+    changeTestTime(val, n, type) {
+      this.$set(this.param[n.i][type][0].v, 'v', val)
+      this.saveInsContext(n.i);
     },
     getAuthorizedPerson() {
       selectUserCondition({ type: 1 }).then((res) => {
@@ -2860,6 +2947,8 @@
           equipValue: [],
           equipName: [],
           insResult: null,
+          testEndTime: [],
+          testStartTime: [],
         };
       });
       // 椤甸潰鏁版嵁澶勭悊

--
Gitblit v1.9.3