From 0669178888d76d4d2a4c54458f1762202283f83f Mon Sep 17 00:00:00 2001
From: 快乐的昕的电脑 <快乐的昕的电脑@DESKTOP-C2BQPQU>
Date: 星期一, 13 十月 2025 15:43:54 +0800
Subject: [PATCH] 表格逻辑修改
---
components/mold.vue | 181 +++++++++++++++++++++++++++++++++++++++------
1 files changed, 157 insertions(+), 24 deletions(-)
diff --git a/components/mold.vue b/components/mold.vue
index c75f939..9d93262 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,28 +175,157 @@
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 = '';
this.toolModel = '';
},
- setUseLimit() {
- // 淇濆瓨浣跨敤涓婇檺閫昏緫锛屽疄闄呭簲璋冪敤鍚庣鎺ュ彛
- this.$showMessage('浣跨敤涓婇檺宸蹭繚瀛橈紙绀轰緥锛�');
- }
+ async fetchFormData() {
+ // 纭繚宸ュ崟鍙峰拰鏈哄彴鍙蜂笉涓虹┖
+ if (!this.workOrderNo || !this.machineNo) {
+ console.warn('宸ュ崟鍙锋垨鏈哄彴鍙蜂负绌猴紝璺宠繃鑾峰彇琛ㄥ崟鏁版嵁');
+ return;
+ }
+
+ const payload = {
+ workOrderNo: this.workOrderNo.trim(),
+ machineNo: this.machineNo.trim()
+ };
+
+ try {
+ const res = await this.$post({
+ url: '/MesCutterLedger/GetFormData',
+ data: JSON.stringify(payload),
+ headers: { 'Content-Type': 'application/json' }
+ });
+
+ if (res.status === 0) {
+ // 灏嗗悗绔繑鍥炵殑鏁版嵁鏄犲皠鍒板墠绔〃鏍肩粨鏋�
+ this.toolRecords = res.data.map(item => ({
+ id: item.CUTTER_ID, // 浣跨敤鍒�鍏风紪鍙蜂綔涓篒D
+ no: item.CUTTER_ID,
+ name: item.CUTTER_NAME,
+ upTime: item.UP_TIME ? this.formatDateTime(item.UP_TIME) : '',
+ upCount: item.UP_COUNT || 0,
+ downTime: item.DOWN_TIME ? this.formatDateTime(item.DOWN_TIME) : '',
+ downCount: item.DOWN_COUNT || 0,
+ useCount: item.USE_COUNT || 0,
+ useLimit: item.USE_LIMIT || 0,
+ lifePercent: item.LIFE_PERCENT ? `${item.LIFE_PERCENT}%` : '0%',
+ lifeWarn: item.LIFE_WARN ? `${item.LIFE_WARN}%` : '90%',
+ warnStatus: this.getWarnStatus(item.LIFE_PERCENT, item.LIFE_WARN)
+ }));
+ } else {
+ this.$showMessage(res.message || '鑾峰彇琛ㄥ崟鏁版嵁澶辫触');
+ }
+ } catch (error) {
+ console.error('鑾峰彇琛ㄥ崟鏁版嵁閿欒:', error);
+ this.$showMessage('鑾峰彇鏁版嵁澶辫触锛岃妫�鏌ョ綉缁滆繛鎺�');
+ }
+ },
+ // 娣诲姞杈呭姪鏂规硶
+ formatDateTime(dateTimeStr) {
+ if (!dateTimeStr) return '';
+ // 鏍规嵁鍚庣杩斿洖鐨勬椂闂存牸寮忚繘琛岃皟鏁�
+ const date = new Date(dateTimeStr);
+ return `${date.getMonth() + 1}-${date.getDate()} ${date.getHours()}:${date.getMinutes().toString().padStart(2, '0')}`;
+ }
},
- mounted() {
- // 椤甸潰鍔犺浇鏃舵媺鍙栧叏閮ㄥ垁鍏�
- this.fetchTools('');
- }
+ mounted() {
+ this.fetchTools('');
+ this.machineNo = uni.getStorageSync('machineNo') || '';
+ this.workOrderNo = uni.getStorageSync('daa001') || '';
+
+ // 娣诲姞璋冭瘯淇℃伅
+ console.log('鏈哄彴鍙�:', this.machineNo);
+ console.log('宸ュ崟鍙�:', this.workOrderNo);
+
+ if (this.machineNo && this.workOrderNo) {
+ this.fetchFormData();
+ } else {
+ console.warn('鏈哄彴鍙锋垨宸ュ崟鍙蜂负绌猴紝鏃犳硶鑾峰彇琛ㄥ崟鏁版嵁');
+ }
+ }
};
</script>
@@ -293,14 +424,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