From 8d3b350275b494d7ed2cc2b655c7e1ed22e49f7d Mon Sep 17 00:00:00 2001
From: whycq <10027870+whycq@user.noreply.gitee.com>
Date: 星期一, 29 八月 2022 17:00:18 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/core/thread/LedThread.java | 58 +++++++++++++++++++++++++++++
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | 35 +++++++++++++----
2 files changed, 85 insertions(+), 8 deletions(-)
diff --git a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
index c71ab1b..282478b 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -1426,12 +1426,22 @@
}
// 鍛戒护涓嬪彂 -------------------------------------------------------------------------------
if (!commands.isEmpty()) {
- if (!MessageQueue.offer(SlaveType.Led, led.getId(), new Task(1, commands))) {
- log.error("{}鍙稬ED鍛戒护涓嬪彂澶辫触锛侊紒锛乕ip锛歿}] [port锛歿}]", led.getId(), led.getIp(), led.getPort());
- continue;
+ if (led.getId() == 7) {
+ if (!MessageQueue.offer(SlaveType.Led, led.getId(), new Task(3, commands))) {
+ log.error("{}鍙稬ED鍛戒护涓嬪彂澶辫触锛侊紒锛乕ip锛歿}] [port锛歿}]", led.getId(), led.getIp(), led.getPort());
+ continue;
+ } else {
+ ledThread.setLedMk(false);
+ }
} else {
- ledThread.setLedMk(false);
+ if (!MessageQueue.offer(SlaveType.Led, led.getId(), new Task(1, commands))) {
+ log.error("{}鍙稬ED鍛戒护涓嬪彂澶辫触锛侊紒锛乕ip锛歿}] [port锛歿}]", led.getId(), led.getIp(), led.getPort());
+ continue;
+ } else {
+ ledThread.setLedMk(false);
+ }
}
+
}
try {
@@ -1507,11 +1517,20 @@
LedThread ledThread = (LedThread) SlaveConnection.get(SlaveType.Led, led.getId());
// led鏄剧ず榛樿鍐呭
if (reset && !ledThread.isLedMk()) {
- ledThread.setLedMk(true);
- if (!MessageQueue.offer(SlaveType.Led, led.getId(), new Task(2, new ArrayList<>()))) {
- log.error("{}鍙稬ED鍛戒护涓嬪彂澶辫触锛侊紒锛乕ip锛歿}] [port锛歿}]", led.getId(), led.getIp(), led.getPort());
- } else {
+ if (led.getId() == 7) {
+ ledThread.setLedMk(true);
+ if (!MessageQueue.offer(SlaveType.Led, led.getId(), new Task(4, new ArrayList<>()))) {
+ log.error("{}鍙稬ED鍛戒护涓嬪彂澶辫触锛侊紒锛乕ip锛歿}] [port锛歿}]", led.getId(), led.getIp(), led.getPort());
+ } else {
+ }
+ } else {
+ ledThread.setLedMk(true);
+ if (!MessageQueue.offer(SlaveType.Led, led.getId(), new Task(2, new ArrayList<>()))) {
+ log.error("{}鍙稬ED鍛戒护涓嬪彂澶辫触锛侊紒锛乕ip锛歿}] [port锛歿}]", led.getId(), led.getIp(), led.getPort());
+ } else {
+
+ }
}
}
}
diff --git a/src/main/java/com/zy/core/thread/LedThread.java b/src/main/java/com/zy/core/thread/LedThread.java
index fecbd49..b263a9e 100644
--- a/src/main/java/com/zy/core/thread/LedThread.java
+++ b/src/main/java/com/zy/core/thread/LedThread.java
@@ -43,6 +43,12 @@
private boolean ledMk = false;
private boolean resetStatus = false; // 澶嶄綅鐘舵��
+ // 鏄剧ず鍣�
+ private StringBuffer stringBuffer = new StringBuffer();
+ private List<LedCommand> commandList;
+
+ private StringBuffer errorMsg = new StringBuffer();
+
public LedThread(Slave slave) {
this.slave = slave;
try {
@@ -71,6 +77,20 @@
// 澶嶄綅
case 2:
reset();
+ break;
+ // 鍐欐暟鎹� 娑叉櫠
+ case 3:
+ write7((List<LedCommand>)task.getData());
+ break;
+ // 澶嶄綅 娑叉櫠
+ case 4:
+ reset7();
+ break;
+ case 5:
+ error((String) task.getData());
+ break;
+ case 6:
+ errorReset();
break;
default:
break;
@@ -181,6 +201,44 @@
}
close();
}
+ private void write7(List<LedCommand> list) {
+ commandList = list;
+
+ StringBuilder sb = new StringBuilder();
+ for (LedCommand command : list) {
+ sb.append(command.getTitle()).append("锛�").append(command.getWorkNo()).append(")").append("\n");
+ sb.append("婧愬簱浣嶏細").append(command.getSourceLocNo()).append("\n");
+ sb.append("鐩爣绔欙細").append(command.getStaNo()).append("\n");
+ if (!command.isEmptyMk()) {
+ for (MatDto matDto : command.getMatDtos()) {
+ sb.append("鐗╂枡缂栫爜锛�").append(matDto.getMatNo()).append("\n");
+ sb.append("鏁伴噺锛�").append(matDto.getCount()).append("\n");
+ }
+ }
+ sb.append("\n");
+ }
+ stringBuffer.delete(0, stringBuffer.length());
+ stringBuffer.append(sb.toString());
+
+ errorReset();
+ }
+
+
+ private void reset7() {
+ commandList = null;
+
+ stringBuffer.delete(0, stringBuffer.length());
+ }
+
+
+ private void error(String msg) {
+ errorMsg.delete(0, errorMsg.length());
+ errorMsg.append(msg);
+ }
+
+ public void errorReset() {
+ this.errorMsg.delete(0, errorMsg.length());
+ }
@Override
public boolean connect() {
--
Gitblit v1.9.1