From 9de7e9ef1f17b55278a21350d193934db158c2db Mon Sep 17 00:00:00 2001
From: Junjie <fallin.jie@qq.com>
Date: 星期五, 14 四月 2023 17:06:28 +0800
Subject: [PATCH] 穿梭车状态和提升机状态为空问题
---
src/main/java/com/zy/core/thread/LiftThread.java | 72 +++++++++++++++++++++---------------
1 files changed, 42 insertions(+), 30 deletions(-)
diff --git a/src/main/java/com/zy/core/thread/LiftThread.java b/src/main/java/com/zy/core/thread/LiftThread.java
index 34ea0c1..0e31dee 100644
--- a/src/main/java/com/zy/core/thread/LiftThread.java
+++ b/src/main/java/com/zy/core/thread/LiftThread.java
@@ -293,32 +293,6 @@
//灏嗘map瀛樺叆redis涓�
HashMap<String, Object> map = new HashMap<>();
- //鎻愬崌鏈哄彿
- map.put("lift_no", assignCommand.getLiftNo());
- //宸ヤ綔鍙�
- map.put("wrk_no", assignCommand.getTaskNo());
- //鍛戒护鎵ц姝ュ簭
- map.put("commandStep", 0);
- //鍛戒护
- map.put("assignCommand", assignCommand);
- //浠诲姟鏁版嵁淇濆瓨鍒皉edis
- redisUtil.set("lift_wrk_no_" + assignCommand.getTaskNo(), JSON.toJSONString(map));
- liftProtocol.setAssignCommand(assignCommand);
- liftProtocol.setProtocolStatus(LiftProtocolStatusType.WORKING);
- //鎵ц涓嬪彂浠诲姟
- executeWork(assignCommand);
- }
-
- //鎵ц浠诲姟
- private boolean executeWork(LiftAssignCommand assignCommand) {
- //璇诲彇redis鏁版嵁
- if (assignCommand == null) {
- return false;
- }
-
- //灏嗘爣璁扮疆涓篺alse(闃叉閲嶅彂)
- liftProtocol.setPakMk(false);
-
//鎵嬪姩妯″紡鎸囦护
if (!assignCommand.getAuto()) {
LiftCommand command = new LiftCommand();
@@ -347,16 +321,38 @@
case 5://澶嶄綅
command.setRun((short) 0);
command.setLiftLock(false);
- liftProtocol.setTaskNo((short) 0);
- liftProtocol.setShuttleNo((short) 0);
- liftProtocol.setProtocolStatus(LiftProtocolStatusType.IDLE);
- liftProtocol.setPakMk(true);
break;
default:
}
commands.add(command);
assignCommand.setCommands(commands);
}
+
+ //鎻愬崌鏈哄彿
+ map.put("lift_no", assignCommand.getLiftNo());
+ //宸ヤ綔鍙�
+ map.put("wrk_no", assignCommand.getTaskNo());
+ //鍛戒护鎵ц姝ュ簭
+ map.put("commandStep", 0);
+ //鍛戒护
+ map.put("assignCommand", assignCommand);
+ //浠诲姟鏁版嵁淇濆瓨鍒皉edis
+ redisUtil.set("lift_wrk_no_" + assignCommand.getTaskNo(), JSON.toJSONString(map));
+ liftProtocol.setAssignCommand(assignCommand);
+ liftProtocol.setProtocolStatus(LiftProtocolStatusType.WORKING);
+ //鎵ц涓嬪彂浠诲姟
+ executeWork(assignCommand);
+ }
+
+ //鎵ц浠诲姟
+ private boolean executeWork(LiftAssignCommand assignCommand) {
+ //璇诲彇redis鏁版嵁
+ if (assignCommand == null) {
+ return false;
+ }
+
+ //灏嗘爣璁扮疆涓篺alse(闃叉閲嶅彂)
+ liftProtocol.setPakMk(false);
Object o = redisUtil.get("lift_wrk_no_" + assignCommand.getTaskNo());
if (o == null) {
@@ -411,9 +407,25 @@
News.info("鎻愬崌鏈轰换鍔℃墽琛屽畬鎴愮瓑寰呯‘璁や腑锛屾彁鍗囨満鍙�={}锛屼换鍔℃暟鎹�={}", command.getLiftNo(), JSON.toJSON(command));
}else {
//鎵嬪姩妯″紡涓嶆姏鍑虹瓑寰呯姸鎬�
+ if (assignCommand.getTaskMode() == 5) {
+ liftProtocol.setTaskNo((short) 0);
+ liftProtocol.setShuttleNo((short) 0);
+ liftProtocol.setProtocolStatus(LiftProtocolStatusType.IDLE);
+ liftProtocol.setPakMk(true);
+ liftProtocol.setSecurityMk(false);
+ }
News.info("鎻愬崌鏈烘墜鍔ㄤ换鍔℃墽琛屽畬鎴愶紝鎻愬崌鏈哄彿={}锛屼换鍔℃暟鎹�={}", command.getLiftNo(), JSON.toJSON(command));
}
+ //涓嬪彂涓�鏉℃彁鍗囨満瑙i攣鍛戒护
+ LiftCommand liftCommand = new LiftCommand();
+ liftCommand.setRun((short) 0);
+ liftCommand.setLiftNo(command.getLiftNo());
+ liftCommand.setLiftLock(false);
+ if (write(liftCommand)) {
+ News.info("鎻愬崌鏈虹姸鎬佸凡瑙i攣锛屾彁鍗囨満鍙�={}锛屼换鍔℃暟鎹�={}", command.getLiftNo(), JSON.toJSON(command));
+ }
+
}
}
--
Gitblit v1.9.1