From a197a3ef35867da9859453831756d29365c961f6 Mon Sep 17 00:00:00 2001
From: huminmin <mac@MacBook-Pro.local>
Date: 星期二, 31 三月 2026 17:37:02 +0800
Subject: [PATCH] 显示料号

---
 src/views/productionManagement/processRoute/index.vue                    |    5 ++
 src/views/basicData/product/ProductSelectDialog.vue                      |    1 
 src/views/productionManagement/workOrder/index.vue                       |    8 ++++
 src/views/productionManagement/processRoute/processRouteItem/index.vue   |   11 +++++
 src/views/productionManagement/productionCosting/index.vue               |    5 ++
 src/views/productionManagement/productionOrder/Detail/index.vue          |    2 +
 src/views/productionManagement/productionReporting/Input.vue             |    4 ++
 src/views/productionManagement/productStructure/index.vue                |    6 +++
 src/views/productionManagement/productStructure/Detail/index.vue         |   12 +++++
 src/views/productionManagement/productionOrder/New.vue                   |   10 +++++
 src/views/productionManagement/productionReporting/index.vue             |    5 ++
 src/views/productionManagement/productionReporting/components/Detail.vue |    1 
 src/views/productionManagement/productionOrder/index.vue                 |    8 ++++
 13 files changed, 77 insertions(+), 1 deletions(-)

diff --git a/src/views/basicData/product/ProductSelectDialog.vue b/src/views/basicData/product/ProductSelectDialog.vue
index 70dbb16..f160671 100644
--- a/src/views/basicData/product/ProductSelectDialog.vue
+++ b/src/views/basicData/product/ProductSelectDialog.vue
@@ -23,6 +23,7 @@
       <el-table-column prop="productName" label="浜у搧澶х被" min-width="160" />
       <el-table-column prop="model" label="鍨嬪彿鍚嶇О" min-width="200" />
       <el-table-column prop="unit" label="鍗曚綅" min-width="160" />
+      <el-table-column prop="materialCode" label="鏂欏彿" min-width="100" />
     </el-table>
 
     <div class="mt-3 flex justify-end">
diff --git a/src/views/productionManagement/processRoute/index.vue b/src/views/productionManagement/processRoute/index.vue
index 41103f9..f4b7e3a 100644
--- a/src/views/productionManagement/processRoute/index.vue
+++ b/src/views/productionManagement/processRoute/index.vue
@@ -80,6 +80,10 @@
     prop: "model",
   },
   {
+    label: "鏂欏彿",
+    prop: "materialCode",
+  },
+  {
     label: "BOM缂栧彿",
     prop: "bomNo",
   },
@@ -174,6 +178,7 @@
       processRouteCode: row.processRouteCode || '',
       productName: row.productName || '',
       model: row.model || '',
+      materialCode: row.materialCode || '',
       bomNo: row.bomNo || '',
       description: row.description || '',
       type: 'route',
diff --git a/src/views/productionManagement/processRoute/processRouteItem/index.vue b/src/views/productionManagement/processRoute/processRouteItem/index.vue
index 3aecfa0..19e2165 100644
--- a/src/views/productionManagement/processRoute/processRouteItem/index.vue
+++ b/src/views/productionManagement/processRoute/processRouteItem/index.vue
@@ -31,6 +31,14 @@
         </div>
         <div class="info-item">
           <div class="info-label-wrapper">
+            <span class="info-label">鏂欏彿</span>
+          </div>
+          <div class="info-value-wrapper">
+            <span class="info-value">{{ routeInfo.materialCode || '-' }}</span>
+          </div>
+        </div>
+        <div class="info-item">
+          <div class="info-label-wrapper">
             <span class="info-label">BOM缂栧彿</span>
           </div>
           <div class="info-value-wrapper">
@@ -81,6 +89,7 @@
       </el-table-column>
       <el-table-column label="浜у搧鍚嶇О" prop="productName" min-width="160" />
       <el-table-column label="瑙勬牸鍚嶇О" prop="model" min-width="140" />
