From 80523e92e25ba762a3fe737ef7997f7e831890a0 Mon Sep 17 00:00:00 2001
From: Junjie <fallin.jie@qq.com>
Date: 星期日, 01 十月 2023 09:49:19 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | 96 ++++++++++++++++++++++++++++++------------------
1 files changed, 60 insertions(+), 36 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 8520b78..e071569 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -236,8 +236,8 @@
Integer code = jsonObject.getInteger("code");
if (code.equals(200)) {
StartupDto dto = jsonObject.getObject("data", StartupDto.class);
-// // plc 澶勭悊
-// barcodeThread.setBarcode("");
+ // plc 澶勭悊
+ barcodeThread.setBarcode("");
// staProtocol.setWorkNo(dto.getWorkNo().shortValue());
// staProtocol.setStaNo(dto.getStaNo().shortValue());
// devpThread.setPakMk(staProtocol.getSiteId(), false);
@@ -1196,6 +1196,17 @@
//23.灏忚溅鎼繍瀹屾垚 ==> 24.鎻愬崌鏈烘惉杩愪腑
if (wrkMast.getWrkSts() == 23) {
+ NyShuttleThread shuttleThread = (NyShuttleThread) SlaveConnection.get(SlaveType.Shuttle, wrkMast.getShuttleNo());
+ if (shuttleThread == null) {
+ return false;
+ }
+
+ //璋冨害灏忚溅閬胯
+ boolean result = Utils.searchEmptyGroupToMoveShuttle(Utils.getLev(wrkMast.getSourceLocNo()), wrkMast.getShuttleNo(), shuttleThread);
+ if (!result) {
+ return false;
+ }
+
//鑾峰彇鍑哄簱绔欑偣(鐩爣绔�)
BasDevp basDevp = basDevpService.selectById(wrkMast.getStaNo());
if (basDevp == null) {
@@ -1293,7 +1304,7 @@
case 3://3.鎻愬崌鏈烘惉杩愪腑 ==> 4.鎻愬崌鏈烘惉杩愬畬鎴�
wrkMast.setWrkSts(4L);
wrkMast.setLiftNo(null);//閲婃斁鎻愬崌鏈�
- if (liftProtocol.getToken() == wrkMast.getWrkNo()) {
+ if (liftProtocol.getToken().equals(wrkMast.getWrkNo())) {
//閲婃斁鎻愬崌鏈轰护鐗�
liftProtocol.setToken(0);
}
@@ -1307,6 +1318,12 @@
//閲婃斁鎻愬崌鏈轰护鐗�
liftProtocol.setToken(0);
}
+
+ if (wrkMast.getMk() == null || !wrkMast.getMk().equals("Y")) {
+ //涓嶉渶瑕佺敤鍒版満姊拌噦锛岀洿鎺ヨ浆29.鍑哄簱瀹屾垚
+ wrkMast.setWrkSts(29L);
+ }
+
break;
case 106://106.鎻愬崌鏈烘惉杩愪腑 ==> 107.鎻愬崌鏈烘惉杩愬畬鎴�
wrkMast.setWrkSts(107L);
@@ -1954,6 +1971,9 @@
// 鑾峰彇鍏ュ簱绔欎俊鎭�
DevpThread devpThread = (DevpThread) SlaveConnection.get(SlaveType.Devp, devp.getId());
StaProtocol staProtocol = devpThread.getStation().get(300);
+ if (staProtocol == null) {
+ continue;
+ }
if (staProtocol.isAutoing() && staProtocol.isLoading() && staProtocol.getWorkNo() != 0) {
//鏌ヨ鏄惁鏈夊伐浣滄。
WrkMast wrkMast = wrkMastMapper.selectByWorkNo(staProtocol.getWorkNo().intValue());
@@ -1965,7 +1985,7 @@
continue;
}
- if (wrkMast.getMk().equals("Y")) {//鏍囪涓篩琛ㄧず闇�瑕佺敤鍒版満姊拌噦鎷f枡
+ if (wrkMast.getMk() != null && wrkMast.getMk().equals("Y")) {//鏍囪涓篩琛ㄧず闇�瑕佺敤鍒版満姊拌噦鎷f枡
Short targetSta = null;//鐩爣绔�
//鍒ゆ柇鏈烘鑷傛嫞鏂欑珯鏄惁绌洪棽
StaProtocol staProtocol303 = devpThread.getStation().get(303);
@@ -1982,19 +2002,21 @@
targetSta = (short) 317;
- //瑕嗙洊宸ヤ綔妗g洰鏍囩珯
- wrkMast.setStaNo(targetSta.intValue());
- if (wrkMastMapper.updateById(wrkMast) > 0) {
- //鍚�300绔欏啓鍏ョ洰鏍囩珯
- staProtocol = staProtocol.clone();
- staProtocol.setStaNo(targetSta);//绉诲姩鍒扮洰鏍囩珯
- boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol));
- try {
- Thread.sleep(500);
- } catch (Exception e) {
- e.printStackTrace();
+ if (wrkMast.getStaNo() != 303 && wrkMast.getStaNo() != 317) {
+ //瑕嗙洊宸ヤ綔妗g洰鏍囩珯
+ wrkMast.setStaNo(targetSta.intValue());
+ if (wrkMastMapper.updateById(wrkMast) > 0) {
+ //鍚�300绔欏啓鍏ョ洰鏍囩珯
+ staProtocol = staProtocol.clone();
+ staProtocol.setStaNo(targetSta);//绉诲姩鍒扮洰鏍囩珯
+ boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol));
+ try {
+ Thread.sleep(500);
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ continue;
}
- continue;
}
}
}
@@ -2003,28 +2025,30 @@
StaProtocol staProtocol317 = devpThread.getStation().get(317);
if (staProtocol303.isAutoing() && staProtocol303.isLoading() && staProtocol303.getWorkNo() != 0) {
//璋冨害鏈烘鑷�
- //鏌ヨ鏄惁鏈夊伐浣滄。
- WrkMast wrkMast = wrkMastMapper.selectByWorkNo(staProtocol303.getWorkNo().intValue());
- if (wrkMast == null) {
- continue;
- }
- WrkDetl wrkDetl = wrkDetlService.selectById(wrkMast.getWrkNo());
- if (wrkDetl == null) {
- continue;
- }
- RobotUtils.sendTask(staProtocol303.getWorkNo().toString(), wrkDetl.getAnfme().intValue(), "303");
+// //鏌ヨ鏄惁鏈夊伐浣滄。
+// WrkMast wrkMast = wrkMastMapper.selectByWorkNo(staProtocol303.getWorkNo().intValue());
+// if (wrkMast == null) {
+// continue;
+// }
+// WrkDetl wrkDetl = wrkDetlService.selectById(wrkMast.getWrkNo());
+// if (wrkDetl == null) {
+// continue;
+// }
+// RobotUtils.sendTask(staProtocol303.getWorkNo().toString(), wrkDetl.getAnfme().intValue(), "303");
+ RobotUtils.sendTask(staProtocol303.getWorkNo().toString(), -1, "303");
}else if (staProtocol317.isAutoing() && staProtocol317.isLoading() && staProtocol317.getWorkNo() != 0) {
//璋冨害鏈烘鑷�
- //鏌ヨ鏄惁鏈夊伐浣滄。
- WrkMast wrkMast = wrkMastMapper.selectByWorkNo(staProtocol317.getWorkNo().intValue());
- if (wrkMast == null) {
- continue;
- }
- WrkDetl wrkDetl = wrkDetlService.selectById(wrkMast.getWrkNo());
- if (wrkDetl == null) {
- continue;
- }
- RobotUtils.sendTask(staProtocol303.getWorkNo().toString(), wrkDetl.getAnfme().intValue(), "317");
+// //鏌ヨ鏄惁鏈夊伐浣滄。
+// WrkMast wrkMast = wrkMastMapper.selectByWorkNo(staProtocol317.getWorkNo().intValue());
+// if (wrkMast == null) {
+// continue;
+// }
+// WrkDetl wrkDetl = wrkDetlService.selectById(wrkMast.getWrkNo());
+// if (wrkDetl == null) {
+// continue;
+// }
+// RobotUtils.sendTask(staProtocol303.getWorkNo().toString(), wrkDetl.getAnfme().intValue(), "317");
+ RobotUtils.sendTask(staProtocol303.getWorkNo().toString(), -1, "317");
}
}
}
--
Gitblit v1.9.1