From 9f571972ce45d45facd8ca667376e2d4c99da3af Mon Sep 17 00:00:00 2001
From: spring <2396852758@qq.com>
Date: 星期一, 07 四月 2025 13:22:06 +0800
Subject: [PATCH] 原辅料下单修改

---
 src/views/structural/capabilityAndLaboratory/capability/index.vue |  126 ++++++++++++++++++++++++++++-------------
 1 files changed, 86 insertions(+), 40 deletions(-)

diff --git a/src/views/structural/capabilityAndLaboratory/capability/index.vue b/src/views/structural/capabilityAndLaboratory/capability/index.vue
index ea3b1cd..f184385 100644
--- a/src/views/structural/capabilityAndLaboratory/capability/index.vue
+++ b/src/views/structural/capabilityAndLaboratory/capability/index.vue
@@ -126,7 +126,7 @@
 import {
   addProduct,
   delItemParameter, delProduct, delTestObject, selectItemParameterList, selectProductListByObjectId,
-  selectTestObjectList, upProduct, updateWorkShop
+  selectTestObjectList, upProduct, updateWorkShop, updateObjectWorkShop
 } from "@/api/structural/capability";
 import limsTable from "@/components/Table/lims-table.vue";
 import EditForm from "@/views/structural/capabilityAndLaboratory/capabilityComponents/EditForm.vue";
@@ -155,13 +155,13 @@
         { label: '璇曢獙瀹�', prop: 'sonLaboratory' },
         { label: '瑕佹眰鎻忚堪', prop: 'askTell' },
         { label: '瑕佹眰鍊�', prop: 'ask' },
+        // { label: '璇曢獙鏉′欢', prop: 'radiusList' },
         { label: '璁¢噺鍗曚綅', prop: 'unit' },
         { label: '宸ユ椂(H)', prop: 'manHour' },
         { label: '棰勮鏃堕棿(H)', prop: 'manDay' },
         { label: '宸ユ椂鍒嗙粍', prop: 'manHourGroup' },
         { label: '鍒涘缓鏃堕棿', prop: 'createTime' },
         { label: '淇敼鏃堕棿', prop: 'updateTime' },
-        { label: '鏉′欢', prop: 'radiusList' },
         {
           dataType: 'action',
           fixed: 'right',
@@ -244,6 +244,7 @@
             }
           },
         },
+        { label: '杞﹂棿鍚嶇О', prop: 'workShopName' },
         { label: '鍒涘缓浜�', prop: 'createUserName' },
         { label: '鏇存柊浜�', prop: 'updateUserName' },
         { label: '鍒涘缓鏃堕棿', prop: 'createTime' },
@@ -281,6 +282,19 @@
               clickFun: (row) => {
                 this.bindPartFirst(row);
               },
+              disabled: (row) => {
+                return row.product
+              }
+            },
+            {
+              name: '杞﹂棿缁戝畾',
+              type: 'text',
+              clickFun: (row) => {
+                this.bindWokshop1(row);
+              },
+              disabled: (row) => {
+                return row.objectType != '鍘熻緟鏉�' && row.objectType != '鍖呮潗'
+              }
             },
           ]
         }
@@ -304,7 +318,7 @@
       productColumn: [
         { label: '浜у搧鍚嶇О', prop: 'name' },
         { label: '浜у搧鍚嶇ОEN', prop: 'nameEn' },
-        { label: '杞﹂棿鍚嶇О', prop: 'workShopName' },
+        // { label: '杞﹂棿鍚嶇О', prop: 'workShopName' },
         {
           dataType: 'action',
           label: '鎿嶄綔',
@@ -330,20 +344,20 @@
                 this.bindPartSecond(row);
               },
             },
-            {
-              name: '杞﹂棿缁戝畾',
-              type: 'text',
-              clickFun: (row) => {
-                this.bindWokshop(row);
-              },
-              showHide: (row) => {
-                if (this.currentObj.objectType != '鍘熸潗鏂�') {
-                  return false
-                } else {
-                  return true
-                }
-              }
-            },
+            // {
+            //   name: '杞﹂棿缁戝畾',
+            //   type: 'text',
+            //   clickFun: (row) => {
+            //     this.bindWokshop(row);
+            //   },
+            //   showHide: (row) => {
+            //     if (this.currentObj.objectType != '鍘熻緟鏉�' && row.objectType != '鍖呮潗') {
+            //       return false
+            //     } else {
+            //       return true
+            //     }
+            //   }
+            // },
             // {
             //   name: '鍘傚瀵嗗害缁戝畾',
             //   type: 'text',