+      <el-table-column label="鏂欏彿" prop="materialCode" min-width="140" />
       <el-table-column label="鍗曚綅" prop="unit" width="100" />
       <el-table-column label="鏄惁璐ㄦ" prop="isQuality" width="100">
         <template #default="scope">
@@ -246,6 +255,7 @@
   processRouteCode: '',
   productName: '',
   model: '',
+  materialCode: '',
   bomNo: '',
   description: ''
 });
@@ -328,6 +338,7 @@
     processRouteCode: route.query.processRouteCode || '',
     productName: route.query.productName || '',
     model: route.query.model || '',
+    materialCode: route.query.materialCode || '',
     bomNo: route.query.bomNo || '',
     description: route.query.description || ''
   };
diff --git a/src/views/productionManagement/productStructure/Detail/index.vue b/src/views/productionManagement/productStructure/Detail/index.vue
index 6734830..d969b93 100644
--- a/src/views/productionManagement/productStructure/Detail/index.vue
+++ b/src/views/productionManagement/productStructure/Detail/index.vue
@@ -53,6 +53,8 @@
                   </el-form-item>
                 </template>
               </el-table-column>
+              <el-table-column prop="materialCode"
+                               label="鏂欏彿" />
               <el-table-column prop="processName"
                                label="娑堣�楀伐搴�">
                 <template #default="{ row, $index }">
@@ -145,6 +147,8 @@
                        prop="productName" />
       <el-table-column label="瑙勬牸鍨嬪彿"
                        prop="model" />
+      <el-table-column label="鏂欏彿"
+                       prop="materialCode" />
     </el-table>
     <product-select-dialog v-if="dataValue.showProductDialog"
                            v-model:model-value="dataValue.showProductDialog"
@@ -195,6 +199,7 @@
   const routeProductModelName = computed(
     () => route.query.productModelName || ""
   );
+  const routeMaterialCode = computed(() => route.query.materialCode || "");
   const routeOrderId = computed(() => route.query.orderId);
   const pageType = computed(() => route.query.type);
   const isOrderPage = computed(
@@ -216,6 +221,7 @@
     {
       productName: "",
       model: "",
+      materialCode: "",
       bomNo: "",
     },
   ]);
@@ -270,7 +276,8 @@
     if (isTopLevel) {
       if (
         productData.productName === tableData[0].productName &&
-        productData.model === tableData[0].model
+        productData.model === tableData[0].model &&
+        productData.materialCode === tableData[0].materialCode
       ) {
         //  鏌ユ壘鏄惁宸茬粡鏈夊叾浠栭《灞傝宸茬粡鏄繖涓骇鍝�
         const hasOther = dataValue.dataList.some(
@@ -294,6 +301,7 @@
       if (item.tempId === dataValue.currentRowName) {
         item.productName = productData.productName;
         item.model = productData.model;
+        item.materialCode = productData.materialCode;
         item.productModelId = productData.id;
         item.unit = productData.unit || "";
         return;
@@ -306,6 +314,7 @@
     if (item.tempId === tempId) {
       item.productName = productData.productName;
       item.model = productData.model;
+      item.materialCode = productData.materialCode;
       item.productModelId = productData.id;
       item.unit = productData.unit || "";
       return true;
@@ -507,6 +516,7 @@
     // 浠庤矾鐢卞弬鏁板洖鏄炬暟鎹�
     tableData[0].productName = routeProductName.value as string;
     tableData[0].model = routeProductModelName.value as string;
+    tableData[0].materialCode = routeMaterialCode.value as string;
     tableData[0].bomNo = routeBomNo.value as string;
 
     // 璁㈠崟鎯呭喌涓嬬鐢ㄧ紪杈�
diff --git a/src/views/productionManagement/productStructure/index.vue b/src/views/productionManagement/productStructure/index.vue
index 1ae3f77..230f90e 100644
--- a/src/views/productionManagement/productStructure/index.vue
+++ b/src/views/productionManagement/productStructure/index.vue
@@ -83,6 +83,11 @@
     minWidth: 140
   },
   {
+    label: "鏂欏彿",
+    prop: "materialCode",
+    minWidth: 100
+  },
+  {
     label: "鐗堟湰鍙�",
     prop: "version",
     width: 100
@@ -422,6 +427,7 @@
       id: row.id,
       bomNo: row.bomNo || '',
       productName: row.productName || '',
+      materialCode: row.materialCode || '',
       productModelName: row.productModelName || ''
     }
   });
diff --git a/src/views/productionManagement/productionCosting/index.vue b/src/views/productionManagement/productionCosting/index.vue
index 8e1d40b..153dd8d 100644
--- a/src/views/productionManagement/productionCosting/index.vue
+++ b/src/views/productionManagement/productionCosting/index.vue
@@ -102,6 +102,11 @@
 		prop: "productModelName",
     minWidth: 100,
 	},
+  {
+    label: "鏂欏彿",
+    prop: "materialCode",
+    minWidth: 100,
+  },
 	{
 		label: "鍗曚綅",
 		prop: "unit",
diff --git a/src/views/productionManagement/productionOrder/Detail/index.vue b/src/views/productionManagement/productionOrder/Detail/index.vue
index f66115e..60b1811 100644
--- a/src/views/productionManagement/productionOrder/Detail/index.vue
+++ b/src/views/productionManagement/productionOrder/Detail/index.vue
@@ -11,6 +11,7 @@
           <span class="mr12">鐢熶骇鎵瑰彿锛歿{ header.lotNo || "-" }}</span>
           <span class="mr12">浜у搧鍚嶇О锛歿{ header.productCategory || "-" }}</span>
           <span class="mr12">瑙勬牸锛歿{ header.specificationModel || "-" }}</span>
