From 4702274720a7c87605f9f7c286ea092448ad3a5a Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@163.com>
Date: 星期二, 20 九月 2022 14:18:07 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | 27 ++++++++++++++-------------
1 files changed, 14 insertions(+), 13 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 c596eb9..b5895a4 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -499,7 +499,7 @@
// 褰撳墠鍏ュ簱搴撲綅缁勬病鏈夊皬杞� 鍫嗗灈鏈哄垯鍘荤珯鐐瑰彇璐у叆搴�
// case 1锛氫粠濮嬭嚦缁堝簱浣嶇粍閮芥病鏈夊皬杞︼紝娌℃湁杩佸嚭灏忚溅鍔ㄤ綔锛屾墍浠ュ伐浣滅姸鎬� = 2
// case 2锛氬爢鍨涙満宸茬粡鎼嚭灏忚溅锛屾湁杩佸嚭灏忚溅鍔ㄤ綔锛屾墍浠ュ伐浣滅姸鎬� = 6
- if (wrkMast.getWrkSts() == 2L || wrkMast.getWrkSts() == 6L) {
+ if ((wrkMast.getWrkSts() == 2L && wrkMast.getSteNo() == null) || wrkMast.getWrkSts() == 6L) {
// 宸茬粡瀛樺湪鍚婅溅鎵ц浠诲姟鏃讹紝鍒欒繃婊�
if (wrkMastMapper.selectWorking(slave.getId()) != null) {
@@ -1256,8 +1256,8 @@
crnCommand.setCrnNo(crnProtocol.getCrnNo()); // 鍫嗗灈鏈虹紪鍙�
crnCommand.setTaskNo(wrkMast.getWrkNo().shortValue()); // 宸ヤ綔鍙�
crnCommand.setAckFinish((short) 0); // 浠诲姟瀹屾垚纭浣�
- crnCommand.setTaskMode(CrnTaskModeType.LOC_MOVE); // 浠诲姟妯″紡: 搴撲綅绉昏浆
- crnCommand.setSourcePosX(steProtocol.getRow()); // 婧愬簱浣嶆帓
+ crnCommand.setTaskMode(CrnTaskModeType.STE_MOVE); // 浠诲姟妯″紡: 搴撲綅绉昏浆
+ crnCommand.setSourcePosX(Utils.getGroupRow(steProtocol.getRow().intValue()).shortValue()); // 婧愬簱浣嶆帓
crnCommand.setSourcePosY(steProtocol.getBay()); // 婧愬簱浣嶅垪
crnCommand.setSourcePosZ(steProtocol.getLev()); // 婧愬簱浣嶅眰
crnCommand.setDestinationPosX(Utils.getGroupRow(idleLocNo).shortValue()); // 鐩爣搴撲綅鎺�
@@ -1838,6 +1838,7 @@
// 缁勮鍛戒护
LedCommand ledCommand = new LedCommand();
ledCommand.setWorkNo(wrkMast.getWrkNo());
+ ledCommand.setIoType(wrkMast.getIoType());
// 鍑哄簱妯″紡
switch (wrkMast.getIoType()) {
case 101:
@@ -1864,7 +1865,14 @@
ledCommand.setStaNo(wrkMast.getStaNo());
if (wrkMast.getIoType() != 110) {
List<WrkDetl> wrkDetls = wrkDetlService.findByWorkNo(wrkMast.getWrkNo());
- wrkDetls.forEach(wrkDetl -> ledCommand.getMatDtos().add(new MatDto(wrkDetl.getMatnr(), wrkDetl.getMaktx(), wrkDetl.getAnfme())));
+ wrkDetls.forEach(wrkDetl -> {
+ if (wrkMast.getIoType() == 101) {
+ ledCommand.getMatDtos().add(new MatDto(wrkDetl.getMatnr(), wrkDetl.getMaktx(), wrkDetl.getBatch(), wrkDetl.getAnfme()));
+ }
+ if (wrkMast.getIoType() == 103 && (null == wrkDetl.getInspect() || 0 == wrkDetl.getInspect())) {
+ ledCommand.getMatDtos().add(new MatDto(wrkDetl.getMatnr(), wrkDetl.getMaktx(), wrkDetl.getBatch(), wrkDetl.getAnfme()));
+ }
+ });
}
commands.add(ledCommand);
}
@@ -1880,8 +1888,6 @@
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);
}
}
@@ -1919,9 +1925,7 @@
for (Integer staNo : led.getStaArr()) {
// 鑾峰彇鍙夎溅绔欑偣
StaProtocol staProtocol = devpThread.getStation().get(staNo);
- if (staProtocol == null) {
- continue;
- }
+ if (staProtocol == null) { continue; }
if (staProtocol.getWorkNo() != 0) {
reset = false;
break;
@@ -1930,12 +1934,9 @@
// 鑾峰彇led绾跨▼
LedThread ledThread = (LedThread) SlaveConnection.get(SlaveType.Led, led.getDevpPlcId());
// led鏄剧ず榛樿鍐呭
- if (reset && !ledThread.isLedMk()) {
- ledThread.setLedMk(true);
+ if (reset) {
if (!MessageQueue.offer(SlaveType.Led, led.getId(), new Task(2, new ArrayList<>()))) {
log.error("{}鍙稬ED鍛戒护涓嬪彂澶辫触锛侊紒锛乕ip锛歿}] [port锛歿}]", led.getId(), led.getIp(), led.getPort());
- } else {
-
}
}
}
--
Gitblit v1.9.1