From 61282c106068d9a792e1b084746e2d6b9a997b99 Mon Sep 17 00:00:00 2001
From: gaoluyang <2820782392@qq.com>
Date: 星期二, 15 九月 2026 15:29:52 +0800
Subject: [PATCH] 新疆——新聚lims 1.不需要判定要求、检测方法、检验结果、结论 2.设备不需要绑定每个检验子项,只需要绑定当前的的检验委托单 3.判定结果检测的时候不要出现,复核的时候才判断选择最终结果是否合格

---
 src/views/business/inspectionTask/components/InspectionWord.vue |   19 --
 src/views/business/inspectionReview/index.vue                   |   92 +++++-----
 src/views/business/reportPreparation/index.vue                  |  114 ++++++------
 src/views/business/inspectionView/index.vue                     |   30 --
 src/workers/InspectionWorker.worker.js                          |   18 +
 src/views/business/inspectionTask/inspection.vue                |   63 ++----
 src/views/business/productOrder/index.vue                       |  101 +---------
 src/views/business/inspectionTask/index.vue                     |   85 +++-----
 8 files changed, 191 insertions(+), 331 deletions(-)

diff --git a/src/views/business/inspectionReview/index.vue b/src/views/business/inspectionReview/index.vue
index 7911e9a..f20dcad 100644
--- a/src/views/business/inspectionReview/index.vue
+++ b/src/views/business/inspectionReview/index.vue
@@ -6,18 +6,18 @@
           <el-input size="small" placeholder="璇疯緭鍏�" clearable v-model="entity.entrustCode"
             @keyup.enter.native="refreshTable()"></el-input>
         </el-form-item>
-        <el-form-item label="涓嬪崟绫诲埆" prop="entrustCode">
-          <el-select size="small" v-model="entity.typeSource" clearable style="width: 100%;" @change="refreshTable()">
-            <el-option v-for="(a, i) in typeSourceList" :key="i" :label="a.label" :value="a.value"></el-option>
-          </el-select>
-        </el-form-item>
-        <el-form-item label="鐗╂枡灞炴��" prop="materialProp">
-          <el-select clearable size="small" v-model="entity.materialProp" style="width: 100%">
-            <el-option v-for="dict in dict.type.material_prop_type" :key="dict.value" :label="dict.label"
-                       :value="dict.value">
-            </el-option>
-          </el-select>
-        </el-form-item>
+<!--        <el-form-item label="涓嬪崟绫诲埆" prop="entrustCode">-->
+<!--          <el-select size="small" v-model="entity.typeSource" clearable style="width: 100%;" @change="refreshTable()">-->
+<!--            <el-option v-for="(a, i) in typeSourceList" :key="i" :label="a.label" :value="a.value"></el-option>-->
+<!--          </el-select>-->
+<!--        </el-form-item>-->
+<!--        <el-form-item label="鐗╂枡灞炴��" prop="materialProp">-->
+<!--          <el-select clearable size="small" v-model="entity.materialProp" style="width: 100%">-->
+<!--            <el-option v-for="dict in dict.type.material_prop_type" :key="dict.value" :label="dict.label"-->
+<!--                       :value="dict.value">-->
+<!--            </el-option>-->
+<!--          </el-select>-->
+<!--        </el-form-item>-->
         <el-form-item>
           <el-button type="primary" size="mini" @click="refreshTable">鏌ヨ</el-button>
           <el-button size="mini" @click="refresh">閲嶇疆</el-button>
@@ -96,21 +96,21 @@
           linkMethod: "selectAllByOne",
         },
         { label: "鏍峰搧鍚嶇О", prop: "sample", width: "160px" },
-        {
-          label: '鐗╂枡灞炴��',
-          prop: 'materialProp',
-          formatData: (params) => {
-            if (!params) return null
-
-            for (let i = 0; i < this.dict.type.material_prop_type.length; i++) {
-              const item = this.dict.type.material_prop_type[i]
-              if (item.value == params) {
-                return item.label
-              }
-            }
-            return null
-          }
-        },
+        // {
+        //   label: '鐗╂枡灞炴��',
+        //   prop: 'materialProp',
+        //   formatData: (params) => {
+        //     if (!params) return null
+        //
+        //     for (let i = 0; i < this.dict.type.material_prop_type.length; i++) {
+        //       const item = this.dict.type.material_prop_type[i]
+        //       if (item.value == params) {
+        //         return item.label
+        //       }
+        //     }
+        //     return null
+        //   }
+        // },
         {
           label: "涓嬪崟绫诲埆",
           prop: "typeSource",
@@ -127,25 +127,25 @@
           },
         },
         { label: "鏍峰搧鍨嬪彿", prop: "sampleModel", width: "120px" },
