From d13a01d1769f29b336e5b9f8612c6d41aaabbbb1 Mon Sep 17 00:00:00 2001 From: Junjie <fallin.jie@qq.com> Date: 星期五, 22 十一月 2024 20:42:20 +0800 Subject: [PATCH] #读取地图文件优化 --- src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | 51 ++++++++++++++++++++++++++++++++++++++------------- 1 files changed, 38 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 b342bbe..1f5823c 100644 --- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java @@ -112,6 +112,8 @@ private NavigateMapUtils navigateMapUtils; @Autowired private WrkDetlLogService wrkDetlLogService; + @Autowired + private MatService matService; /** @@ -2513,7 +2515,7 @@ /** * AGV琛ヨ揣 => 鐢熸垚鍏ュ簱閫氱煡妗� */ - public void robotGenerateAgvTask() { + public synchronized void robotGenerateAgvTask() { try { //妫�娴�300绔欐槸鍚﹁嚜鍔ㄣ�佹湁鐗┿�佸伐浣滃彿 for (DevpSlave devp : slaveProperties.getDevp()) { @@ -2539,10 +2541,13 @@ //鍒ゆ柇鏈烘鑷傛嫞鏂欑珯鏄惁绌洪棽 StaProtocol staProtocol303 = devpThread.getStation().get(303); StaProtocol staProtocol317 = devpThread.getStation().get(317); - if (staProtocol303.isAutoing() && !staProtocol303.isLoading()) { + + List<WrkMast> wrkMasts303 = wrkMastService.selectList(new EntityWrapper<WrkMast>().eq("wrk_sts", 25).eq("sta_no", 303)); + List<WrkMast> wrkMasts317 = wrkMastService.selectList(new EntityWrapper<WrkMast>().eq("wrk_sts", 25).eq("sta_no", 317)); + if (staProtocol303.isAutoing() && !staProtocol303.isLoading() && wrkMasts303.isEmpty()) { //鑷姩銆佹棤鐗� targetSta = (short) 303; - } else if (staProtocol317.isAutoing() && !staProtocol317.isLoading()) { + } else if (staProtocol317.isAutoing() && !staProtocol317.isLoading() && wrkMasts317.isEmpty()) { //鑷姩銆佹棤鐗� targetSta = (short) 317; } else { @@ -2613,7 +2618,7 @@ /** * AGV琛ヨ揣 => 鏈烘鑷傛嫞鏂� */ - public void agvRestockByRobot() { + public synchronized void agvRestockByRobot() { try { //妫�娴�300绔欐槸鍚﹁嚜鍔ㄣ�佹湁鐗┿�佸伐浣滃彿 for (DevpSlave devp : slaveProperties.getDevp()) { @@ -2674,7 +2679,7 @@ /** * AGV琛ヨ揣(閫氱煡AGV鍙栬揣) */ - public void agvRestockInto() { + public synchronized void agvRestockInto() { try { //妫�娴�309鍜�312绔欐槸鍚﹁嚜鍔ㄣ�佹湁鐗� for (DevpSlave devp : slaveProperties.getDevp()) { @@ -2695,8 +2700,11 @@ String barcode = barcodeThread.getBarcode(); if (!Cools.isEmpty(barcode)) { //閫氱煡AGV鍙栬揣 - agvRestockCall("301-1", barcode); - log.info("閫氱煡AGV鍙栬揣锛屾潯鐮佸彿锛�" + barcode); + boolean result = agvRestockCall("301-1", barcode); + log.info("鏈烘鑷傞�氱煡AGV鍙栬揣锛屾潯鐮佸彿锛�" + barcode); + if (result) { + barcodeThread.setBarcode(""); + } } } @@ -2709,8 +2717,11 @@ String barcode = barcodeThread.getBarcode(); if (!Cools.isEmpty(barcode)) { //閫氱煡AGV鍙栬揣 - agvRestockCall("302-1", barcode); - log.info("閫氱煡AGV鍙栬揣锛屾潯鐮佸彿锛�" + barcode); + boolean result = agvRestockCall("302-1", barcode); + log.info("鏈烘鑷傞�氱煡AGV鍙栬揣锛屾潯鐮佸彿锛�" + barcode); + if (result) { + barcodeThread.setBarcode(""); + } } } } @@ -2772,7 +2783,7 @@ /** * AGV琛ヨ揣(鎮寕绾块�氱煡AGV鍙栬揣) */ - public void agvRestockIntoByHangingWire() { + public synchronized void agvRestockIntoByHangingWire() { try { //妫�娴�350鍜�351鎵爜鍣� int[] barcodeStaNo = {11, 12,14,16,18,20};//11 => 350绔欐壂鐮佸櫒,12 => 351绔欐壂鐮佸櫒 @@ -2818,7 +2829,7 @@ /** * AGV鎷f枡绔欑偣淇℃伅 */ - public void agvCurrentContainerCodeInfoWire() { + public synchronized void agvCurrentContainerCodeInfoWire() { try { //妫�娴�350鍜�351鎵爜鍣� int[] barcodeStaNo = {13, 15,17,19};//11 => 350绔欐壂鐮佸櫒,12 => 351绔欐壂鐮佸櫒 @@ -2998,7 +3009,14 @@ if (remainNum < 0) { remainNum = 0; } - ledCommand.getMatDtos().add(new MatDto(wrkDetl.getMatnr(), wrkDetl.getMaktx(), wrkDetl.getAnfme(), remainNum, wrkDetl.getSpecs(), wrkDetl.getSuppCode(), wrkDetl.getOrderNo())); + String matnr = wrkDetl.getMatnr(); + Mat mat = matService.selectByMatnr(wrkDetl.getMatnr()); + if (mat != null) { + if (!mat.getMatnr().equals(mat.getMatnr2())) { + matnr += " - " + mat.getMatnr2(); + } + } + ledCommand.getMatDtos().add(new MatDto(matnr, wrkDetl.getMaktx(), wrkDetl.getAnfme(), remainNum, wrkDetl.getSpecs(), wrkDetl.getSuppCode(), wrkDetl.getOrderNo())); }); }else { List<WrkDetlLog> wrkDetlLogs = wrkDetlLogService.selectLatestByWorkNo(wrkNo, barcode); @@ -3007,7 +3025,14 @@ if (remainNum < 0) { remainNum = 0; } - ledCommand.getMatDtos().add(new MatDto(wrkDetlLog.getMatnr(), wrkDetlLog.getMaktx(), wrkDetlLog.getAnfme(), remainNum, wrkDetlLog.getSpecs(), wrkDetlLog.getSuppCode())); + String matnr = wrkDetlLog.getMatnr(); + Mat mat = matService.selectByMatnr(wrkDetlLog.getMatnr()); + if (mat != null) { + if (!mat.getMatnr().equals(mat.getMatnr2())) { + matnr += " - " + mat.getMatnr2(); + } + } + ledCommand.getMatDtos().add(new MatDto(matnr, wrkDetlLog.getMaktx(), wrkDetlLog.getAnfme(), remainNum, wrkDetlLog.getSpecs(), wrkDetlLog.getSuppCode())); } } -- Gitblit v1.9.1