+          <span class="mr12">鏂欏彿锛歿{ header.materialCode || "-" }}</span>
         </div>
       </div>
     </el-card>
@@ -204,6 +205,7 @@
   lotNo: route.query.lotNo,
   productCategory: route.query.productCategory,
   specificationModel: route.query.specificationModel,
+  materialCode: route.query.materialCode,
 }));
 
 // 宸ュ簭鏁版嵁锛堟帴鍙f浛鎹級
diff --git a/src/views/productionManagement/productionOrder/New.vue b/src/views/productionManagement/productionOrder/New.vue
index 3f8a2e5..f6f13f9 100644
--- a/src/views/productionManagement/productionOrder/New.vue
+++ b/src/views/productionManagement/productionOrder/New.vue
@@ -31,6 +31,13 @@
         </el-form-item>
 
         <el-form-item
+            label="鏂欏彿"
+            prop="materialCode"
+        >
+          <el-input v-model="formState.materialCode"  disabled />
+        </el-form-item>
+
+        <el-form-item
             label="鍗曚綅"
             prop="unit"
         >
@@ -128,6 +135,7 @@
   routeId: undefined,
   productName: "",
   productModelName: "",
+  materialCode: "",
   unit: "",
   priority: undefined,
   quantity: 0,
@@ -161,6 +169,7 @@
     productName: "",
     productModelName: "",
     unit: "",
+    materialCode: "",
     priority: priority_type.value && priority_type.value.length > 0 ? priority_type.value[2].value : undefined,
     quantity: '',
     lotNo: "",
@@ -177,6 +186,7 @@
     formState.value.productModelName = product.model;
     formState.value.productModelId = product.id;
     formState.value.unit = product.unit;
+    formState.value.materialCode = product.materialCode || "";
     showProductSelectDialog.value = false;
     fetchRouteOptions( product.id);
     // 瑙﹀彂琛ㄥ崟楠岃瘉鏇存柊
diff --git a/src/views/productionManagement/productionOrder/index.vue b/src/views/productionManagement/productionOrder/index.vue
index 7018d63..0645b4e 100644
--- a/src/views/productionManagement/productionOrder/index.vue
+++ b/src/views/productionManagement/productionOrder/index.vue
@@ -168,6 +168,11 @@
       width: '120px',
     },
     {
+      label: "鏂欏彿",
+      prop: "materialCode",
+      width: '120px',
+    },
+    {
       label: "宸ヨ壓璺嚎缂栧彿",
       prop: "processRouteCode",
       width: '200px',
@@ -399,6 +404,7 @@
           processRouteCode: data.processRouteCode || "",
           productName: data.productName || "",
           model: data.model || "",
+          materialCode: data.materialCode || "",
           bomNo: data.bomNo || "",
           description: data.description || "",
           orderId,
@@ -419,6 +425,7 @@
         bomNo: row.bomNo || "",
         productName: row.productCategory || "",
         productModelName: row.specificationModel || "",
+        materialCode: row.materialCode || "",
         orderId: row.id,
         type: "order",
       },