-        {
-          label: "绱ф�ョ▼搴�",
-          prop: "type",
-          dataType: "tag",
-          formatData: (params) => {
-            if (this.urgencyLevel.find((m) => m.value == params)) {
-              return this.urgencyLevel.find((m) => m.value == params).label;
-            } else {
-              return null
-            }
-          },
-          formatType: (params) => {
-            if (this.urgencyLevel.find((m) => m.value == params)) {
-              return this.urgencyLevel.find((m) => m.value == params).type;
-            } else {
-              return null
-            }
-          },
-        },
+        // {
+        //   label: "绱ф�ョ▼搴�",
+        //   prop: "type",
+        //   dataType: "tag",
+        //   formatData: (params) => {
+        //     if (this.urgencyLevel.find((m) => m.value == params)) {
+        //       return this.urgencyLevel.find((m) => m.value == params).label;
+        //     } else {
+        //       return null
+        //     }
+        //   },
+        //   formatType: (params) => {
+        //     if (this.urgencyLevel.find((m) => m.value == params)) {
+        //       return this.urgencyLevel.find((m) => m.value == params).type;
+        //     } else {
+        //       return null
+        //     }
+        //   },
+        // },
         {
           label: "妫�楠岀被鍨�",
           prop: "orderType",
diff --git a/src/views/business/inspectionTask/components/InspectionWord.vue b/src/views/business/inspectionTask/components/InspectionWord.vue
index 4c61c6b..189de42 100644
--- a/src/views/business/inspectionTask/components/InspectionWord.vue
+++ b/src/views/business/inspectionTask/components/InspectionWord.vue
@@ -149,15 +149,6 @@
             </el-select>
           </div>
         </div>
-        <div class="body" style="display: flex;padding: 10px;align-items: center;">
-          <div class="search_label" style="width: 150px;"><span class="required-span">*</span>鎶ュ憡绫诲瀷</div>
-          <div class="search_input" style="width: 100%;">
-            <el-select v-model="reportType" clearable placeholder="璇烽�夋嫨" size="small" style="width: 100%;">
-              <el-option label="妫�娴嬫姤鍛�" :value="0"></el-option>
-              <el-option label="妫�楠屾姤鍛�" :value="1"></el-option>
-            </el-select>
-          </div>
-        </div>
         <span slot="footer" class="dialog-footer">
           <el-button @click="addVerifyDia = false">鍙� 娑�</el-button>
           <el-button :loading="submitLoading" type="primary" @click="submit()">纭� 瀹�</el-button>
@@ -335,7 +326,6 @@
       widthList: [],
       addVerifyDia: false,
       verifyUser: null,
-      reportType: null,
       personList: [],
       enumList: [],
       tableLoading: false,
@@ -1347,10 +1337,6 @@
         this.$message.error("璇锋寚瀹氬鏍镐汉鍛�")
         return
       }
