From 7238380a5daef00c94eba911d6a6f560a538ed55 Mon Sep 17 00:00:00 2001
From: Junjie <xjj@123>
Date: 星期一, 13 一月 2025 16:48:11 +0800
Subject: [PATCH] #

---
 src/main/webapp/views/task.html |  108 +++++++++++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 99 insertions(+), 9 deletions(-)

diff --git a/src/main/webapp/views/task.html b/src/main/webapp/views/task.html
index 37fb1ae..d4b48bb 100644
--- a/src/main/webapp/views/task.html
+++ b/src/main/webapp/views/task.html
@@ -10,6 +10,11 @@
 		<script type="text/javascript" src="../static/js/common.js"></script>
 		<script type="text/javascript" src="../static/vue/js/vue.min.js"></script>
 		<script type="text/javascript" src="../static/vue/element/element.js"></script>
+		<style>
+			.el-table .success-row {
+				background: #b6ff8e;
+			}
+		</style>
 	</head>
 
 	<body>
@@ -75,22 +80,43 @@
 			</div>
 
 			<el-dialog :title="shuttleCommandTitle" :visible.sync="shuttleCommandVisible">
-				<el-table ref="singleTable" :data="shuttleCommandData.assignCommand.commands" style="width: 100%;">
-					<el-table-column property="mode" label="鍛戒护绫诲瀷">
+				<el-table ref="singleTable" :data="shuttleCommandData.commands" style="width: 100%;" :row-class-name="tableRowClassName">
+					<el-table-column property="mode$" label="鍛戒护绫诲瀷">
 					</el-table-column>
 					<el-table-column property="start" label="璧风偣">
+						<template slot-scope="scope">
+							<div v-if="scope.row.nodes">
+								x:{{ scope.row.nodes[0].x }}
+								y:{{ scope.row.nodes[0].y }}
+								z:{{ scope.row.nodes[0].z }}
+							</div>
+						</template>
 					</el-table-column>
 					<el-table-column property="target" label="缁堢偣">
+						<template slot-scope="scope">
+							<div v-if="scope.row.nodes">
+								x:{{ scope.row.nodes[scope.row.nodes.length-1].x }}
+								y:{{ scope.row.nodes[scope.row.nodes.length-1].y }}
+								z:{{ scope.row.nodes[scope.row.nodes.length-1].z }}
+							</div>
+						</template>
 					</el-table-column>
-					<el-table-column property="taskId" label="taskId">
+					<el-table-column property="taskNo" label="浠诲姟鍙�">
 					</el-table-column>
-					<el-table-column property="robotId" label="robotId">
+					<el-table-column property="shuttleNo" label="绌挎杞�">
 					</el-table-column>
 					<el-table-column property="complete" label="鏄惁瀹屾垚">
+						<template slot-scope="scope">
+							<el-switch
+									v-model="scope.row.complete"
+									active-color="#13ce66"
+									@change="changeComplete(scope)">
+							</el-switch>
+						</template>
 					</el-table-column>
 					<el-table-column label="鎿嶄綔" width="100">
 						<template slot-scope="scope">
-							<el-button @click="shuttleCommandVisible = false" size="mini">鍥為��鎸囦护</el-button>
+							<el-button @click="shuttleCommandRollback(scope)" size="mini">鍥為��鎸囦护</el-button>
 						</template>
 					</el-table-column>
 				</el-table>
@@ -120,8 +146,10 @@
 					shuttleCommandData: {
 						assignCommand: {
 							commands: []
-						}
+						},
+						commandStep: 0
 					},
+					shuttleCommandWrkNo: null,
 					shuttleCommandLabelWidth: '80px',
 					shuttleCommandTitle: ''
 				},
@@ -192,11 +220,11 @@
 								this.cancelTask(row)
 								break;
 							case "shuttleCommand":
-								this.showShuttleCommand(row)
+								this.showShuttleCommand(row.wrkNo)
 								break;
 						}
 					},
-					showShuttleCommand(row){
+					showShuttleCommand(wrkNo){
 						let that = this;
 						$.ajax({
 							url: baseUrl + "/shuttle/command/query",
@@ -204,7 +232,7 @@
 								'token': localStorage.getItem('token')
 							},
 							data: {
-								wrkNo: row.wrkNo
+								wrkNo: wrkNo
 							},
 							method: 'GET',
 							success: function(res) {
@@ -212,6 +240,7 @@
 									console.log(res)
 									that.shuttleCommandVisible = true;
 									that.shuttleCommandData = res.data;
+									that.shuttleCommandWrkNo = wrkNo;
 								} else if (res.code === 403) {
 									top.location.href = baseUrl + "/";
 								} else {
@@ -305,6 +334,67 @@
 							// });
 						});
 					},
+					tableRowClassName({row, rowIndex}) {
+						if (rowIndex === this.shuttleCommandData.commandStep) {
+							return 'success-row';
+						}
+						return '';
+					},
+					shuttleCommandRollback(scope) {
+						let that = this;
+						let idx = scope.$index;
+						$.ajax({
+							url: baseUrl + "/shuttle/command/rollback",
+							headers: {
+								'token': localStorage.getItem('token')
+							},
+							data: {
+								wrkNo: that.shuttleCommandWrkNo,
+								commandStep: idx
+							},
+							method: 'GET',
+							success: function(res) {
+								if (res.code == 200) {
+									that.showShuttleCommand(that.shuttleCommandWrkNo)
+								} else if (res.code === 403) {
+									top.location.href = baseUrl + "/";
+								} else {
+									that.$message({
+										message: res.msg,
+										type: 'error'
+									});
+								}
+							}
+						});
+					},
+					changeComplete(scope) {
+						let that = this;
+						let idx = scope.$index;
+						$.ajax({
+							url: baseUrl + "/shuttle/command/completeSwitch",
+							headers: {
+								'token': localStorage.getItem('token')
+							},
+							data: {
+								wrkNo: that.shuttleCommandWrkNo,
+								commandStep: idx,
+								complete: scope.row.complete ? 1 : 0
+							},
+							method: 'GET',
+							success: function(res) {
+								if (res.code == 200) {
+									that.showShuttleCommand(that.shuttleCommandWrkNo)
+								} else if (res.code === 403) {
+									top.location.href = baseUrl + "/";
+								} else {
+									that.$message({
+										message: res.msg,
+										type: 'error'
+									});
+								}
+							}
+						});
+					}
 				},
 			})
 		</script>

--
Gitblit v1.9.1