From 0f8aca36a23b098e40d94c5f0207b1cb5e409fa9 Mon Sep 17 00:00:00 2001
From: licp <lichunping@guanfang.com.cn>
Date: 星期三, 19 六月 2024 14:30:29 +0800
Subject: [PATCH] 修改检验任务bug

---
 src/components/do/b1-inspect-order-plan/Inspection.vue |   95 ++++++++++++++++++++++++++++++++++++-----------
 1 files changed, 72 insertions(+), 23 deletions(-)

diff --git a/src/components/do/b1-inspect-order-plan/Inspection.vue b/src/components/do/b1-inspect-order-plan/Inspection.vue
index 0385916..489bd8d 100644
--- a/src/components/do/b1-inspect-order-plan/Inspection.vue
+++ b/src/components/do/b1-inspect-order-plan/Inspection.vue
@@ -155,9 +155,12 @@
   }
 
   .inspection .el-input-group__append {
-    padding: 0 10px;
+    padding: 0 14px;
     color: #3A7BFA;
     background-color: #fff;
+    height: 100%;
+    display: flex;
+    align-items: center;
   }
 
   .inspection .center-box .el-input__inner {
@@ -359,6 +362,7 @@
       v-show="state==1&&fileAdd"
       :on-success="handleSuccessUp" :show-file-list="false"
         accept='.jpg,.jpeg,.png,.gif,.doc,.docx,.xls,.xlsx,.ppt,.pptx,.pdf,.zip,.rar' :headers="headers" :on-change="beforeUpload"
+        style="width: 80px !important;"
         :on-error="onError" ref='upload'>
         <el-button size="small" type="primary">闄勪欢涓婁紶</el-button></el-upload>
       <ValueTable class="value-table" ref="fileList" :url="$api.insOrderPlan.getFileList"
@@ -636,6 +640,10 @@
               this.insOrder.typeName = m.label
             }
           })
+          this.loading = false
+          if(!res.data.sampleProduct||res.data.sampleProduct.length==0){
+            return this.$message.error('璇ヤ换鍔℃病鏈夋牱鍝佷俊鎭�')
+          }
           this.sampleProduct = res.data.sampleProduct
           this.currentSample = this.HaveJson(this.sampleProduct[0])
           let list = await this.getCurrentProduct(this.currentSample.id,0)
@@ -652,7 +660,6 @@
           })
           if (this.currentSample.index == undefined) this.currentSample['index'] = 1
           let bushing = this.currentSample.bushing
-          this.loading = false
           // this.handleTableData()
           this.getTableLists();
           this.componentData.currentId = val;