-      if (this.reportType === null || this.reportType === '') {
-        this.$message.error("璇烽�夋嫨鎶ュ憡绫诲瀷")
-        return
-      }
       if (!this.otherForm.humidity) {
         this.$message.error("璇疯緭鍏ユ箍搴�")
         return
@@ -1363,7 +1349,6 @@
       checkSubmitPlan({
         orderId: this.orderId,
         laboratory: this.sonLaboratory,
-        reportType: this.reportType,
       }).then(res => {
         if (res.code === 200) {
           if (!res.data || res.data.errorMsg.length == 0) {
@@ -1373,8 +1358,7 @@
               laboratory: this.sonLaboratory,
               verifyUser: this.verifyUser,
               entrustCode: this.insOrder.entrustCode,
-              registerInsResults: this.reportType === 1,
-              reportType: this.reportType
+              registerInsResults: false,
             }).then(res => {
               if (res.code === 200) {
                 this.$message.success("鎿嶄綔鎴愬姛")
@@ -1410,7 +1394,6 @@
                 laboratory: this.sonLaboratory,
                 verifyUser: this.verifyUser,
                 registerInsResults: false,
-                reportType: this.reportType
               }).then(res => {
                 if (res.code === 200) {
                   this.$message.success("鎿嶄綔鎴愬姛")
diff --git a/src/views/business/inspectionTask/index.vue b/src/views/business/inspectionTask/index.vue
index 4ac266e..37b7124 100644
--- a/src/views/business/inspectionTask/index.vue
+++ b/src/views/business/inspectionTask/index.vue
@@ -13,13 +13,13 @@
                          :value="a.value"></el-option>
             </el-select>
           </el-form-item>
-          <el-form-item label="鐗╂枡灞炴��" prop="materialProp">
-            <el-select clearable size="small" v-model="queryParams.materialProp" style="width: 100%">
-              <el-option v-for="dict in dict.type.material_prop_type" :key="dict.value" :label="dict.label"
-                         :value="dict.value">
-              </el-option>
-            </el-select>
-          </el-form-item>
+<!--          <el-form-item label="鐗╂枡灞炴��" prop="materialProp">-->
+<!--            <el-select clearable size="small" v-model="queryParams.materialProp" style="width: 100%">-->
+<!--              <el-option v-for="dict in dict.type.material_prop_type" :key="dict.value" :label="dict.label"-->
+<!--                         :value="dict.value">-->
+<!--              </el-option>-->
+<!--            </el-select>-->
+<!--          </el-form-item>-->
           <el-form-item>
             <el-button size="mini" type="primary" @click="refreshTable()">鏌ヨ</el-button>
             <el-button size="mini" @click="refresh()">閲嶇疆</el-button>
@@ -29,7 +29,7 @@
       <div class="center" v-loading="tableLoading">
         <div class="center-options">
           <div style="display: flex; align-items: center">
-            <span style="font-size: 14px">璇曢獙瀹ょ绫�:</span>
+            <span style="font-size: 14px">璇曢獙瀹�:</span>
             <ul class="tab">
               <li v-for="(m, i) in tabList" :key="i" :class="{ active: i == tabIndex }" @click="handleTab(m, i)">
                 {{ m.label.replace("璇曢獙瀹�", "") }}
@@ -286,8 +286,8 @@
       claimVisible: false,
       tabList: [
         { label: "濮旀墭", value: -1 },
-        { label: "鍘熸潗鏂�", value: 1 },
-        { label: "澶栬喘", value: 0 },
+        // { label: "鍘熸潗鏂�", value: 1 },
+        // { label: "澶栬喘", value: 0 },
       ],
       active: 1,
       tabIndex: 0,
@@ -360,21 +360,6 @@
         },
         { label: "鏍峰搧鍚嶇О", prop: "sample", width: "160px" },
         {
-          label: '鐗╂枡灞炴��',
-          prop: 'materialProp',
-          formatData: (params) => {
-            if (!params) return null
-
-            for (let i = 0; i < this.dict.type.material_prop_type.length; i++) {
-              const item = this.dict.type.material_prop_type[i]
-              if (item.value == params) {
-                return item.label
-              }
-            }
-            return null
-          }
-        },
-        {
           label: "涓嬪崟绫诲埆",
           prop: "typeSource",
           width: "100px",
@@ -389,30 +374,29 @@
             }
           },
         },
-        { label: "鏍峰搧鍨嬪彿", prop: "sampleModel", width: "120px" },
-        {
-          label: "绱ф�ョ▼搴�",
-          prop: "type",
-          dataType: "tag",
-          formatData: (params) => {
-            if (params == 0) {
-              return '鏅��'
-            } else if (params == 1) {
-              return '浼樺厛'
-            } else {
-              return '绱ф��'
-            }
-          },
-          formatType: (params) => {
-            if (params == 0) {
-              return 'success'
-            } else if (params == 1) {
-              return 'warning'
-            } else {
-              return 'danger'
-            }
-          }
-        },
+        // {
+        //   label: "绱ф�ョ▼搴�",
+        //   prop: "type",
+        //   dataType: "tag",
+        //   formatData: (params) => {
+        //     if (params == 0) {
+        //       return '鏅��'
+        //     } else if (params == 1) {
+        //       return '浼樺厛'
+        //     } else {
+        //       return '绱ф��'
+        //     }
+        //   },
+        //   formatType: (params) => {
+        //     if (params == 0) {
+        //       return 'success'
+        //     } else if (params == 1) {
+        //       return 'warning'
+        //     } else {
+        //       return 'danger'
+        //     }
+        //   }
+        // },
         {
           label: "妫�楠岀被鍨�",
           prop: "orderType",
@@ -823,8 +807,7 @@
           sonLaboratory: this.sonLaboratory,
           state: this.state,
           typeSource: this.typeSource,
-          orderId: this.orderId,
-          isSplit: row.isSplitOrder
+          orderId: this.orderId
         },
       });
     },
diff --git a/src/views/business/inspectionTask/inspection.vue b/src/views/business/inspectionTask/inspection.vue
index 0f21557..e806089 100644
--- a/src/views/business/inspectionTask/inspection.vue
+++ b/src/views/business/inspectionTask/inspection.vue
@@ -92,7 +92,6 @@
           <el-descriptions-item label="闆朵欢鍙�">{{insOrder.partNo}}</el-descriptions-item>
           <el-descriptions-item label="闆朵欢鍚嶇О">{{insOrder.partDetail}}</el-descriptions-item>
           <el-descriptions-item label="鎵规鍙�">{{ insOrder.lotBatchNo }}</el-descriptions-item>
-          <el-descriptions-item label="鏍峰搧鍨嬪彿" >{{currentSample.model}}</el-descriptions-item>
           <el-descriptions-item label="鎶芥鏁伴噺">{{insOrder.testQuantity}}</el-descriptions-item>
           <el-descriptions-item label="鍘傚瀵嗗害">{{supplierDensity}}</el-descriptions-item>
           <template v-if="insOrder.ifsOrderType && insOrder.ifsOrderType==='02wg'">
@@ -109,8 +108,7 @@
           <el-descriptions-item label="濮旀墭缂栧彿">{{ insOrder.entrustCode }}</el-descriptions-item>
           <el-descriptions-item label="鏍峰搧缂栧彿">{{ currentSample.sampleCode }}</el-descriptions-item>
           <el-descriptions-item label="鏍峰搧鍚嶇О">{{ currentSample.sample }}</el-descriptions-item>
-          <el-descriptions-item label="鏍峰搧鏁伴噺">{{ sampleProduct.length }}</el-descriptions-item>
-          <el-descriptions-item label="鏍峰搧鍨嬪彿">{{ currentSample.model }}</el-descriptions-item>
+          <el-descriptions-item label="鏍峰搧鏁伴噺">{{ insOrder.testQuantity }}</el-descriptions-item>
           <el-descriptions-item label="涓嬪彂鏃堕棿">{{ insOrder.sendTime }}</el-descriptions-item>
           <el-descriptions-item label="绱ф�ョ▼搴�">{{ insOrder.typeName }}</el-descriptions-item>
           <el-descriptions-item label="绾﹀畾鏃堕棿">{{ insOrder.appointed }}</el-descriptions-item>
@@ -125,6 +123,12 @@
             :disabled="state != 1" @change="saveOverviewDevices">
             <el-option v-for="device in orderDeviceOptions" :key="device.id" :label="device.label" :value="device.id" />
           </el-select>
+        </el-descriptions-item>
+        <el-descriptions-item label="妫�楠岀粨璁�">
+          <el-radio-group v-model="reviewInsResult" :disabled="state != 2">
+            <el-radio :label="1">鍚堟牸</el-radio>
+            <el-radio :label="0">涓嶅悎鏍�</el-radio>
+          </el-radio-group>
         </el-descriptions-item>
       </el-descriptions>
     </div>
@@ -388,17 +392,6 @@
           <el-select v-model="verifyUser" clearable filterable placeholder="璇烽�夋嫨" size="small" style="width: 100%">
             <el-option v-for="(item, i) in personList" :key="i" :label="item.label" :value="item.value">
             </el-option>
-          </el-select>
-        </div>
-      </div>
-      <div class="body" style="display: flex; padding: 10px; align-items: center">
-        <div class="search_label" style="width: 150px">
-          <span class="required-span">*</span>鎶ュ憡绫诲瀷
-        </div>
-        <div class="search_input" style="width: 100%">
-          <el-select v-model="reportType" clearable placeholder="璇烽�夋嫨" size="small" style="width: 100%">
-            <el-option label="妫�娴嬫姤鍛�" :value="0"></el-option>
-            <el-option label="妫�楠屾姤鍛�" :value="1"></el-option>
           </el-select>
         </div>
       </div>
@@ -675,13 +668,13 @@
       reviewLoading: false,
       reviewDia: false,
       noReason: "",
+      reviewInsResult: null,
       tableWidth: 1000,
       currentTable: null,
       tableLists: [],
       widthList: [],
       addVerifyDia: false,
       verifyUser: null,
-      reportType: null,
       personList: [],
       enumList: [],
       tableLoading: false,
@@ -840,7 +833,6 @@
       },
       tableLoading0: false,
       // 浠诲姟鍒囨崲鍒楄〃--缁撴潫
