From 3de8b71ee1c6be3e41b77d6633c3f1a1b66c40f2 Mon Sep 17 00:00:00 2001
From: 张诺 <zhang_12370@163.com>
Date: 星期五, 16 一月 2026 10:59:33 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/dev_天津军泰伟业' into dev_天津军泰伟业

---
 src/views/productionManagement/productStructure/Detail/index.vue |   33 +++++++++++++++++++++++++--------
 1 files changed, 25 insertions(+), 8 deletions(-)

diff --git a/src/views/productionManagement/productStructure/Detail/index.vue b/src/views/productionManagement/productStructure/Detail/index.vue
index b702eb7..75f936e 100644
--- a/src/views/productionManagement/productStructure/Detail/index.vue
+++ b/src/views/productionManagement/productStructure/Detail/index.vue
@@ -2,19 +2,20 @@
   <div class="app-container">
     <PageHeader content="浜у搧缁撴瀯璇︽儏">
       <template #right-button>
-        <el-button v-if="dataValue.isEdit"
+        <el-button v-if="dataValue.isEdit && !isOrderPage"
                    type="primary"
                    @click="addItem">娣诲姞
         </el-button>
-        <el-button v-if="!dataValue.isEdit"
+        <el-button v-if="!dataValue.isEdit && !isOrderPage"
                    type="primary"
                    @click="dataValue.isEdit = true">缂栬緫
         </el-button>
-        <el-button v-if="dataValue.isEdit"
+        <el-button v-if="dataValue.isEdit && !isOrderPage"
                    type="primary"
                    @click="cancelEdit">鍙栨秷
         </el-button>
-        <el-button type="primary"
+        <el-button v-if="!isOrderPage"
+                   type="primary"
                    :loading="dataValue.loading"
                    @click="submit"
                    :disabled="!dataValue.isEdit">纭
@@ -123,7 +124,8 @@
               </el-table-column>
               <el-table-column label="鎿嶄綔" fixed="right" width="100">
                 <template #default="{ row, $index }">
-                  <el-button type="danger"
+                  <el-button v-if="dataValue.isEdit"
+                             type="danger"
                              text
                              @click="dataValue.dataList.splice($index, 1)">鍒犻櫎
                   </el-button>
@@ -154,6 +156,7 @@
   ref,
 } from "vue";
 import { queryList, add } from "@/api/productionManagement/productStructure.js";
+import { listProcessBom } from "@/api/productionManagement/productionOrder.js";
 import { list } from "@/api/productionManagement/productionProcess";
 import { ElMessage } from "element-plus";
 import {useRoute, useRouter} from "vue-router";
@@ -183,6 +186,9 @@
 const routeBomNo = computed(() => route.query.bomNo || '');
 const routeProductName = computed(() => route.query.productName || '');
 const routeProductModelName = computed(() => route.query.productModelName || '');
+const routeOrderId = computed(() => route.query.orderId);
+const pageType = computed(() => route.query.type);
+const isOrderPage = computed(() => pageType.value === 'order' && routeOrderId.value);
 
 const dataValue = reactive({
   dataList: [],
@@ -208,9 +214,15 @@
 };
 
 const fetchData = async () => {
-  const { data } = await queryList(routeId.value);
-  // 浜у搧淇℃伅浠庤矾鐢卞弬鏁拌幏鍙栵紝浼樺厛浣跨敤璺敱鍙傛暟
-  dataValue.dataList = data || [];
+  if (isOrderPage.value) {
+    // 璁㈠崟鎯呭喌锛氫娇鐢ㄨ鍗曠殑浜у搧缁撴瀯鎺ュ彛
+    const { data } = await listProcessBom({ orderId: routeOrderId.value });
+    dataValue.dataList = data || [];
+  } else {
+    // 闈炶鍗曟儏鍐碉細浣跨敤鍘熸潵鐨勬帴鍙�
+    const { data } = await queryList(routeId.value);
+    dataValue.dataList = data || [];
+  }
 };
 
 const fetchProcessOptions = async () => {
@@ -276,6 +288,11 @@
   tableData[0].model = routeProductModelName.value;
   tableData[0].bomNo = routeBomNo.value;
   
+  // 璁㈠崟鎯呭喌涓嬬鐢ㄧ紪杈�
+  if (isOrderPage.value) {
+    dataValue.isEdit = false;
+  }
+  
   fetchData();
   fetchProcessOptions();
 });

--
Gitblit v1.9.3