From 7d57f73dbd1fb5ffa5f4303e06d42a9a68b5323b Mon Sep 17 00:00:00 2001
From: huminmin <mac@MacBook-Pro.local>
Date: 星期一, 05 一月 2026 09:34:45 +0800
Subject: [PATCH] 生产订单-工艺路线

---
 src/views/productionManagement/productionOrder/index.vue |  158 +++++++++++++++++++++++++++++++---------------------
 1 files changed, 93 insertions(+), 65 deletions(-)

diff --git a/src/views/productionManagement/productionOrder/index.vue b/src/views/productionManagement/productionOrder/index.vue
index 9928d46..e26efa8 100644
--- a/src/views/productionManagement/productionOrder/index.vue
+++ b/src/views/productionManagement/productionOrder/index.vue
@@ -10,6 +10,17 @@
 					@change="handleQuery"
 					clearable
 					prefix-icon="Search"
+          class="mb10"
+				/>
+				<span class="search_title ml10">鍚堝悓鍙凤細</span>
+				<el-input
+					v-model="searchForm.salesContractNo"
+					style="width: 240px"
+					placeholder="璇疯緭鍏�"
+					@change="handleQuery"
+					clearable
+					prefix-icon="Search"
+          class="mb10"
 				/>
 				<span class="search_title ml10">椤圭洰鍚嶇О锛�</span>
 				<el-input
@@ -19,11 +30,30 @@
 					@change="handleQuery"
 					clearable
 					prefix-icon="Search"
+          class="mb10"
 				/>
-				<span class="search_title ml10">褰曞叆鏃ユ湡锛�</span>
-				<el-date-picker v-model="searchForm.entryDate" value-format="YYYY-MM-DD" format="YYYY-MM-DD" type="daterange"
-												placeholder="璇烽�夋嫨" clearable @change="changeDaterange" />
-				<el-button type="primary" @click="handleQuery" style="margin-left: 10px"
+        <span class="search_title ml10">浜у搧鍚嶇О锛�</span>
+        <el-input
+            v-model="searchForm.productCategory"
+            style="width: 240px"
+            placeholder="璇疯緭鍏�"
+            @change="handleQuery"
+            clearable
+            prefix-icon="Search"
+            class="mb10"
+        />
+        <span class="search_title ml10">瑙勬牸锛�</span>
+        <el-input
+            v-model="searchForm.specificationModel"
+            style="width: 240px"
+            placeholder="璇疯緭鍏�"
+            @change="handleQuery"
+            clearable
+            prefix-icon="Search"
+            class="mb10"
+        />
+
+				<el-button type="primary" @click="handleQuery" style="margin-left: 10px" class="mb10"
 				>鎼滅储</el-button
 				>
 			</div>
@@ -41,6 +71,13 @@
 				@pagination="pagination"
 			></PIMTable>
 		</div>
+
+    <process-route-item-form
+      v-if="isShowItemModal"
+      v-model:visible="isShowItemModal"
+      :record="record"
+      @completed="getList"
+    />
 	</div>
 </template>
 
@@ -48,78 +85,57 @@
 import {onMounted, ref} from "vue";
 import { ElMessageBox } from "element-plus";
 import dayjs from "dayjs";
-import {schedulingListPage} from "@/api/productionManagement/productionOrder.js";
+import {productOrderListPage} from "@/api/productionManagement/productionOrder.js";
 const { proxy } = getCurrentInstance();