-      isSplit: 0, // 鏄惁鏄媶鍗曡繃鏉ョ殑
     };
   },
   // 鐢ㄤ簬涓婁紶鏂囦欢鐨勪俊鎭�
@@ -852,7 +844,7 @@
   },
   created() {
     this.saveQueue = Promise.resolve();
-    let { sonLaboratory, orderId, state, inspectorList, typeSource,isSplit } =
+    let { sonLaboratory, orderId, state, inspectorList, typeSource } =
       this.$route.query;
     this.sonLaboratory = sonLaboratory;
     this.orderId = orderId;
@@ -860,7 +852,6 @@
     this.state = state;
     this.inspectorList = inspectorList;
     this.typeSource = typeSource;
-    this.isSplit = isSplit;
   },
   mounted() {
     this.getTypeDicts(); // 鑾峰彇绱ф�ョ▼搴︿笅鎷夋閫夐」
@@ -1090,6 +1081,7 @@
         laboratory: this.sonLaboratory,
       }).then(async (res) => {
         this.insOrder = res.data.insOrder;
+        this.reviewInsResult = this.insOrder.insResult;
         if(res.data.insOrder.ifsOrderType==='02wg'){
           //鏌ヨ闆朵欢灞炴��
           this.getPartProps(res.data.insOrder.ifsInventoryId)
@@ -2187,6 +2179,10 @@
     upInsReview(e) {
       if (e == 1) {
         // 閫氳繃
+        if (this.reviewInsResult !== 0 && this.reviewInsResult !== 1) {
+          this.$message.error("璇烽�夋嫨妫�楠岀粨璁�");
+          return;
+        }
         this.reviewLoading = true;
         verifyPlan({
           orderId: this.orderId,
@@ -2194,6 +2190,7 @@
           laboratory: this.sonLaboratory,
           tell: null,
           userId: this.checkUser,
+          insResult: this.reviewInsResult,
         }).then((res) => {
           if (res.code === 200) {
             this.$message.success("鎿嶄綔鎴愬姛");
@@ -2239,17 +2236,15 @@
       this.$refs.viewManHourDia.showDialog(this.id, 99);
     },
     openAddVerifyDia() {
-      this.reportType = null;
       this.addVerifyDia = true;
     },
-    confirmSubmit(registerInsResults){
+    confirmSubmit(){
       submitPlan({
         orderId: this.orderId,
         laboratory: this.sonLaboratory,
         verifyUser: this.verifyUser,
         entrustCode: this.insOrder.entrustCode,
-        registerInsResults: this.reportType === 1 && registerInsResults,
-        reportType: this.reportType
+        registerInsResults: false,
       }).then((res) => {
         if (res.code === 200) {
           this.$message.success("鎿嶄綔鎴愬姛");
@@ -2266,10 +2261,6 @@
     async submit() {
       if (this.verifyUser === null || this.verifyUser === "") {
         this.$message.error("璇锋寚瀹氬鏍镐汉鍛�");
-        return;
-      }
-      if (this.reportType === null || this.reportType === "") {
-        this.$message.error("璇烽�夋嫨鎶ュ憡绫诲瀷");
         return;
       }
       if (!this.otherForm.humidity && this.insOrder.ifsOrderType!=='02wg') {
@@ -2289,27 +2280,11 @@
       checkSubmitPlan({
         orderId: this.orderId,
         laboratory: this.sonLaboratory,
-        reportType: this.reportType,
       }).then((res) => {
         if (res.code === 200) {
           if (!res.data || res.data.errorMsg.length == 0) {
             this.submitLoading = true;
-            //妫�楠岀被鍨嬩负鍘熸潗鏂�
-            if(this.reportType === 1 && this.typeSource==1 && res.data.unInsOrderCount==0 && this.isSplit==1){
-              const htmlStr = "鏄惁鐧昏IFS閲囪喘妫�楠岀粨鏋滃苟绉诲簱锛熻鎿嶄綔浼氱櫥璁�<span style='color:#ff4949'>鍚屼竴闆朵欢鍚屼竴璁㈠崟鐨勬墍鏈夋媶鍒嗘壒娆�</span>锛岃璋ㄦ厧閫夋嫨銆�"
-              this.$confirm(htmlStr, '鎻愮ず', {
-                confirmButtonText: '鏄�',
-                cancelButtonText: '鍚�',
-                type: 'warning',
-                dangerouslyUseHTMLString: true
-              }).then(() => {
-                this.confirmSubmit(true)
-              }).catch(() => {
-                this.confirmSubmit(false)
-              });
-            }else{
-              this.confirmSubmit(true)
-            }
+            this.confirmSubmit();
           } else {
             let newData = [];
             const h = this.$createElement;
@@ -2345,7 +2320,7 @@
             })
               .then(() => {
                 this.submitLoading = true;
-                this.confirmSubmit(false)
+                this.confirmSubmit()
                 // submitPlan({
                 //   orderId: this.orderId,
                 //   laboratory: this.sonLaboratory,
diff --git a/src/views/business/inspectionView/index.vue b/src/views/business/inspectionView/index.vue
index 0d4eefa..697e2c0 100644
--- a/src/views/business/inspectionView/index.vue
+++ b/src/views/business/inspectionView/index.vue
@@ -45,7 +45,7 @@
           <el-input v-model="currentSample.sample" clearable disabled placeholder="璇疯緭鍏�" size="small"></el-input>
         </el-form-item>
         <el-form-item label="鏍峰搧鏁伴噺:">
-          <el-input v-model="sampleProduct.length" clearable disabled placeholder="璇疯緭鍏�" size="small"></el-input>
+          <el-input v-model="insOrder.testQuantity" clearable disabled placeholder="璇疯緭鍏�" size="small"></el-input>
         </el-form-item>
         <el-form-item label="鏍峰搧鍨嬪彿:">
           <el-input v-model="currentSample.model" clearable disabled placeholder="璇疯緭鍏�" size="small"></el-input>
@@ -74,7 +74,7 @@
                     @blur="subOtherForm(insOrder.remark, 'remark')"></el-input>
           <!-- <el-tag v-if="currentKey">{{ insOrder.remark }}</el-tag> -->
         </el-form-item>
-        <el-form-item v-if="isDirectTemplateOrder()" label="妫�楠岀粨璁�:">
+        <el-form-item label="妫�楠岀粨璁�:">
           <el-radio-group v-model="reviewInsResult" :disabled="state != 2">
             <el-radio :label="1">鍚堟牸</el-radio>
             <el-radio :label="0">涓嶅悎鏍�</el-radio>
@@ -343,17 +343,6 @@
           </el-select>
         </div>
       </div>
-      <div class="body" style="display: flex; padding: 10px; align-items: center">
-        <div class="search_label" style="width: 150px">
-          <span class="required-span">*</span>鎶ュ憡绫诲瀷
-        </div>
-        <div class="search_input" style="width: 100%">
-          <el-select v-model="reportType" clearable placeholder="璇烽�夋嫨" size="small" style="width: 100%">
-            <el-option label="妫�娴嬫姤鍛�" :value="0"></el-option>
-            <el-option label="妫�楠屾姤鍛�" :value="1"></el-option>
-          </el-select>
-        </div>
-      </div>
       <span slot="footer" class="dialog-footer">
         <el-button @click="addVerifyDia = false">鍙� 娑�</el-button>
         <el-button :loading="submitLoading" type="primary" @click="submit()">纭� 瀹�</el-button>
@@ -572,7 +561,6 @@
       widthList: [],
       addVerifyDia: false,
       verifyUser: null,
-      reportType: null,
       personList: [],
       enumList: [],
       tableLoading: false,
@@ -1982,7 +1970,7 @@
     upInsReview(e) {
       if (e == 1) {
         // 閫氳繃
-        if (this.isDirectTemplateOrder() && this.reviewInsResult !== 0 && this.reviewInsResult !== 1) {
+        if (this.reviewInsResult !== 0 && this.reviewInsResult !== 1) {
           this.$message.error("璇烽�夋嫨妫�楠岀粨璁�");
           return;
         }
@@ -1993,7 +1981,7 @@
           laboratory: this.sonLaboratory,
           tell: null,
           userId: this.checkUser,
-          insResult: this.isDirectTemplateOrder() ? this.reviewInsResult : null,
+          insResult: this.reviewInsResult,
         }).then((res) => {
           if (res.code === 200) {
             this.$message.success("鎿嶄綔鎴愬姛");
@@ -2039,16 +2027,11 @@
       this.$refs.viewManHourDia.showDialog(this.id, 99);
     },
     openAddVerifyDia() {
-      this.reportType = null;
       this.addVerifyDia = true;
     },
     submit() {
       if (this.verifyUser === null || this.verifyUser === "") {
         this.$message.error("璇锋寚瀹氬鏍镐汉鍛�");
-        return;
-      }
-      if (this.reportType === null || this.reportType === "") {
-        this.$message.error("璇烽�夋嫨鎶ュ憡绫诲瀷");
         return;
       }
       if (!this.otherForm.humidity) {
@@ -2063,7 +2046,6 @@
       checkSubmitPlan({
         orderId: this.orderId,
         laboratory: this.sonLaboratory,
-        reportType: this.reportType,
       }).then((res) => {
         if (res.code === 200) {
           if (!res.data || res.data.errorMsg.length == 0) {
@@ -2073,8 +2055,7 @@
               laboratory: this.sonLaboratory,
               verifyUser: this.verifyUser,
               entrustCode: this.insOrder.entrustCode,
-              registerInsResults: this.reportType === 1,
-              reportType: this.reportType,
+              registerInsResults: false,
             }).then((res) => {
               if (res.code === 200) {
                 this.$message.success("鎿嶄綔鎴愬姛");
@@ -2127,7 +2108,6 @@
                   laboratory: this.sonLaboratory,
                   verifyUser: this.verifyUser,
                   registerInsResults: false,
-                  reportType: this.reportType,
                 }).then((res) => {
                   if (res.code === 200) {
                     this.$message.success("鎿嶄綔鎴愬姛");
diff --git a/src/views/business/productOrder/index.vue b/src/views/business/productOrder/index.vue
index 1f24b24..5f5624f 100644
--- a/src/views/business/productOrder/index.vue
+++ b/src/views/business/productOrder/index.vue
@@ -55,7 +55,6 @@
         <div>
           <el-button v-if="tabIndex === 2 || tabIndex === 3 || tabIndex === 6" size="small"
                      @click="downLoad">瀵煎嚭</el-button>
-          <el-button v-if="tabIndex === 1" size="small" type="primary" @click="openAddIns">娣诲姞妫�楠岄」</el-button>
           <el-button size="small" type="primary" @click="openPrint">鏍囩鎵撳嵃</el-button>
           <el-button v-if="checkPermi(['add:insOrder'])" size="small" type="primary" @click="playOrder(1)">涓嬪崟</el-button>
         </div>
@@ -294,8 +293,6 @@
     <!--鏍囩鎵撳嵃寮规-->
     <print-dialog v-if="printDialog" ref="printDialog" :printDialog="printDialog"
       @closePrintDialog="closePrintDialog"></print-dialog>
-    <!--娣诲姞閬楁紡妫�楠岄」寮规-->
-    <add-inspection-dia v-if="addInspectionDia" ref="addInspectionDia"></add-inspection-dia>
     <!--淇敼鏍峰搧鍨嬪彿寮规-->
     <el-dialog :close-on-click-modal="false" :close-on-press-escape="false"
                :visible.sync="dialogVisible" title="淇敼鏍峰搧鍨嬪彿" width="80%">
@@ -325,7 +322,6 @@
 import vueQr from 'vue-qr'
 import PrintJS from 'print-js'
 import PrintDialog from "@/views/business/productOrder/components/printDialog.vue";
-import AddInspectionDia from "@/views/business/productOrder/components/addInspectionDia.vue";
 import limsTable from "@/components/Table/lims-table.vue";
 import {
   checkUpdate, delInsOrder, getSampleByOrderId,
@@ -344,7 +340,6 @@
   name: 'ProductOrder',
   components: {
     limsTable,
-    AddInspectionDia,
     PrintDialog,
     vueQr
   },
@@ -367,75 +362,25 @@
           linkMethod: "changeEntrustCode",
         },
         { label: '濮旀墭鍗曚綅', prop: 'company' },
-        {
-          label: "鏍峰搧鍚嶇О",
-          prop: "sampleName",
-          width: "160px",
-          dataType: "link",
-          linkMethod: "selectAllByOne",
-        },
-        {
-          label: "鏍峰搧鍨嬪彿",
-          prop: "sampleModel",
-          width: "160px",
-          dataType: "link",
-          linkMethod: "editSampleModel",
-        },
-        { label: '鏍峰搧鏁伴噺', prop: 'sampleNum' },
+        // {
+        //   label: "鏍峰搧鍚嶇О",
+        //   prop: "sampleName",
+        //   width: "160px",
+        //   dataType: "link",
+        //   linkMethod: "selectAllByOne",
+        // },
+        // {
+        //   label: "鏍峰搧鍨嬪彿",
+        //   prop: "sampleModel",
+        //   width: "160px",
+        //   dataType: "link",
+        //   linkMethod: "editSampleModel",
+        // },
+        { label: '鏍峰搧鏁伴噺', prop: 'testQuantity' },
         { label: '妫�楠屼汉', prop: 'testingName' },
-        {
-          dataType: 'tag',
-          label: '绱ф�ョ▼搴�',
-          prop: 'type',
-          formatData: (params) => {
-            if (params == 0) {
-              return '鏅��'
-            } else if (params == 1) {
-              return '浼樺厛'
-            } else {
-              return '绱ф��'
-            }
-          },
-          formatType: (params) => {
-            if (params == 0) {
-              return 'success'
-            } else if (params == 1) {
-              return 'warning'
-            } else {
-              return 'danger'
-            }
-          }
-        },
         { label: '澶囨敞', prop: 'remark' },
         { label: '妫�楠岃繘搴�%', prop: 'insProgress' },
         { label: '绾﹀畾鏃堕棿', prop: 'appointed' },
-        {
-          dataType: 'tag',
-          label: '妫�楠岀粨鏋�',
-          prop: 'insResult',
-          formatData: (params) => {
-            if (params == 1) {
-              return '鍚堟牸'
-            } else if (params == 0) {
-              return '涓嶅悎鏍�'
-            } else if (params == 3) {
-              return '涓嶅垽瀹�'
-            } else {
-              return null
-            }
-          },
-          formatType: (params) => {
-            if (params == 1) {
-              return 'success'
-            } else if (params == 0) {
-              return 'danger'
-            } else if (params == 3) {
-              return ''
-            } else {
-              return null
-            }
-          }
-        },
         { label: '涓嬪崟鏃堕棿', prop: 'createTime' },
         { label: '涓嬪彂鏃堕棿', prop: 'sendTime' },
         { label: '閫�鍥炵悊鐢�', prop: 'tell' },
@@ -766,7 +711,6 @@
       qrData: [],
       multipleSelection: [],
       printDialog: false,
-      addInspectionDia: false,
       dialogVisible: false,
       submitListLoad: false,
       sampleList: []
@@ -915,21 +859,6 @@
         targetStyles: ["*"], // 浣跨敤dom鐨勬墍鏈夋牱寮忥紝寰堥噸瑕�
         font_size: '0.20cm',
       });
-    },
-    // 鎵撳紑娣诲姞妫�楠岄」寮规
-    openAddIns() {
-      if (this.multipleSelection.length === 0) {
-        this.$message.warning('璇烽�夋嫨闇�瑕佹坊鍔犳楠岄」鐨勬暟鎹�')
-        return
-      }
-      if (this.multipleSelection.length > 1) {
-        this.$message.warning('鍙兘閫夋嫨涓�鏉℃暟鎹�')
-        return
-      }
-      this.addInspectionDia = true
-      this.$nextTick(() => {
-        this.$refs.addInspectionDia.getDataList(this.multipleSelection[0])
-      })
     },
     // 瀵煎嚭璁板綍
     downLoad() {
diff --git a/src/views/business/reportPreparation/index.vue b/src/views/business/reportPreparation/index.vue
index 33d4743..6501a8d 100644
--- a/src/views/business/reportPreparation/index.vue
+++ b/src/views/business/reportPreparation/index.vue
@@ -11,23 +11,23 @@
             <el-option v-for="(a, i) in queryStatusList" :key="i" :label="a.label" :value="a.value"></el-option>
           </el-select>
         </el-form-item>
-        <el-form-item label="鎶ュ憡绫诲瀷" prop="reportType">
-          <el-select v-model="entity.reportType" clearable size="small" @change="refreshTable()">
-            <el-option v-for="item in reportTypeList" :key="item.value" :label="item.label" :value="item.value"></el-option>
-          </el-select>
-        </el-form-item>
-        <el-form-item label="涓嬪崟绫诲埆" prop="typeSource">
-          <el-select v-model="entity.typeSource" clearable size="small" @change="refreshTable()">
-            <el-option v-for="(a, i) in typeSourceList" :key="i" :label="a.label" :value="a.value"></el-option>
-          </el-select>
-        </el-form-item>
-        <el-form-item label="鐗╂枡灞炴��" prop="materialProp">
-          <el-select clearable size="small" v-model="entity.materialProp" style="width: 100%">
-            <el-option v-for="dict in dict.type.material_prop_type" :key="dict.value" :label="dict.label"
-                       :value="dict.value">
-            </el-option>
-          </el-select>
-        </el-form-item>
+<!--        <el-form-item label="鎶ュ憡绫诲瀷" prop="reportType">-->
+<!--          <el-select v-model="entity.reportType" clearable size="small" @change="refreshTable()">-->
+<!--            <el-option v-for="item in reportTypeList" :key="item.value" :label="item.label" :value="item.value"></el-option>-->
+<!--          </el-select>-->
+<!--        </el-form-item>-->
+<!--        <el-form-item label="涓嬪崟绫诲埆" prop="typeSource">-->
+<!--          <el-select v-model="entity.typeSource" clearable size="small" @change="refreshTable()">-->
+<!--            <el-option v-for="(a, i) in typeSourceList" :key="i" :label="a.label" :value="a.value"></el-option>-->
+<!--          </el-select>-->
+<!--        </el-form-item>-->
+<!--        <el-form-item label="鐗╂枡灞炴��" prop="materialProp">-->
+<!--          <el-select clearable size="small" v-model="entity.materialProp" style="width: 100%">-->
+<!--            <el-option v-for="dict in dict.type.material_prop_type" :key="dict.value" :label="dict.label"-->
+<!--                       :value="dict.value">-->
+<!--            </el-option>-->
+<!--          </el-select>-->
+<!--        </el-form-item>-->
         <el-form-item label="妫�楠岀被鍒�" prop="orderType">
           <el-select v-model="entity.orderType" clearable size="small" @change="refreshTable()">
             <el-option v-for="(a, i) in orderTypeList" :key="i" :label="a.label" :value="a.value"></el-option>
@@ -276,8 +276,8 @@
       orderTypeList: [
         { label: '濮旀墭璇曢獙', value: 'Customer-ordered test' },
         { label: '鎶芥', value: '鎶芥' },
-        { label: '杩涘巶妫�楠�', value: '杩涘巶妫�楠�' },
-        { label: '瀛e害妫�楠�', value: 'Quarterly inspection' },
+        // { label: '杩涘巶妫�楠�', value: '杩涘巶妫�楠�' },
+        // { label: '瀛e害妫�楠�', value: 'Quarterly inspection' },
       ],
       reportTypeList: [
         { label: '妫�娴嬫姤鍛�', value: 0 },
@@ -366,44 +366,44 @@
           dataType: "link",
           linkMethod: "selectAllByOne",
         },
-        {
-          label: '鎶ュ憡绫诲瀷',
-          prop: 'reportType',
-          width: '100px',
-          dataType: 'tag',
-          formatData: (params) => params === 0 ? '妫�娴嬫姤鍛�' : '妫�楠屾姤鍛�',
-          formatType: (params) => params === 0 ? 'warning' : 'success',
-        },
-        {
-          label: "涓嬪崟绫诲埆",
-          prop: "typeSource",
-          width: "100px",
-          dataType: "tag",
-          formatData: (params) => {
-            if (params == 0) {
-              return "澶栬喘涓嬪崟";
-            } else if(params==1) {
-              return "鍘熸潗鏂欎笅鍗�";
-            }else{
-              return "濮旀墭涓嬪崟";
-            }
-          },
-        },
-        {
-          label: '鐗╂枡灞炴��',
-          prop: 'materialProp',
-          formatData: (params) => {
-            if (!params) return null
-
-            for (let i = 0; i < this.dict.type.material_prop_type.length; i++) {
-              const item = this.dict.type.material_prop_type[i]
-              if (item.value == params) {
-                return item.label
-              }
-            }
-            return null
-          }
-        },
+        // {
+        //   label: '鎶ュ憡绫诲瀷',
+        //   prop: 'reportType',
+        //   width: '100px',
+        //   dataType: 'tag',
+        //   formatData: (params) => params === 0 ? '妫�娴嬫姤鍛�' : '妫�楠屾姤鍛�',
+        //   formatType: (params) => params === 0 ? 'warning' : 'success',
+        // },
+        // {
+        //   label: "涓嬪崟绫诲埆",
+        //   prop: "typeSource",
+        //   width: "100px",
+        //   dataType: "tag",
+        //   formatData: (params) => {
+        //     if (params == 0) {
+        //       return "澶栬喘涓嬪崟";
+        //     } else if(params==1) {
+        //       return "鍘熸潗鏂欎笅鍗�";
+        //     }else{
+        //       return "濮旀墭涓嬪崟";
+        //     }
+        //   },
+        // },
+        // {
+        //   label: '鐗╂枡灞炴��',
+        //   prop: 'materialProp',
+        //   formatData: (params) => {
+        //     if (!params) return null
+        //
+        //     for (let i = 0; i < this.dict.type.material_prop_type.length; i++) {
+        //       const item = this.dict.type.material_prop_type[i]
+        //       if (item.value == params) {
+        //         return item.label
+        //       }
+        //     }
+        //     return null
+        //   }
+        // },
         {
           label: "妫�楠岀被鍨�",
           prop: "orderType",
diff --git a/src/workers/InspectionWorker.worker.js b/src/workers/InspectionWorker.worker.js
index f838022..fe3e56d 100644
--- a/src/workers/InspectionWorker.worker.js
+++ b/src/workers/InspectionWorker.worker.js
@@ -37,6 +37,9 @@
 let sourceInsItemId = null;
 // 褰撳墠娑堟伅鐗堟湰銆俉orker 鍗曠嚎绋嬩覆琛屽鐞嗘秷鎭紝渚涢�掑綊鍏紡璁$畻瀹屾垚鍚庡洖浼犵粰涓荤嚎绋嬨��
 let currentRevision = null;
+// 鏈杈撳叆鏄惁寰�鍗曞厓鏍煎啓鍏ヨ繃璁$畻缁撴灉銆傞摼寮忓叕寮忓彧鏈夋渶澶栧眰浼氬洖浼犱繚瀛橈紝
+// 鐢ㄥ畠鍦ㄦ渶澶栧眰鍒ゆ柇璁$畻鐨勪腑闂村�兼槸鍚︿篃闇�瑕佽惤搴撱��
+let hasComputedWrite = false;
 
 /**
  * 鐢熸垚妯℃澘缁撴瀯绛惧悕
@@ -141,7 +144,8 @@
   comparisonList = JSON.parse(JSON.stringify(data.comparisonList));
   currentSample = JSON.parse(JSON.stringify(data.currentSample));
   PROJECT = data.PROJECT;
-  // 鎵ц璁$畻鏂规硶
+  // 鎵ц璁$畻鏂规硶銆傛瘡娆¤緭鍏ラ噸缃爣璁帮紝鐢辨湰娆¤皟鐢ㄦ爤鐨勬渶澶栧眰鍐冲畾鏄惁鍥炰紶淇濆瓨
+  hasComputedWrite = false;
   changeInput("", code);
 };
 
@@ -197,7 +201,7 @@
   return !(typeof r === "number" && isNaN(r));
 }
 
-function changeInput(m, code) {
+function changeInput(m, code, isComputed) {
   let str = code.split("-");
   let r = str[1]; //褰撳墠琛�
   let c = str[2]; //褰撳墠鍒�
@@ -451,6 +455,7 @@
                     a[b].v.v = comResult;
                     console.log("error---", error);
                   }
+                  hasComputedWrite = true;
                   break;
                 }
               }
@@ -459,7 +464,9 @@
           // 濡傛灉姝よ绠楃粨鏋滄墍灞炲崟鍏冩牸锛屽悓鏃朵篃鏄彟涓�涓猠xcel鍑芥暟鐨勫弬鏁帮紝閭d箞灏遍渶瑕侀�掑綊杩涜璁$畻
           // 鍙湁绠楀嚭鏈夋晥缁撴灉鎵嶇户缁悜涓嬫父鍏紡浼犻��,閬垮厤鎶婄┖鍊�/NaN 浼犳煋缁欏叾瀹冨崟鍏冩牸
           if (isValidComputedResult(comResult)) {
-            changeInput(comResult, `${id}-${item.r}-${item.c}-${pId}`); //鏀瑰彉鏈�缁堝��
+            // 鏍囪涓鸿绠楀眰锛氬畠鍙兘鏄笅娓稿叕寮忕殑鍙傛暟(isSave 浼氳缃垚 false)锛屼絾鑷韩涔熸槸缁撴灉锛�
+            // 淇濆瓨浜ょ粰鏈�澶栧眰缁熶竴鍥炰紶锛屼腑闂村�间笉浼氳婕忔帀锛屼篃涓嶄細姣忎竴绾ч兘鍙戜竴娆′繚瀛樿姹�
+            changeInput(comResult, `${id}-${item.r}-${item.c}-${pId}`, true); //鏀瑰彉鏈�缁堝��
           }
           currentInsItemId = item.i;
         } catch (error) {
@@ -467,7 +474,10 @@
         }
     }
   });
-  if (index === -1 || (inputType === undefined && isSave === "true")) {
+  if (
+    !isComputed &&
+    (hasComputedWrite || index === -1 || (inputType === undefined && isSave === "true"))
+  ) {
     // 璧嬪�间紶閫掑埌涓荤嚎绋嬬殑鏁版嵁锛宮ethod锛歴aveInsContext琛ㄧず姝ゆ秷鎭渶瑕佷繚瀛樻暟鎹�
     result = {
       method: "saveInsContext",

--
Gitblit v1.9.3