@@ -503,6 +517,11 @@
       }
     },
     refresh() {
+      this.itemParameterForm = {
+        inspectionItem: null,
+        inspectionItemSubclass: null,
+        sample: null
+      }
       this.resetForm('itemParameterForm')
       this.page.current = 1
       this.refreshTable()
@@ -570,15 +589,15 @@
     // 浜у搧缁存姢
     upProduct(row) {
       this.currentObj = row;
-      if (this.currentObj.objectType == '鍘熸潗鏂�') {
-        if (this.productColumn.length < 4) {
-          this.productColumn.splice(2, 0, { label: '杞﹂棿鍚嶇О', prop: 'workShopName' })
-        }
-      } else {
-        if (this.productColumn.length == 4) {
-          this.productColumn.splice(2, 1)
-        }
-      }
+      // if (this.currentObj.objectType == '鍘熻緟鏉�') {
+      //   if (this.productColumn.length < 4) {
+      //     this.productColumn.splice(2, 0, { label: '杞﹂棿鍚嶇О', prop: 'workShopName' })
+      //   }
+      // } else {
+      //   if (this.productColumn.length == 4) {
+      //     this.productColumn.splice(2, 1)
+      //   }
+      // }
       this.diaProduct = true
       this.objectId = row.id
       this.productPage.current = 1
@@ -674,9 +693,17 @@
     bindPartSecond(row) {
       this.bindPart(row, 1)
     },
+    // 浜у搧-杞﹂棿缁戝畾
     bindWokshop(row) {
       this.workshopForm.workShopId = row.workShopId
       this.currentProduct = row;
+      this.workshopVisible = true
+    },
+    // 瀵硅薄-杞﹂棿缁戝畾
+    bindWokshop1(row) {
+      this.$set(this.workshopForm, 'workShopId', row.workShopId)
+      this.currentProduct = {};
+      this.currentObj = row;
       this.workshopVisible = true
     },
     // 鍘傚瀵嗗害缁戝畾
@@ -720,20 +747,39 @@
       this.$refs['workshopForm'].validate((valid) => {
         if (valid) {
           this.uploading = true
-          updateWorkShop({
-            id: this.currentProduct.id,
-            workShopId: this.workshopForm.workShopId,
-            name: this.workshopList.find(m => m.id == this.workshopForm.workShopId).name
-          }).then(res => {
-            this.uploading = false
-            if (res.code === 200) {
-              this.$message.success('鏂板鎴愬姛')
-              this.getProductList();
-              this.workshopVisible = false
-            }
-          }).catch(err => {
-            this.uploading = false
-          })
+          if (this.currentProduct.id) {
+            // 浜у搧缁戝畾杞﹂棿
+            updateWorkShop({
+              id: this.currentProduct.id ? this.currentProduct.id : null,
+              workShopId: this.workshopForm.workShopId,
+              workShopName: this.workshopList.find(m => m.id == this.workshopForm.workShopId).name,
+            }).then(res => {
+              this.uploading = false
+              if (res.code === 200) {
+                this.$message.success('缁戝畾鎴愬姛')
+                this.getProductList();
+                this.workshopVisible = false
+              }
+            }).catch(err => {
+              this.uploading = false
+            })
+          } else {
+            // 瀵硅薄缁戝畾杞﹂棿
+            updateObjectWorkShop({
+              id: this.currentObj.id ? this.currentObj.id : null,
+              workShopId: this.workshopForm.workShopId,
+              workShopName: this.workshopList.find(m => m.id == this.workshopForm.workShopId).name,
+            }).then(res => {
+              this.uploading = false
+              if (res.code === 200) {
+                this.$message.success('缁戝畾鎴愬姛')
+                this.refreshTable()
+                this.workshopVisible = false
+              }
+            }).catch(err => {
+              this.uploading = false
+            })
+          }
         }
       })
     }

--
Gitblit v1.9.3