+import ProcessRouteItemForm from "@/views/productionManagement/productionOrder/ProcessRouteItemForm.vue";
 
 const tableColumn = ref([
 	{
-		label: "褰曞叆鏃ユ湡",
-		prop: "entryDate",
+		label: "鐢熶骇璁㈠崟鍙�",
+		prop: "npsNo",
 		width: 120,
 	},
 	{
-		label: "鍚堝悓鍙�",
+		label: "閿�鍞悎鍚屽彿",
 		prop: "salesContractNo",
 		width: 220,
 	},
-	{
-		label: "瀹㈡埛鍚堝悓鍙�",
-		prop: "customerContractNo",
-		width: 250,
-	},
+  {
+    label: "椤圭洰鍚嶇О",
+    prop: "projectName",
+    width:300
+  },
 	{
 		label: "瀹㈡埛鍚嶇О",
 		prop: "customerName",
 		width: 250,
 	},
-	{
-		label: "椤圭洰鍚嶇О",
-		prop: "projectName",
-		width:300
-	},
-	{
-		label: "浠樻鐘舵��",
-		prop: "status",
-		dataType: "tag",
-		formatType: (params) => {
-			if (params == '鏈畬鎴�') {
-				return "danger";
-			} else if (params == '宸插畬鎴�') {
-				return "success";
-			} else {
-				return null;
-			}
-		},
-	},
-	{
-		label: "浜у搧澶х被",
-		prop: "productCategory",
-		width: 160,
-	},
-	{
-		label: "瑙勬牸鍨嬪彿",
-		prop: "specificationModel",
-		width: 220,
-	},
-	{
-		label: "鍗曚綅",
-		prop: "unit",
-		width:90
-	},
-	{
-		label: "鏁伴噺",
-		prop: "quantity",
-	},
-	{
-		label: "鎺掍骇鏁伴噺",
-		prop: "schedulingNum",
-		width: 100,
-	},
-	{
-		label: "瀹屽伐鏁伴噺",
-		prop: "successNum",
-		width: 100,
-	},
+  {
+    label: "浜у搧鍚嶇О",
+    prop: "productCategory",
+    width: 250,
+  },
+  {
+    label: "瑙勬牸",
+    prop: "specificationModel",
+    width: 250,
+  },
+  {
+    dataType: "action",
+    label: "鎿嶄綔",
+    align: "center",
+    fixed: "right",
+    width: 200,
+    operation: [
+      {
+        name: "宸ヨ壓璺嚎",
+        type: "text",
+        clickFun: (row) => {
+          showRouteItemModal(row);
+        }
+      }
+    ]
+  }
 ]);
 const tableData = ref([]);
 const tableLoading = ref(false);
@@ -132,10 +148,12 @@
 const data = reactive({
 	searchForm: {
 		customerName: "",
+		salesContractNo: "",
 		projectName: "",
-		entryDate: null, // 褰曞叆鏃ユ湡
-		entryDateStart: undefined,
-		entryDateEnd: undefined,
+		status: "",
+		entryDate: [dayjs().format("YYYY-MM-DD"), dayjs().format("YYYY-MM-DD")], // 褰曞叆鏃ユ湡锛岄粯璁ゅ綋澶�
+		entryDateStart: dayjs().format("YYYY-MM-DD"),
+		entryDateEnd: dayjs().format("YYYY-MM-DD"),
 	},
 });
 const { searchForm } = toRefs(data);
@@ -166,13 +184,20 @@
 	// 鏋勯�犱竴涓柊鐨勫璞★紝涓嶅寘鍚玡ntryDate瀛楁
 	const params = { ...searchForm.value, ...page };
 	params.entryDate = undefined
-	schedulingListPage(params).then((res) => {
+	productOrderListPage(params).then((res) => {
 		tableLoading.value = false;
 		tableData.value = res.data.records;
 		page.total = res.data.total;
 	}).catch(() => {
 		tableLoading.value = false;
 	})
+};
+
+const isShowItemModal = ref(false);
+const record = ref({});
+const showRouteItemModal = (row) => {
+  isShowItemModal.value = true
+  record.value = row
 };
 
 // 瀵煎嚭
@@ -190,6 +215,9 @@
 		});
 };
 
+const handleConfirmRoute = () => {
+}
+
 onMounted(() => {
 	getList();
 });

--
Gitblit v1.9.3