From 544556b5ea62dba4a002118088e82bce81cd63b4 Mon Sep 17 00:00:00 2001 From: whycq <123456> Date: 星期日, 05 五月 2024 11:43:20 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | 63 ++++++++++++++++++++++++------- 1 files changed, 49 insertions(+), 14 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 b28f535..56c9f1a 100644 --- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java @@ -167,7 +167,10 @@ staProtocol.setStaNo(inSta.getBackSta().shortValue()); devpThread.setPakMk(staProtocol.getSiteId(), false); MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol)); + MessageQueue.offer(SlaveType.Led, inSta.getLed(), new Task(3, errMsg)); } + + // 鍒ゆ柇鏄惁婊¤冻鍏ュ簱鏉′欢 if (staProtocol.isAutoing() @@ -179,16 +182,27 @@ if(Cools.isEmpty(barcode) || "NG".endsWith(barcode) || "NoRead".equals(barcode) || "00000000".equals(barcode)) { News.info("{}鍙锋潯鐮佹壂鎻忓櫒妫�娴嬫潯鐮佷俊鎭細{}", inSta.getBarcode(), barcode); //鏉$爜涓虹┖鎴栬�呬笉绗﹀悎锛岄��搴撳埌172绔欑偣 -// staProtocol.setWorkNo((short)9999); -// staProtocol.setStaNo((short)172); -// devpThread.setPakMk(staProtocol.getSiteId(), false); -// boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol)); -// if (!result) { -// throw new CoolException("鏇存柊plc绔欑偣淇℃伅澶辫触"); -// } + staProtocol.setWorkNo(wrkNo); + staProtocol.setStaNo(inSta.getBackSta().shortValue()); + wrkNo++; + devpThread.setPakMk(staProtocol.getSiteId(), false); + boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol)); + if (!result) { + throw new CoolException("鏇存柊plc绔欑偣淇℃伅澶辫触"); + } continue; } - + //鍒ゆ柇101鍜�104鏄惁鏄嫞鏂欍�佸苟鏉裤�佺洏鐐瑰啀鍏ュ簱 璁惧鏆備笉鏀寔101銆�104绔欑洏鐐�/鎷f枡鍏ュ簱 + WrkMast wrkMast1=wrkMastMapper.selectpj(inSta.getStaNo(),barcode); + if(!Cools.isEmpty(wrkMast1)){ + if (wrkMast1.getIoType()!=1){ + continue; + } + } + if( !Cools.isEmpty(barcode)&&!Cools.isEmpty(wrkMast1)){ + log.error("101鎴�104鎷f枡銆佸苟鏉裤�佺洏鐐瑰啀鍏ュ簱", wrkMast1.getWrkNo()); + continue; + } // 鍒ゆ柇閲嶅宸ヤ綔妗� WrkMast wrkMast = wrkMastMapper.selectPakInStep1(inSta.getStaNo(), barcode); if (wrkMast != null) { @@ -202,10 +216,18 @@ WrkMast checkPick = wrkMastService.selectOne(new EntityWrapper<WrkMast>() .eq("barcode", barcode) - .in("io_type", 107,103)); + .in("io_type", 107,103,57,53)); if (!Cools.isEmpty(checkPick)) { continue; + } else { + News.info("鏂版澘鍏ュ簱鏉$爜===>>" + barcode); } +// WrkMast checkPick2 = wrkMastService.selectOne(new EntityWrapper<WrkMast>() +// .eq("barcode", barcode) +// .in("io_type", 57,53)); +// if (!Cools.isEmpty(checkPick2)) { +// continue; +// } try { @@ -235,6 +257,8 @@ News.error(methodName + ":鏇存柊plc绔欑偣淇℃伅澶辫触"); throw new CoolException("鏇存柊plc绔欑偣淇℃伅澶辫触"); + }else { + ledThread.errorReset(); } @@ -415,7 +439,7 @@ if (!Cools.isEmpty(barcode)) { // log.info("{}鍙锋潯鐮佹壂鎻忓櫒妫�娴嬫潯鐮佷俊鎭細{}", pickSta.getBarcode(), barcode); - if ("NG".endsWith(barcode) || "NoRead".equals(barcode) || "00000000".equals(barcode)) { + if ("NG".endsWith(barcode) || "NoRead".equals(barcode) ) { if (!staProtocol.isLoading()) { continue; } @@ -532,12 +556,16 @@ TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); continue; } - + if (ledThread != null) { + ledThread.errorReset(); + } // 鏇存柊绔欑偣淇℃伅 涓� 涓嬪彂plc鍛戒护 staProtocol.setWorkNo(wrkMast.getWrkNo().shortValue()); staProtocol.setStaNo(wrkMast.getStaNo().shortValue()); devpThread.setPakMk(staProtocol.getSiteId(), false); boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol)); + + if (!result) { News.error(methodName + ":鍙戝竷鍛戒护鑷宠緭閫佺嚎闃熷垪澶辫触锛侊紒锛� [plc缂栧彿锛歿}]", devp.getId()); @@ -604,6 +632,7 @@ wrkMast.setCrnEndTime(new Date()); if (wrkMastMapper.updateById(wrkMast) != 0) { // 澶嶄綅鍫嗗灈鏈� + News.info("crnStnToOutStn鍫嗗灈鏈哄浣嶆椂宸ヤ綔鍙�===>>" + crnProtocol.getTaskNo()); crnThread.setResetFlag(true); } else { News.error(methodName + ":鏇存柊宸ヤ綔妗g殑宸ヤ綔鐘舵�佷负14澶辫触锛侊紒锛� [宸ヤ綔鍙�:{}]", wrkMast.getWrkNo()); @@ -780,6 +809,12 @@ // 鍫嗗灈鏈烘帶鍒惰繃婊� if (!crnProtocolNow.getStatusType().equals(CrnStatusType.IDLE) || crnProtocolNow.getTaskNo() != 0) { continue; + } + + // 宸茬粡瀛樺湪鍚婅溅鎵ц浠诲姟鏃讹紝鍒欒繃婊� + if (wrkMastMapper.selectWorking(slave.getId()) != null) { + break; +// return; } // 鍛戒护涓嬪彂鍖� -------------------------------------------------------------------------- @@ -1493,6 +1528,7 @@ } // 鍏ュ簱 + 搴撲綅杞Щ ==> 4.鍏ュ簱瀹屾垚 if (wrkMast.getWrkSts() == 3 || (wrkMast.getWrkSts() == 12 && wrkMast.getIoType() == 11)) { + log.error("鍏ュ簱瀹屾垚鍫嗗灈鏈轰换鍔�=========銆�"+JSON.toJSONString(wrkMast)); wrkMast.setWrkSts(4L); } else { continue; @@ -1503,6 +1539,7 @@ // 淇敼鎴愬姛鍚庡浣嶅爢鍨涙満 if (wrkMastMapper.updateById(wrkMast) > 0) { // 鍫嗗灈鏈哄浣� + News.info("storeFinished鍫嗗灈鏈哄浣嶆椂宸ヤ綔鍙�===>>" + crnProtocol.getTaskNo()); crnThread.setResetFlag(true); } } @@ -1814,9 +1851,7 @@ Double total = 0.0; EntityWrapper<LocDetl> wrapper = new EntityWrapper<>(); LocDetl locDetl = locDetlService.selectOne(wrapper.eq("zpallet", wrkDetl.getZpallet()).eq("matnr", wrkDetl.getMatnr())); - if (Cools.isEmpty(locDetl)) { - total = wrkDetl.getAnfme(); - } else { + if (!Cools.isEmpty(locDetl)) { total = locDetl.getAnfme(); } if (wrkMast.getIoType() == 101) { -- Gitblit v1.9.1