From 614aa1e15c8ca6c5a3152716bd303f0bad01682c Mon Sep 17 00:00:00 2001
From: 快乐的昕的电脑 <快乐的昕的电脑@DESKTOP-C2BQPQU>
Date: 星期六, 11 十月 2025 15:55:09 +0800
Subject: [PATCH] 请求刀具表单数据

---
 components/mold.vue |  129 +++++++++++++++++++++++++++++++++++++-----
 1 files changed, 112 insertions(+), 17 deletions(-)

diff --git a/components/mold.vue b/components/mold.vue
index c75f939..8bf22fd 100644
--- a/components/mold.vue
+++ b/components/mold.vue
@@ -104,6 +104,8 @@
 	export default {
 		data() {
 			return {
+				machineNo: '',//鏈哄彴缂栫爜
+                workOrderNo: '',//宸ュ崟鍙�
 				pageIndex: 1,
 				pageSize: 18,
 				total: 0,
@@ -173,14 +175,86 @@
 			confirmTool() {
 				this.showToolDialog = false;
 			},
-			handleUpTool() {
-				// 涓婂垁鎻愪氦閫昏緫锛岃皟鐢ㄥ悗绔帴鍙�
-				this.$showMessage('涓婂垁鎻愪氦鎴愬姛锛堢ず渚嬶級');
-			},
-			handleDownTool() {
-				// 涓嬪垁鎻愪氦閫昏緫锛岃皟鐢ㄥ悗绔帴鍙�
-				this.$showMessage('涓嬪垁鎻愪氦鎴愬姛锛堢ず渚嬶級');
-			},
+			async handleUpTool() {
+                if (!this.workOrderNo) {
+                    this.$showMessage('宸ュ崟鍙蜂笉鑳戒负绌�');
+                    return;
+                }
+                if (!this.machineNo) {
+                    this.$showMessage('鏈哄彴鍙蜂笉鑳戒负绌�');
+                    return;
+                }
+                if (!this.selectedToolNo) {
+                    this.$showMessage('鍒�鍏风紪鍙蜂笉鑳戒负绌�');
+                    return;
+                }
+                if (!this.useLimitInput) {
+                    this.$showMessage('浣跨敤涓婇檺涓嶈兘涓虹┖');
+                    return;
+				}
+                const useLimit = Number(this.useLimitInput);
+                if (isNaN(useLimit) || useLimit <= 0) {
+                    this.$showMessage('璇疯緭鍏ユ湁鏁堢殑浣跨敤涓婇檺');
+                    return;
+                }
+                const payload = {
+                    workOrderNo: this.workOrderNo,   // 宸ュ崟鍙�
+                    machineNo: this.machineNo,       // 鏈哄彴缂栧彿
+                    toolNo: this.selectedToolNo,     // 鍒�鍏风紪鍙�
+                    type: '涓婂垁',                         // 涓婂垁
+                    useLimit: this.useLimitInput ? Number(this.useLimitInput) : null // 浣跨敤涓婇檺
+                };
+                const res = await this.$post({
+                    url: '/MesCutterLedger/SubmitToolAction',
+                    data: JSON.stringify(payload),
+                    headers: { 'Content-Type': 'application/json' }
+                });
+                if (res.status === 0) {
+                    this.$showMessage('涓婂垁鎻愪氦鎴愬姛');
+                } else {
+                    this.$showMessage(res.message || '涓婂垁鎻愪氦澶辫触');
+                }
+            },
+			async handleDownTool() {
+                if (!this.workOrderNo) {
+                    this.$showMessage('宸ュ崟鍙蜂笉鑳戒负绌�');
+                    return;
+                }
+                if (!this.machineNo) {
+                    this.$showMessage('鏈哄彴鍙蜂笉鑳戒负绌�');
+                    return;
+                }
+                if (!this.selectedToolNo) {
+                    this.$showMessage('鍒�鍏风紪鍙蜂笉鑳戒负绌�');
+                    return;
+                }
+                if (!this.useLimitInput) {
+                    this.$showMessage('浣跨敤涓婇檺涓嶈兘涓虹┖');
+                    return;
+				}
+                const useLimit = Number(this.useLimitInput);
+                if (isNaN(useLimit) || useLimit <= 0) {
+                    this.$showMessage('璇疯緭鍏ユ湁鏁堢殑浣跨敤涓婇檺');
+                    return;
+                }
+                const payload = {
+                    workOrderNo: this.workOrderNo,
+                    machineNo: this.machineNo,
+                    toolNo: this.selectedToolNo,
+                    type: '涓嬪垁', // 涓嬪垁
+                    useLimit: this.useLimitInput ? Number(this.useLimitInput) : null
+                };
+                const res = await this.$post({
+                    url: '/MesCutterLedger/SubmitToolAction',
+                    data: JSON.stringify(payload),
+                    headers: { 'Content-Type': 'application/json' }
+                });
+                if (res.status === 0) {
+                    this.$showMessage('涓嬪垁鎻愪氦鎴愬姛');
+                } else {
+                    this.$showMessage(res.message || '涓嬪垁鎻愪氦澶辫触');
+                }
+            },
 			cancel() {
 				this.selectedToolNo = '';
 				this.toolName = '';
@@ -191,9 +265,28 @@
 				this.$showMessage('浣跨敤涓婇檺宸蹭繚瀛橈紙绀轰緥锛�');
 			}
 		},
+        methods: {
+            async fetchFormData() {
+                const res = await this.$post({
+                    url: '/MesCutterLedger/GetFormData',
+                    data: JSON.stringify({
+                        workOrderNo: this.workOrderNo,
+                        machineNo: this.machineNo
+                    }),
+                    headers: { 'Content-Type': 'application/json' }
+                });
+                if (res.status === 0) {
+                    this.toolRecords = res.data; // 鍋囪鍚庣鐩存帴杩斿洖琛ㄦ牸鏁扮粍
+                } else {
+                    this.$showMessage(res.message || '鑾峰彇琛ㄥ崟鏁版嵁澶辫触');
+                }
+            },
 		mounted() {
 			// 椤甸潰鍔犺浇鏃舵媺鍙栧叏閮ㄥ垁鍏�
-			this.fetchTools('');
+			this.fetchTools('');            
+            this.machineNo = uni.getStorageSync('machineNo') || '';// 璇诲彇鏈湴缂撳瓨鐨勬満鍙扮紪鍙�
+			this.workOrderNo = uni.getStorageSync('daa001') || ''; // 璇诲彇鏈湴缂撳瓨鐨勫伐鍗曠紪鍙�
+            this.fetchFormData(); // 椤甸潰鍔犺浇鏃惰幏鍙栬〃鍗曟暟鎹�
 		}
 	};
 </script>
@@ -293,14 +386,16 @@
 		overflow-y: auto;
 	}
 
-	.tool-btn {
-		margin: 5px 10px 5px 0;
-		padding: 8px 16px;
-		background: #f5f5f5;
-		border: 1px solid #ccc;
-		border-radius: 4px;
-		cursor: pointer;
-	}
+    .tool-btn {
+        margin: 5px 10px 5px 0;
+        padding: 8px 16px;
+        background: #f5f5f5;
+        border: 1px solid #ccc;
+        border-radius: 4px;
+        cursor: pointer;
+        background: #e0e0e0;
+        color: #888;
+    }
 
 	.dialog-actions {
 		display: flex;

--
Gitblit v1.9.3