@@ -1154,6 +1161,7 @@
         }
         this.excelMethodList.forEach(item => {
           if (item.valueList.find(m => m.r == r && m.c == c)) {
+            console.log(item)
             var comValue = {}
             item.valueList.forEach(a => {
               list.forEach(b => {
@@ -1181,9 +1189,11 @@
             })
             if (item.methodName == '鑷畾涔夋柟娉�' && item.v.ps != undefined && item.v.ps.value == '缁撹') {
               if (this.currentSample.insProduct.find(m => m.id == item.i)) {
-                let ask = this.currentSample.insProduct.find(m => m.id == item.i).ask.split('&');
+                let ask = this.currentSample.insProduct.find(m => m.id == item.i).ask?this.currentSample.insProduct.find(m => m.id == item.i).ask.split('&'):null;
                 let res = Object.values(comValue)[0]
-                let comp = ask.map((m, i) => {
+                let comp = []
+                if(ask){
+                  comp = ask.map((m, i) => {
                   if (m.includes('=')) {
                     return res == m.split('=')[1]
                   } else if (m.includes('鈮�')) {
@@ -1205,6 +1215,7 @@
                     return res >= (k[0] - k[1]) && res <= (k[0] + k[1])
                   }
                 })
+                }
                 if(this.getInspectionValueType(item.i)==1){
                   if (comp.every(m => m)) {
                     item.v.v = 1
@@ -1231,11 +1242,25 @@
                   }
                   comResult = sum
                   break;
+                case 'MEDIAN':
+                  let arr = []
+                  for (var a in comValue) {
+                    arr.push(comValue[a])
+                  }
+                  comResult = this.median(arr)
+                  break;
+                case 'APS':
+                  let arr0 = []
+                  for (var a in comValue) {
+                    arr0.push(comValue[a])
+                  }
+                  comResult = Math.abs(arr[0])
+                  break;
                 default:
                   let valueList = [];
                   item.valueList.forEach(a => {
                     valueList.push({
-                      name: `${this.comparisonList[a.c].label}${a.r+1}`,
+                      name: `${this.comparisonList.find(e=>e.value==a.c).label}${a.r+1}`,
                       value: 0,
                     })
                   })
@@ -1250,21 +1275,18 @@
                   valueList.forEach(b => {
                     str = str.replace(b.name, b.value)
                   })
-                  if (item.v.f.includes('/')) {
-                    if (Object.getOwnPropertyNames(comValue).length == valueList.length) {
-                      comResult = eval(str)
-                    } else {
-                      comResult = ''
-                    }
-                  } else {
+                  try {
                     if(this.getInspectionValueType(item.i)==1){
                       comResult = eval(str)
                     }else{
                       comResult = str
                     }
+                  } catch (error) {
+
                   }
                   break;
               }
+              console.log(comResult)
               list.forEach(a => {
                 if (a[0].r == item.r && comResult != '') {
                   for (var b in a) {
@@ -1343,10 +1365,10 @@
               this.tableList[0].insProductResult[m] = JSON.stringify(this.tableList[0].insProductResult[m])
               break;
             case 'resValue':
-              this.tableList[0].lastValue = value.v.v
+              this.tableList[0].lastValue = value?value.v.v:''
               break;
             case 'insResult':
-              this.tableList[0].insResult = value.v.v
+              this.tableList[0].insResult = value?value.v.v:''
               break;
           }
         }
@@ -1380,7 +1402,7 @@
               }
             } else {
               valueList = []
-              let regex = /[=\+\-\*\%\(\)\/\s]/g
+              let regex = /[=\+\-\*\%\(\)\/\^\s]/g
               let mode = item.v.f.replace(regex, ' ').split(' ');
               mode.filter(m => m && !Number(m)).forEach(m => {
                 let r = m.replace(/[a-zA-Z]/g, "") - 1
@@ -1395,6 +1417,20 @@
             return item;
           })
         }
+      },
+      median(arr) {
+          // 瀵规暟缁勮繘琛屾帓搴�
+          const sortedArr = arr.sort((a, b) => a - b);
+          // 璁$畻鏁扮粍闀垮害鐨勪竴鍗�
+          const half = Math.floor(sortedArr.length / 2);
+          // 濡傛灉鏁扮粍闀垮害涓哄鏁帮紝杩斿洖涓棿鐨勫厓绱狅紱濡傛灉涓哄伓鏁帮紝杩斿洖涓棿涓や釜鍏冪礌鐨勫钩鍧囧��
+          if (sortedArr.length % 2) {
+              // 濂囨暟浣嶇疆鐨勫厓绱�
+              return sortedArr[half];
+          } else {
+              // 鍋舵暟浣嶇疆鐨勫钩鍧囧��
+              return (sortedArr[half - 1] + sortedArr[half]) / 2;
+          }
       },
       getInspectionValueType(id) {
         for (var a in this.currentSample.insProduct) {
@@ -1437,20 +1473,34 @@
         }
       },
       getSystemValue(n) {
+        let code = null
         try {
-          if (this.param[n.i].equipValue.v.v == null || this.param[n.i].equipValue.v.v == '') {
-            this.$message.error('璇峰厛閫夋嫨閲囬泦鐨勮澶�')
-            return
-          }
+          this.param[n.i].equipValue.forEach(a=>{
+            if(a.r === n.r){
+              if (a.v.v == null || a.v.v == '') {
+                this.$message.error('璇峰厛閫夋嫨閲囬泦鐨勮澶�')
+                return
+              }else{
+                code = a.v.v
+              }
+            }
+          })
         } catch (e) {
+          console.log(e);
           this.$message.error('鎵句笉鍒拌澶囧唴瀹�')
         }
-        this.$message.error('閲囬泦澶辫触銆愬凡寮�鏀炬墜鍔ㄦ柟寮忋��')
+        console.log(n, code);
+        fetch('http://localhost:82/寰俊鍥剧墖_20240518100811.png').then(res=>res.blob()).then(blob=>{
+          console.log(blob);
+          const url = URL.createObjectURL(blob)
+          console.log(url);
+        })
+        /* this.$message.error('閲囬泦澶辫触銆愬凡寮�鏀炬墜鍔ㄦ柟寮忋��')
         for (var a in this.currentSample.insProduct) {
           if (this.currentSample.insProduct[a].id == n.i) {
             this.currentSample.insProduct[a].inspectionItemType = 0
           }
-        }
+        } */
       },
       getEquipOptions(e, id) {
         if (e) {
@@ -1547,7 +1597,6 @@
           laboratory: this.sonLaboratory,
         }).then(res => {
           if (res.code === 200) {
-            console.log(res.data)
             if(!res.data||res.data.length==0){
               this.$axios.post(this.$api.insOrderPlan.submitPlan, {
                 orderId: this.orderId,
@@ -1571,7 +1620,7 @@
                 if(lastChar=='-'){
                   res.data[i] = res.data[i].slice(0, -1);
                 }
-                newData.push(h('p', {style: 'font-size: 12px;'}, (Number(i)+1)+'銆�'+res.data[i]))
+                newData.push(h('p', {style: 'font-size: 14px;color: red;'}, (Number(i)+1)+'銆�'+res.data[i]))
               }
               newData.push(h('p',  { style: 'font-size: 16px;color:#000;margin-top:12px' },'浠ヤ笂椤圭洰涓嶅悎鏍硷紝纭畾鎻愪氦锛�'))
               this.$confirm('鎻愮ず',{

--
Gitblit v1.9.3