#
Junjie
2025-01-13 7238380a5daef00c94eba911d6a6f560a538ed55
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>