| | |
| | | <el-input @change="changeControlShuttleNo" v-model="controlData.shuttleNo" style="width: 150px;" placeholder="车辆编号"></el-input> |
| | | </div> |
| | | <div> |
| | | <el-input @change="changeControlShuttleNo" v-model="controlData.taskNo" style="width: 150px;" placeholder="工作号"></el-input> |
| | | </div> |
| | | <div> |
| | | <el-input v-model="controlData.sourceLocNo" style="width: 200px;" placeholder="源库位"></el-input> |
| | | </div> |
| | | <div> |
| | | <el-input v-model="controlData.targetLocNo" style="width: 200px;" placeholder="目标库位"></el-input> |
| | | </div> |
| | | <div> |
| | | <button class="btn bg-slate-600 hover:bg-slate-500" @click="shuttleOperator('writeTaskNo')"> |
| | | <i class="fas fa-credit-card-alt mr-1"></i>写入工作号 |
| | | </button> |
| | | <button class="btn bg-slate-600 hover:bg-slate-500" @click="shuttleOperator('transport')"> |
| | | <i class="fas fa-truck mr-1"></i>搬运货物 |
| | | </button> |
| | |
| | | </div> |
| | | </div> |
| | | <div class="bg-slate-700 p-4 rounded-lg"> |
| | | <h3 class="text-lg font-medium mb-2">设备维护</h3> |
| | | <h3 class="text-lg font-medium mb-2">设备指令</h3> |
| | | <div class="flex flex-wrap gap-2" style="display: flex;justify-content: center;"> |
| | | <button class="btn bg-slate-600 hover:bg-slate-500" @click="shuttleOperator('palletLift')"> |
| | | <i class="fas fa-level-up mr-1"></i>托盘顶升 |
| | |
| | | </button> |
| | | <button class="btn bg-slate-600 hover:bg-slate-500" @click="shuttleOperator('demoOff')"> |
| | | <i class="fas fa-hourglass-empty mr-1"></i>演示-关 |
| | | </button> |
| | | <button class="btn bg-slate-600 hover:bg-slate-500" @click="shuttleOperator('clearPath')"> |
| | | <i class="fas fa-anchor mr-1"></i>清除路径 |
| | | </button> |
| | | </div> |
| | | </div> |
| | |
| | | deviceStatusCountMap: {}, |
| | | controlData: { |
| | | shuttleNo: "", |
| | | taskNo: "", |
| | | sourceLocNo: "", |
| | | targetLocNo: "" |
| | | }, |
| | |
| | | }, |
| | | methods: { |
| | | init() { |
| | | this.websocketConnect(); |
| | | |
| | | this.consoleInterval = setInterval(() => { |
| | | this.websocketConnect(); |
| | | |
| | | this.getShuttleStateInfo() //获取四向穿梭车信息 |
| | | }, 1000) |
| | | }, |
| | |
| | | requestParam.distLocNo = this.controlData.targetLocNo; |
| | | }else if (type == 'palletLift') { |
| | | requestParam.shuttleTaskMode = 1; |
| | | }else if (type == 'palletDown') { |
| | | requestParam.shuttleTaskMode = 2; |
| | | }else if (type == 'chargeOn') { |
| | | requestParam.shuttleTaskMode = 15; |
| | | }else if (type == 'chargeOff') { |
| | |
| | | requestParam.shuttleTaskMode = 12; |
| | | }else if (type == 'demoOff') { |
| | | requestParam.shuttleTaskMode = 13; |
| | | }else if (type == 'clearPath') { |
| | | requestParam.shuttleTaskMode = 17; |
| | | }else if (type == 'writeTaskNo') { |
| | | requestParam.workNo = this.controlData.taskNo; |
| | | requestParam.pakMk = "Y"; |
| | | |
| | | $.ajax({ |
| | | url: baseUrl + "/shuttle/detl/update", |
| | | headers: {'token': localStorage.getItem('token')}, |
| | | method: 'POST', |
| | | data: requestParam, |
| | | success: function (res) { |
| | | if (res.code === 200) { |
| | | that.$message({ |
| | | message: res.msg, |
| | | type: 'success' |
| | | }); |
| | | } else if (res.code === 403) { |
| | | window.location.href = baseUrl + "/login"; |
| | | } else { |
| | | that.$message({ |
| | | message: res.msg, |
| | | type: 'warning' |
| | | }); |
| | | } |
| | | } |
| | | }); |
| | | return; |
| | | } |
| | | |
| | | $.ajax({ |
| | |
| | | } else if (res.code === 403) { |
| | | window.location.href = baseUrl + "/login"; |
| | | } else { |
| | | this.$message({ |
| | | that.$message({ |
| | | message: res.msg, |
| | | type: 'warning' |
| | | }); |
| | |
| | | }); |
| | | }, |
| | | websocketConnect() { |
| | | this.ws = new WebSocket("ws://" + window.location.host + baseUrl + "/console/websocket"); |
| | | this.ws.onopen = this.webSocketOnOpen |
| | | this.ws.onerror = this.webSocketOnError |
| | | this.ws.onmessage = this.webSocketOnMessage |
| | | this.ws.onclose = this.webSocketClose |
| | | if (this.ws == null) { |
| | | this.ws = new WebSocket("ws://" + window.location.host + baseUrl + "/console/websocket"); |
| | | this.ws.onopen = this.webSocketOnOpen |
| | | this.ws.onerror = this.webSocketOnError |
| | | this.ws.onmessage = this.webSocketOnMessage |
| | | this.ws.onclose = this.webSocketClose |
| | | } |
| | | }, |
| | | webSocketOnOpen(e) { |
| | | console.log("open"); |
| | | }, |
| | | webSocketOnError(e) { |
| | | this.ws = null; |
| | | console.log(e); |
| | | this.websocketConnect(); |
| | | }, |
| | | webSocketOnMessage(e) { |
| | | const result = JSON.parse(e.data); |
| | |
| | | } |
| | | }, |
| | | webSocketClose(e) { |
| | | this.ws = null; |
| | | console.log("close"); |
| | | this.websocketConnect(); |
| | | }, |
| | | sendWs(message) { |
| | | if (this.ws == null) { |
| | | return; |
| | | } |
| | | |
| | | if (this.ws.readyState == WebSocket.OPEN) { |
| | | this.ws.send(message) |
| | | this.ws.send(message); |
| | | } |
| | | } |
| | | } |