From 1e1bf59e327a9de866358e5c20b138335971fdba Mon Sep 17 00:00:00 2001
From: 快乐的昕的电脑 <快乐的昕的电脑@DESKTOP-C2BQPQU>
Date: 星期四, 09 十月 2025 15:31:16 +0800
Subject: [PATCH] 界面优化

---
 components/mold.vue |   94 ++++++++++++++++++++++++++++++++++++----------
 1 files changed, 73 insertions(+), 21 deletions(-)

diff --git a/components/mold.vue b/components/mold.vue
index a3d446b..9daac6d 100644
--- a/components/mold.vue
+++ b/components/mold.vue
@@ -42,8 +42,15 @@
 					</button>
 				</view>
 				<view class="dialog-actions">
-					<button class="btn-blue" @click="confirmTool">纭畾</button>
-					<button class="btn-disabled" @click="showToolDialog = false">鍙栨秷</button>
+					<div style="display: flex; align-items: center;">
+						<button class="btn-blue" @click="prevPage" :disabled="pageIndex === 1">涓婁竴椤�</button>
+						<span style="margin: 0 12px;">绗瑊{ pageIndex }}椤� / 鍏眥{ totalPages }}椤�</span>
+						<button class="btn-blue" @click="nextPage" :disabled="pageIndex === totalPages">涓嬩竴椤�</button>
+					</div>
+					<div>
+						<button class="btn-blue" @click="confirmTool">纭畾</button>
+						<button class="btn-disabled" @click="showToolDialog = false">鍙栨秷</button>
+					</div>
 				</view>
 			</view>
 		</view>
@@ -97,11 +104,10 @@
 	export default {
 		data() {
 			return {
-				toolList: [
-					// 绀轰緥鏁版嵁锛屽疄闄呭簲浠庡悗绔帴鍙h幏鍙�
-					{ no: 'T22050338', name: 'm1.5鍚堥噾闀垮垁', model: 'xxx' },
-					{ no: 'T22050337', name: 'm0.546鍚堥噾闀垮垁', model: 'yyy' }
-				],
+				pageIndex: 1,
+				pageSize: 18,
+				total: 0,
+				toolList: [],
 				selectedToolNo: '',
 				toolName: '',
 				toolModel: '',
@@ -115,11 +121,49 @@
 				]
 			};
 		},
+		computed: {
+			totalPages() {
+				return Math.ceil(this.total / this.pageSize) || 1;
+			}
+		},
 		methods: {
-			searchTool() {
-				this.filteredTools = this.toolList.filter(t =>
-					t.no.includes(this.searchKey) || t.name.includes(this.searchKey)
-				);
+			async fetchTools(searchKey) {
+				const res = await this.$post({
+					url: '/MesCutterLedger/QueryTools',
+					data: JSON.stringify({
+						searchKey,
+						pageIndex: this.pageIndex,
+						pageSize: this.pageSize
+					}),
+					headers: { 'Content-Type': 'application/json' }
+				});
+				if (res.status === 0) {
+					this.filteredTools = res.data.tbBillList.map(t => ({
+						no: t.cutterId || t.no,
+						name: t.cutterName || t.name,
+						model: t.cutterModel || t.model
+					}));
+					this.total = res.data.total || 0; // 鍋囪鍚庣杩斿洖鎬绘暟
+				} else {
+					this.$showMessage(res.message || '鏌ヨ澶辫触');
+				}
+			},
+			//缈婚〉
+			async prevPage() {
+				if (this.pageIndex > 1) {
+					this.pageIndex--;
+					await this.fetchTools(this.searchKey);
+				}
+			},
+			async nextPage() {
+				if (this.pageIndex < this.totalPages) {
+					this.pageIndex++;
+					await this.fetchTools(this.searchKey);
+				}
+			},
+			async searchTool() {
+				this.pageIndex = 1; // 鎼滅储鏃堕噸缃埌绗竴椤�
+				await this.fetchTools(this.searchKey);
 			},
 			selectTool(tool) {
 				this.selectedToolNo = tool.no;
@@ -141,11 +185,15 @@
 				this.selectedToolNo = '';
 				this.toolName = '';
 				this.toolModel = '';
+			},
+			setUseLimit() {
+				// 淇濆瓨浣跨敤涓婇檺閫昏緫锛屽疄闄呭簲璋冪敤鍚庣鎺ュ彛
+				this.$showMessage('浣跨敤涓婇檺宸蹭繚瀛橈紙绀轰緥锛�');
 			}
 		},
 		mounted() {
-			// 瀹為檯搴斾粠鍚庣鍔犺浇鍒�鍏风洰褰曞拰浣跨敤璁板綍
-			this.filteredTools = this.toolList;
+			// 椤甸潰鍔犺浇鏃舵媺鍙栧叏閮ㄥ垁鍏�
+			this.fetchTools('');
 		}
 	};
 </script>
@@ -241,16 +289,20 @@
 		display: flex;
 		flex-wrap: wrap;
 		margin: 1vh 0;
+		max-height: 40vh;
+		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