From cbbd61172fc3701f44cf934c87d7ac0ee32c2a6e Mon Sep 17 00:00:00 2001
From: gaoluyang <2820782392@qq.com>
Date: 星期四, 13 三月 2025 13:45:02 +0800
Subject: [PATCH] 检验任务-添加不合格查看弹框

---
 src/views/business/inspectionTask/index.vue |  110 +++++++++++++++++++++++++++++++++++++------------------
 1 files changed, 74 insertions(+), 36 deletions(-)

diff --git a/src/views/business/inspectionTask/index.vue b/src/views/business/inspectionTask/index.vue
index 2e094e1..515c16e 100644
--- a/src/views/business/inspectionTask/index.vue
+++ b/src/views/business/inspectionTask/index.vue
@@ -181,6 +181,16 @@
     </el-dialog>
     <el-dialog :visible.sync="dataDialogVisible" title="鏁版嵁鏌ョ湅" width="80%">
       <div v-if="dataDialogVisible" style="height: 70vh; overflow-y: auto">
+        <div>
+          <el-form :model="entity" :inline="true">
+            <el-form-item label="妫�楠岄」" prop="outputWorkTime">
+              <el-input v-model="entity.inspectionItem" clearable size="small"></el-input>
+            </el-form-item>
+            <el-form-item>
+              <el-button size="small" type="primary" @click="getLookList">鏌ヨ</el-button>
+            </el-form-item>
+          </el-form>
+        </div>
         <lims-table :tableData="lookTableData" :column="lookColumn" :page="lookPage" :tableLoading="lookTableLoading"
           :height="'60vh'" @pagination="lookPagination" key="tableData1"></lims-table>
       </div>
@@ -196,7 +206,7 @@
           鏂板
         </el-button>
       </div>
-      <el-table :data="bindTableData" style="width: 100%" height="70vh">
+      <el-table :data="bindTableData" style="width: 100%" height="70vh" v-loading="bindTableDataLoading">
         <el-table-column prop="inspectionItemClass" label="妫�楠岄」鍒嗙被" width="150">
         </el-table-column>
         <el-table-column prop="inspectionItem" label="妫�楠岄」" width="150">
@@ -232,7 +242,12 @@
       ref="showInfoDialog"
       :showInfoDialog="showInfoDialog"
     ></ShowInfo> -->
+    <!--淇敼妫�楠屽�煎脊妗�-->
     <edit-inspection-item ref="editInspectionItem"></edit-inspection-item>
+    <!--鏌ョ湅宸ユ椂寮规-->
+    <viewManHourDia ref="viewManHourDia"></viewManHourDia>
+    <!--涓嶅悎鏍煎娴嬫煡鐪嬪脊妗�-->
+    <un-pass-retest-result v-if="retestVisible" :retestInfo="retestInfo" :retestVisible="retestVisible" @closeRetestLook="closeRetestLook"></un-pass-retest-result>
   </div>
 </template>
 
@@ -240,6 +255,8 @@
 import { getYearAndMonthAndDays } from "@/utils/date";
 import EditInspectionItem from "./components/EditInspectionItem.vue";
 import limsTable from "@/components/Table/lims-table.vue";
+import viewManHourDia from "./components/viewManHourDia.vue"
+import UnPassRetestResult from "@/components/rawMaterialInspection/unPassRetestResult.vue"
 import {
   claimInsOrderPlan,
   upPlanUser2,
@@ -253,11 +270,14 @@
   selectSampleAndProductByOrderId,
 } from "@/api/business/inspectionTask.js";
 import { mapGetters } from "vuex";
+import {getRetestResult} from "@/api/business/rawMaterialOrder";
 export default {
   name: 'InspectionTask',
   components: {
     EditInspectionItem,
     limsTable,
+    viewManHourDia,
+    UnPassRetestResult
   },
   dicts: ["urgency_level", "inspection_task_state"],
   computed: {
@@ -268,6 +288,7 @@
       InspectionKey: 1,
       bindDialogVisible: false,
       bindAddDialogVisible: false,
+      bindTableDataLoading: false,
       bindTableData: [],
       bindAddTableData: [],
       chooseBindAddList: [],
@@ -375,6 +396,9 @@
           formatData: (params) => {
             return this.urgencyLevel.find((m) => m.value == params).label;
           },
+          formatType: (params) => {
+            return this.urgencyLevel.find((m) => m.value == params).type;
+          },
         },
         {
           label: "妫�楠岀被鍨�",
@@ -393,8 +417,7 @@
           prop: "insState",
           dataType: "tag",
           formatData: (params) => {
-            return this.inspectionTaskState.find((m) => m.value == params)
-              .label;
+            return this.inspectionTaskState.find((m) => m.value == params).label;
           },
           formatType: (params) => {
             return this.inspectionTaskState.find((m) => m.value == params).type;
@@ -425,9 +448,17 @@
                 this.editInspection(row);
               },
               disabled: (row) => {
-                return (
-                  row.userName == null || row.insState == 3 || row.insState == 5
-                );
+                return (row.userName == null || row.insState == 3 || row.insState == 5) && this.checkPermi(['update:product:onPlan'])
+              },
+            },
+            {
+              name: "鏌ョ湅宸ユ椂",
+              type: "text",
+              clickFun: (row) => {
+                this.viewManHour(row);
+              },
+              showHide: (row) => {
+                return this.checkPermi(['get:working:hours:byOrder'])
               },
             },
             {
@@ -495,6 +526,9 @@
         },
       ],
       // 鏁版嵁鏌ョ湅鐩稿叧瀛楁---寮�濮�
