From 7c5a2e3430f3c0f9e6c4ba9dcdb025e59c1953cb Mon Sep 17 00:00:00 2001 From: Junjie <fallin.jie@qq.com> Date: 星期日, 01 十月 2023 10:06:50 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | 98 ++++++++++++++++++++++++++++++------------------ 1 files changed, 61 insertions(+), 37 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..8d279d6 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); @@ -1915,7 +1932,7 @@ Integer code = jsonObject.getInteger("code"); if (code.equals(200)) { StartupDto dto = jsonObject.getObject("data", StartupDto.class); - + barcodeThread.setBarcode(""); // // 鏇存柊绔欑偣淇℃伅 涓� 涓嬪彂plc鍛戒护 // staProtocol.setWorkNo(dto.getWorkNo().shortValue()); // staProtocol.setStaNo(dto.getStaNo().shortValue()); @@ -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