@@ -435,6 +442,7 @@
         lotNo: row.lotNo || "",
         productCategory: row.productCategory || "",
         specificationModel: row.specificationModel || "",
+        materialCode: row.materialCode || "",
       },
     });
   };
diff --git a/src/views/productionManagement/productionReporting/Input.vue b/src/views/productionManagement/productionReporting/Input.vue
index 3ba68f7..14fafb4 100644
--- a/src/views/productionManagement/productionReporting/Input.vue
+++ b/src/views/productionManagement/productionReporting/Input.vue
@@ -67,6 +67,10 @@
     prop: 'model',
   },
   {
+    label: '鎶曞叆鏂欏彿',
+    prop: 'materialCode',
+  },
+  {
     label: '鎶曞叆鏁伴噺',
     prop: 'quantity',
   },
diff --git a/src/views/productionManagement/productionReporting/components/Detail.vue b/src/views/productionManagement/productionReporting/components/Detail.vue
index f4d964e..cd4f4a9 100644
--- a/src/views/productionManagement/productionReporting/components/Detail.vue
+++ b/src/views/productionManagement/productionReporting/components/Detail.vue
@@ -56,6 +56,7 @@
       <el-descriptions-item label="宸ュ崟缂栧彿">{{ row.workOrderNo || '-' }}</el-descriptions-item>
       <el-descriptions-item label="浜у搧鍚嶇О">{{ row.productName || '-' }}</el-descriptions-item>
       <el-descriptions-item label="浜у搧瑙勬牸鍨嬪彿">{{ row.productModelName || '-' }}</el-descriptions-item>
+      <el-descriptions-item label="鏂欏彿">{{ row.materialCode || '-' }}</el-descriptions-item>
       <el-descriptions-item label="浜у嚭鏁伴噺">{{ row.quantity  || '-' }}</el-descriptions-item>
       <el-descriptions-item label="鎶ュ簾鏁伴噺">{{ row.scrapQty || '-' }}</el-descriptions-item>
       <el-descriptions-item label="鍗曚綅">{{ row.unit || '-' }}</el-descriptions-item>
diff --git a/src/views/productionManagement/productionReporting/index.vue b/src/views/productionManagement/productionReporting/index.vue
index 5c019b8..a639831 100644
--- a/src/views/productionManagement/productionReporting/index.vue
+++ b/src/views/productionManagement/productionReporting/index.vue
@@ -231,6 +231,11 @@
     width: 120,
   },
   {
+    label: "鏂欏彿",
+    prop: "materialCode",
+    width: 120,
+  },
+  {
     label: "浜у嚭鏁伴噺",
     prop: "quantity",
     width: 120,
diff --git a/src/views/productionManagement/workOrder/index.vue b/src/views/productionManagement/workOrder/index.vue
index b6c4300..e30c54f 100644
--- a/src/views/productionManagement/workOrder/index.vue
+++ b/src/views/productionManagement/workOrder/index.vue
@@ -110,6 +110,10 @@
               <span class="info-label">浜у搧瑙勬牸</span>
               <span class="info-value">{{ transferCardRowData.model }}</span>
             </div>
+            <div class="info-item">
+              <span class="info-label">鏂欏彿</span>
+              <span class="info-value">{{ transferCardRowData.materialCode }}</span>
+            </div>
             <!-- <div class="info-item">
               <span class="info-label">宸ュ崟鐘舵��</span>
               <span class="info-value">{{ 
@@ -330,6 +334,10 @@
     prop: "model",
   },
   {
+    label: "鏂欏彿",
+    prop: "materialCode",
+  },
+  {
     label: "鍗曚綅",
     prop: "unit",
   },

--
Gitblit v1.9.3