+      entity: {
+        inspectionItem: "",
+      },
       lookTableData: [],
       lookColumn: [
         {
@@ -540,6 +574,16 @@
           label: "鎿嶄綔",
           operation: [
             {
+              name: "涓嶅悎鏍煎娴嬫煡鐪�",
+              type: "text",
+              clickFun: (row) => {
+                this.getRetestResultInfo(row);
+              },
+              disabled: (row) => {
+                return row.insResult!=0
+              },
+            },
+            {
               name: "妫�楠岄」缁戝畾",
               type: "text",
               clickFun: (row) => {
@@ -563,9 +607,10 @@
       },
       lookTableLoading: false,
       // 鏁版嵁鏌ョ湅鐩稿叧瀛楁---缁撴潫
+      retestVisible: false,
     };
   },
-  created() {
+  mounted() {
     this.getAuthorizedPerson();
     this.currentTime = getYearAndMonthAndDays();
     this.getDicts("urgency_level").then((response) => {
@@ -575,8 +620,6 @@
       this.inspectionTaskState = this.dictToValue(response.data);
     });
     this.refreshTable();
-  },
-  mounted() {
     this.queryParams.userId = this.userId;
   },
   activated() {
@@ -606,7 +649,7 @@
     },
     getLookList() {
       this.lookTableLoading = true;
-      let param = { id: this.lookInfo.id, ...this.lookPage };
+      let param = { id: this.lookInfo.id, ...this.lookPage, inspectionItem: this.entity.inspectionItem };
       delete param.total;
       selectSampleAndProductByOrderId({ ...param })
         .then((res) => {
@@ -630,9 +673,9 @@
     editInspection(row) {
       this.$refs.editInspectionItem.showDialog(row.id);
     },
-    // 鍒锋柊椤甸潰
-    refreshView() {
-      this.getList();
+    // 鏌ョ湅宸ユ椂
+    viewManHour(row) {
+      this.$refs.viewManHourDia.showDialog(row.id, row.insState);
     },
     // 鏁版嵁鏌ョ湅
     handleDataLook(row) {
@@ -901,15 +944,21 @@
         this.personList = data;
       });
     },
+    // 鏌ョ湅涓嶅悎鏍煎娴嬬粨鏋�
+    getRetestResultInfo (row) {
+      getRetestResult({insProductId: row.insProductId}).then(res => {
+        this.retestVisible = true
+        this.retestInfo = res.data
+      })
+    },
+    closeRetestLook () {
+      this.retestVisible = false
+    },
     // 缁戝畾妫�楠岄」缁戝畾
     getBinding(row) {
       this.bindCurrentInfo = row;
       getBindingProductByProductId({ productId: row.insProductId })
         .then((res) => {
-          if (res.coe == 201) {
-            // this.$message.error('鏈粦瀹氭楠岄」')
-            return;
-          }
           // console.log(res)
           this.bindTableData = res.data;
           this.bindDialogVisible = true;
@@ -923,10 +972,6 @@
         productId: this.bindCurrentInfo.insProductId,
       })
         .then((res) => {
-          if (res.coe == 201) {
-            // this.$message.error('鏈粦瀹氭楠岄」')
-            return;
-          }
           // console.log(res)
           this.bindAddTableData = res.data;
           this.bindAddDialogVisible = true;
@@ -953,10 +998,6 @@
       })
         .then((res) => {
           this.loading = false;
-          if (res.code == 201) {
-            this.$message.error("缁戝畾澶辫触");
-            return;
-          }
           this.$message.success("缁戝畾鎴愬姛");
           this.bindAddDialogVisible = false;
           this.getBinding(this.bindCurrentInfo);
@@ -971,17 +1012,14 @@
         cancelButtonText: "鍙栨秷",
         type: "warning",
       }).then(async () => {
-        delProductTreeByProductId({ productId: row.id })
-          .then((res) => {
-            if (res.coe == 201) {
-              // this.$message.error('鏈粦瀹氭楠岄」')
-              return;
-            }
-            this.getBinding(this.bindCurrentInfo);
-          })
-          .catch((error) => {
-            console.error(error);
-          });
+        this.bindTableDataLoading = true
+        delProductTreeByProductId({ productId: row.id }).then((res) => {
+          this.bindTableDataLoading = false
+          this.getBinding(this.bindCurrentInfo);
+        }).catch((error) => {
+          this.bindTableDataLoading = false
+          console.error(error);
+        });
       });
     },
   },

--
Gitblit v1.9.3