From 986aca08c6202596ec8bfbbc220b9957904eec3f Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@163.com>
Date: 星期三, 30 十二月 2020 10:42:00 +0800
Subject: [PATCH] ##
---
src/main/java/com/zy/core/enums/CrnTaskModeType.java | 1 +
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | 7 ++++---
src/main/java/com/zy/core/thread/MelsecCrnThread.java | 1 +
src/main/java/com/zy/asrs/controller/CrnController.java | 38 +++++++++++++++++++++++++++-----------
4 files changed, 33 insertions(+), 14 deletions(-)
diff --git a/src/main/java/com/zy/asrs/controller/CrnController.java b/src/main/java/com/zy/asrs/controller/CrnController.java
index af1991a..c0c1558 100644
--- a/src/main/java/com/zy/asrs/controller/CrnController.java
+++ b/src/main/java/com/zy/asrs/controller/CrnController.java
@@ -403,23 +403,39 @@
if (crnProtocol == null) {
throw new CoolException("鍫嗗灈鏈轰笉鍦ㄧ嚎");
}
- // 鍙湁鍑虹幇鎸囧畾寮傚父鎵嶈繘琛屽浣�
- if (crnProtocol.getCrnError3().leftTakeNoneErr
- || crnProtocol.getCrnError3().rightTakeNoneErr
- || crnProtocol.getCrnError3().leftTakeThenLoadErr
- || crnProtocol.getCrnError3().rightTakeThenLoadErr) {
- CrnCommand command = new CrnCommand();
- command.setCrnNo(param.getCrnNo()); // 鍫嗗灈鏈虹紪鍙�
- command.setAckFinish((short) 1); // 浠诲姟瀹屾垚纭浣�
- command.setTaskMode(CrnTaskModeType.NONE); // 浠诲姟妯″紡
+ if (crn.getId() == 1) {
+ // 鍙湁鍑虹幇鎸囧畾寮傚父鎵嶈繘琛屽浣�
+ if (crnProtocol.getCrnError3().leftTakeNoneErr
+ || crnProtocol.getCrnError3().rightTakeNoneErr
+ || crnProtocol.getCrnError3().leftTakeThenLoadErr
+ || crnProtocol.getCrnError3().rightTakeThenLoadErr) {
+ CrnCommand command = new CrnCommand();
+ command.setCrnNo(param.getCrnNo()); // 鍫嗗灈鏈虹紪鍙�
+ command.setAckFinish((short) 1); // 浠诲姟瀹屾垚纭浣�
+ command.setTaskMode(CrnTaskModeType.NONE); // 浠诲姟妯″紡
+ // 寤舵椂鍙戦��
+ Thread.sleep(3000L);
+ if (MessageQueue.offer(SlaveType.Crn, crn.getId(), new Task(2, command))) {
+ return R.ok();
+ } else {
+ throw new CoolException("鍛戒护涓嬪彂澶辫触");
+ }
+ }
+ } else if (crn.getId() == 2) {
+ CrnCommand crnCommand = new CrnCommand();
+ crnCommand.setCrnNo(crn.getId()); // 鍫嗗灈鏈虹紪鍙�
+ crnCommand.setTaskMode(CrnTaskModeType.CANCEL);
+ crnCommand.setAckFinish((short) 0); // 浠诲姟瀹屾垚纭浣�
// 寤舵椂鍙戦��
- Thread.sleep(3000L);
- if (MessageQueue.offer(SlaveType.Crn, crn.getId(), new Task(2, command))) {
+ Thread.sleep(1000L);
+ if (MessageQueue.offer(SlaveType.Crn, crn.getId(), new Task(2, crnCommand))) {
return R.ok();
} else {
throw new CoolException("鍛戒护涓嬪彂澶辫触");
}
}
+
+
}
}
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 e13dc95..79b66f7 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -731,7 +731,8 @@
if (wrkMast == null) {
continue;
}
- BasCrnError crnError = basCrnErrorMapper.selectById(crnProtocol.getAlarm1());
+ BasCrnError crnError = basCrnErrorMapper.selectById(crn.getId()==2?(crnProtocol.getAlarm1()+1000):crnProtocol.getAlarm1());
+ String errName = crnError==null? String.valueOf(crnProtocol.getAlarm1()):crnError.getErrName();
BasErrLog basErrLog = new BasErrLog(
null, // 缂栧彿
wrkMast.getWrkNo(), // 宸ヤ綔鍙�
@@ -747,7 +748,7 @@
wrkMast.getSourceLocNo(), // 婧愬簱浣�
wrkMast.getBarcode(), // 鏉$爜
crnProtocol.getAlarm1().intValue(), // 寮傚父鐮�
- crnError.getErrName(), // 寮傚父
+ errName, // 寮傚父
1, // 寮傚父鎯呭喌
now, // 娣诲姞鏃堕棿
null, // 娣诲姞浜哄憳
@@ -777,7 +778,7 @@
if (crnProtocol.getAlarm1() != null && crnProtocol.getAlarm1() > 0) {
// 璁板綍鏂板紓甯�
if (latest == null || (latest.getErrCode() != crnProtocol.getAlarm1().intValue())) {
- BasCrnError crnError = basCrnErrorMapper.selectById(crnProtocol.getAlarm1());
+ BasCrnError crnError = basCrnErrorMapper.selectById(crn.getId()==2?(crnProtocol.getAlarm1()+1000):crnProtocol.getAlarm1());
String errName = crnError==null? String.valueOf(crnProtocol.getAlarm1()):crnError.getErrName();
BasErrLog basErrLog = new BasErrLog(
null, // 缂栧彿
diff --git a/src/main/java/com/zy/core/enums/CrnTaskModeType.java b/src/main/java/com/zy/core/enums/CrnTaskModeType.java
index 9f8af09..e465340 100644
--- a/src/main/java/com/zy/core/enums/CrnTaskModeType.java
+++ b/src/main/java/com/zy/core/enums/CrnTaskModeType.java
@@ -10,6 +10,7 @@
GO_ORIGIN(5), // 鍥炲師鐐�
OFFSET_MOVE(7), // 鍧愭爣绉昏
TIMING(90), // 鏍℃椂
+ CANCEL(99), // 鍙栨秷褰撳墠浠诲姟
;
public Integer id;
diff --git a/src/main/java/com/zy/core/thread/MelsecCrnThread.java b/src/main/java/com/zy/core/thread/MelsecCrnThread.java
index ff55e83..6fb1898 100644
--- a/src/main/java/com/zy/core/thread/MelsecCrnThread.java
+++ b/src/main/java/com/zy/core/thread/MelsecCrnThread.java
@@ -222,6 +222,7 @@
}
if (command.getAckFinish() == 1) {
command.setTaskSend((short) 0);
+ command.setTaskNo((short) 0);
} else if (command.getAckFinish() == 0) {
command.setTaskSend((short) 1);
}
--
Gitblit v1.9.1