From 3a1b33b1ab558591cf9c8acc5aa6585d6ccd6473 Mon Sep 17 00:00:00 2001
From: Junjie <fallin.jie@qq.com>
Date: 星期五, 14 四月 2023 16:52:17 +0800
Subject: [PATCH] 穿梭车状态和提升机状态显示更新
---
src/main/java/com/zy/core/enums/LiftProtocolStatusType.java | 1
src/main/java/com/zy/asrs/controller/ShuttleController.java | 4 +
src/main/webapp/views/console.html | 84 ++++++++++++++++++++++++---
src/main/java/com/zy/asrs/domain/vo/LiftStateTableVo.java | 6 +
src/main/java/com/zy/asrs/domain/vo/ShuttleStateTableVo.java | 7 ++
src/main/webapp/static/css/console.css | 8 ++
src/main/java/com/zy/core/enums/ShuttleProtocolStatusType.java | 7 +-
src/main/webapp/views/shuttle.html | 2
src/main/java/com/zy/asrs/controller/LiftController.java | 2
src/main/webapp/views/lift.html | 2
10 files changed, 104 insertions(+), 19 deletions(-)
diff --git a/src/main/java/com/zy/asrs/controller/LiftController.java b/src/main/java/com/zy/asrs/controller/LiftController.java
index f88ea21..a6c157c 100644
--- a/src/main/java/com/zy/asrs/controller/LiftController.java
+++ b/src/main/java/com/zy/asrs/controller/LiftController.java
@@ -63,7 +63,7 @@
continue;
}
vo.setTaskNo(liftProtocol.getTaskNo()); // 浠诲姟鍙�
- vo.setProtocolStatus(liftProtocol.getProtocolStatusType().desc);
+ vo.setProtocolStatus(liftProtocol.getProtocolStatusType().id);
vo.setLiftLock(liftProtocol.getLiftLock());
vo.setPositionArrivalFeedback(liftProtocol.getPositionArrivalFeedback());
vo.setReady(liftProtocol.getReady());
diff --git a/src/main/java/com/zy/asrs/controller/ShuttleController.java b/src/main/java/com/zy/asrs/controller/ShuttleController.java
index 8cb7e94..d0bc966 100644
--- a/src/main/java/com/zy/asrs/controller/ShuttleController.java
+++ b/src/main/java/com/zy/asrs/controller/ShuttleController.java
@@ -65,6 +65,8 @@
// 鑾峰彇鍥涘悜绌挎杞︿俊鎭�
ShuttleThread shuttleThread = (ShuttleThread) SlaveConnection.get(SlaveType.Shuttle, basShuttle.getShuttleNo());
if (shuttleThread == null) {
+ vo.setStatus(ShuttleProtocolStatusType.OFFLINE.id);//璁惧绂荤嚎
+ vo.setBusyStatus(ShuttleProtocolStatusType.OFFLINE.desc);
continue;
}
ShuttleProtocol shuttleProtocol = shuttleThread.getShuttleProtocol();
@@ -73,7 +75,7 @@
}
vo.setTaskNo(shuttleProtocol.getTaskNo().intValue()); // 浠诲姟鍙�
vo.setBusyStatus(shuttleProtocol.getBusyStatusType().desc); //鍥涘悜绌挎杞︾姸鎬�
- vo.setStatus(shuttleProtocol.getProtocolStatusType().desc);//褰撳墠浠诲姟鐘舵��
+ vo.setStatus(shuttleProtocol.getProtocolStatusType().id);//褰撳墠浠诲姟鐘舵��
vo.setCurrentCode(shuttleProtocol.getCurrentCode());//褰撳墠浜岀淮鐮�
LocMast currentLocMast = locMastService.queryByQrCode(shuttleProtocol.getCurrentCode().toString());
if (currentLocMast == null) {
diff --git a/src/main/java/com/zy/asrs/domain/vo/LiftStateTableVo.java b/src/main/java/com/zy/asrs/domain/vo/LiftStateTableVo.java
index 4212c8a..c26c8a8 100644
--- a/src/main/java/com/zy/asrs/domain/vo/LiftStateTableVo.java
+++ b/src/main/java/com/zy/asrs/domain/vo/LiftStateTableVo.java
@@ -18,7 +18,7 @@
/**
* 褰撳墠鎻愬崌鏈虹姸鎬侊紙鍐呴儴鑷垜缁存姢锛�
*/
- private String protocolStatus;
+ private Integer protocolStatus;
/**
* 鎻愬崌鏈洪攣瀹�
@@ -225,4 +225,8 @@
return this.pakMk ? "Y" : "N";
}
+ public String getProtocolStatus$() {
+ return LiftProtocolStatusType.get(this.protocolStatus).desc;
+ }
+
}
diff --git a/src/main/java/com/zy/asrs/domain/vo/ShuttleStateTableVo.java b/src/main/java/com/zy/asrs/domain/vo/ShuttleStateTableVo.java
index 99302f5..8b2d22c 100644
--- a/src/main/java/com/zy/asrs/domain/vo/ShuttleStateTableVo.java
+++ b/src/main/java/com/zy/asrs/domain/vo/ShuttleStateTableVo.java
@@ -4,6 +4,7 @@
import com.zy.asrs.entity.BasShuttleErr;
import com.zy.asrs.service.BasShuttleErrService;
import com.zy.core.enums.ShuttleErrorCodeType;
+import com.zy.core.enums.ShuttleProtocolStatusType;
import com.zy.core.enums.ShuttleStatusType;
import lombok.Data;
@@ -14,7 +15,7 @@
private Integer shuttleNo;
// 鐘舵��
- private String status = "-";
+ private Integer status;
//鍥涘悜绌挎杞﹀繖瑁呭~
private String busyStatus = "-";
@@ -208,4 +209,8 @@
return this.plcOutputCharge ? "Y" : "N";
}
+ public String getStatus$() {
+ return ShuttleProtocolStatusType.get(this.status).desc;
+ }
+
}
diff --git a/src/main/java/com/zy/core/enums/LiftProtocolStatusType.java b/src/main/java/com/zy/core/enums/LiftProtocolStatusType.java
index f3c8e67..e5b8e3c 100644
--- a/src/main/java/com/zy/core/enums/LiftProtocolStatusType.java
+++ b/src/main/java/com/zy/core/enums/LiftProtocolStatusType.java
@@ -4,6 +4,7 @@
IDLE(1, "绌洪棽"),
WORKING(2, "浣滀笟涓�"),
WAITING(3, "绛夊緟纭"),
+ OFFLINE(4, "绂荤嚎"),
;
public Integer id;
diff --git a/src/main/java/com/zy/core/enums/ShuttleProtocolStatusType.java b/src/main/java/com/zy/core/enums/ShuttleProtocolStatusType.java
index cd08360..f30c523 100644
--- a/src/main/java/com/zy/core/enums/ShuttleProtocolStatusType.java
+++ b/src/main/java/com/zy/core/enums/ShuttleProtocolStatusType.java
@@ -8,9 +8,10 @@
IDLE(1, "绌洪棽"),
WORKING(2, "浣滀笟涓�"),
WAITING(3, "绛夊緟纭"),
- CHARGING(5, "鍏呯數涓�"),
- CHARGING_WAITING(6, "鍏呯數浠诲姟绛夊緟纭"),
- FIXING(7, "鏁呴殰淇涓�"),
+ CHARGING(4, "鍏呯數涓�"),
+ CHARGING_WAITING(5, "鍏呯數浠诲姟绛夊緟纭"),
+ FIXING(6, "鏁呴殰淇涓�"),
+ OFFLINE(7, "绂荤嚎"),
;
public Integer id;
diff --git a/src/main/webapp/static/css/console.css b/src/main/webapp/static/css/console.css
index 819881c..cd46d92 100644
--- a/src/main/webapp/static/css/console.css
+++ b/src/main/webapp/static/css/console.css
@@ -305,6 +305,10 @@
.shuttle-fixing {
background-color: rgb(252,48,48);
}
+/*绂荤嚎*/
+.shuttle-offline {
+ background-color: rgb(0, 0, 0);
+}
/*绌洪棽*/
.lift-idle {
background-color: rgb(120,255,129);
@@ -317,6 +321,10 @@
.lift-waiting {
background-color: rgb(184,184,184);
}
+/*绂荤嚎*/
+.lift-offline {
+ background-color: rgb(0, 0, 0);
+}
#code {
background-image: url(../images/status_bar_2.png);
background-repeat: no-repeat;
diff --git a/src/main/webapp/views/console.html b/src/main/webapp/views/console.html
index 6a6ff76..5e0b60a 100644
--- a/src/main/webapp/views/console.html
+++ b/src/main/webapp/views/console.html
@@ -59,13 +59,7 @@
<!-- 鍥涘悜绌挎杞︾姸鎬� -->
<div class="line-status">
<div class="body-head">绌挎杞︾姸鎬�</div>
- <div class="state">
- <span>鍥涘悜绌挎杞� 1</span>
- <span class="state-ss shuttle-idle">绌洪棽</span>
- </div>
- <div class="state">
- <span>鍥涘悜绌挎杞� 2</span>
- <span class="state-ss shuttle-idle">绌洪棽</span>
+ <div id="shuttle-status-box">
</div>
<div class="button"><span>鎵�鏈夌姸鎬�</span></div>
<div class="button item-group">
@@ -75,20 +69,21 @@
<span class="shuttle-charging">鍏呯數涓�</span>
<span class="shuttle-charging-waiting">鍏呯數浠诲姟绛夊緟纭</span>
<span class="shuttle-fixing">鏁呴殰淇涓�</span>
+ <span class="shuttle-offline">绂荤嚎</span>
</div>
</div>
<!-- 鎻愬崌鏈虹姸鎬� -->
<div class="line-status">
<div class="body-head">鎻愬崌鏈虹姸鎬�</div>
- <div class="state states">
- <span>鎻愬崌鏈�</span>
- <span class="state-ss shuttle-idle">绌洪棽</span>
+ <div id="lift-status-box">
+
</div>
<div class="button"><span>鎵�鏈夌姸鎬�</span></div>
<div class="button item-group">
<span class="lift-idle">绌洪棽</span>
<span class="lift-working">浣滀笟涓�</span>
<span class="lift-waiting">绛夊緟纭</span>
+ <span class="lift-offline">绂荤嚎</span>
</div>
</div>
<!-- 杈撻�佺嚎鐘舵�� -->
@@ -418,7 +413,44 @@
setInterval(() => {
getShuttleStateInfo()
+ getLiftStateInfo()
},1000)
+
+ // 鎻愬崌鏈轰俊鎭〃鑾峰彇
+ function getLiftStateInfo() {
+ $.ajax({
+ url: baseUrl+ "/lift/table/lift/state",
+ headers: {'token': localStorage.getItem('token')},
+ method: 'POST',
+ success: function (res) {
+ $("#lift-status-box").empty()
+ res.data.forEach((item,index) => {
+ let liftStatusClass = "lift-idle"
+ switch (item.status) {
+ case 1://绌洪棽
+ liftStatusClass = "lift-idle";
+ break
+ case 2://浣滀笟涓�
+ liftStatusClass = "lift-working";
+ break
+ case 3://绛夊緟纭
+ liftStatusClass = "lift-waiting";
+ break
+ case 4://绂荤嚎
+ liftStatusClass = "lift-offline";
+ break
+ default:
+ liftStatusClass = "lift-idle"
+ }
+ let liftStatus = '<div class="state states">' +
+ '<span>鎻愬崌鏈� ' + item.liftNo + '</span>' +
+ '<span class="state-ss ' + liftStatusClass + '">' + item.protocolStatus$ + '</span></div>';
+ $("#lift-status-box").append(liftStatus)
+
+ })
+ }
+ });
+ }
// 鍥涘悜绌挎杞︿俊鎭〃鑾峰彇
function getShuttleStateInfo() {
@@ -427,7 +459,39 @@
headers: {'token': localStorage.getItem('token')},
method: 'POST',
success: function (res) {
+ $("#shuttle-status-box").empty()
res.data.forEach((item,index) => {
+ let shuttleStatusClass = "shuttle-idle"
+ switch (item.status) {
+ case 1://绌洪棽
+ shuttleStatusClass = "shuttle-idle";
+ break
+ case 2://浣滀笟涓�
+ shuttleStatusClass = "shuttle-working";
+ break
+ case 3://绛夊緟纭
+ shuttleStatusClass = "shuttle-waiting";
+ break
+ case 4://鍏呯數涓�
+ shuttleStatusClass = "shuttle-charging";
+ break
+ case 5://鍏呯數浠诲姟绛夊緟纭
+ shuttleStatusClass = "shuttle-charging-waiting";
+ break
+ case 6://鏁呴殰淇涓�
+ shuttleStatusClass = "shuttle-fixing";
+ break
+ case 7://绂荤嚎
+ shuttleStatusClass = "shuttle-offline";
+ break
+ default:
+ shuttleStatusClass = "shuttle-idle"
+ }
+ let shuttleStatus = '<div class="state">' +
+ '<span>鍥涘悜绌挎杞� ' + item.shuttleNo + '</span>' +
+ '<span class="state-ss ' + shuttleStatusClass + '">' + item.status$ + '</span></div>';
+ $("#shuttle-status-box").append(shuttleStatus)
+
if(item.locNoLev != currentLev){
//鍥涘悜绌挎杞︽ゼ灞傚拰褰撳墠鍦板浘妤煎眰涓嶄竴鑷达紝鍒犻櫎璇ヨ溅杈�
$("#sxcar-" + item.shuttleNo).remove()
diff --git a/src/main/webapp/views/lift.html b/src/main/webapp/views/lift.html
index 32a14ba..1522ddc 100644
--- a/src/main/webapp/views/lift.html
+++ b/src/main/webapp/views/lift.html
@@ -309,7 +309,7 @@
let tr = tableEl.find("tr").eq(i);
setVal(tr.children("td").eq(0), table[i-1].liftNo);
setVal(tr.children("td").eq(1), table[i-1].taskNo);
- setVal(tr.children("td").eq(2), table[i-1].protocolStatus);
+ setVal(tr.children("td").eq(2), table[i-1].protocolStatus$);
setVal(tr.children("td").eq(3), table[i-1].liftLock$);
setVal(tr.children("td").eq(4), table[i-1].positionArrivalFeedback);
setVal(tr.children("td").eq(5), table[i-1].ready$);
diff --git a/src/main/webapp/views/shuttle.html b/src/main/webapp/views/shuttle.html
index de98cf0..8a1c18d 100644
--- a/src/main/webapp/views/shuttle.html
+++ b/src/main/webapp/views/shuttle.html
@@ -574,7 +574,7 @@
// $("#mode-"+table[i-1].shuttleNo).html(table[i-1].statusVal===0?'鑱旀満':'鑴辨満');
let tr = tableEl.find("tr").eq(i);
setVal(tr.children("td").eq(0), table[i-1].shuttleNo);
- setVal(tr.children("td").eq(1), table[i-1].status);
+ setVal(tr.children("td").eq(1), table[i-1].status$);
setVal(tr.children("td").eq(2), table[i-1].busyStatus);
setVal(tr.children("td").eq(3), table[i-1].currentCode);
setVal(tr.children("td").eq(4), table[i-1].batteryPower);
--
Gitblit v1.9.1