From a017829dfbcd09d395256d9714a34c3317c1b12d Mon Sep 17 00:00:00 2001 From: ZY <zc> Date: 星期四, 25 七月 2024 13:43:27 +0800 Subject: [PATCH] 本地代码提交 --- src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | 41 +++++++++++++++++++++++++++++++---------- 1 files changed, 31 insertions(+), 10 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 0999197..23f09b5 100644 --- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java @@ -156,8 +156,10 @@ errMsg = "鎵爜澶辫触"; back = true; } + // 閫�鍥� if (back) { + log.info("errmsg: " + errMsg); // News.warn("鎵爜鍏ュ簱澶辫触锛寋}鍏ュ簱绔欏洜{}寮傚父锛屾墭鐩樺凡琚��鍥�", inSta.getStaNo(), errMsg); MessageQueue.offer(SlaveType.Led, inSta.getLed(), new Task(3, errMsg)); @@ -250,7 +252,8 @@ StartupDto dto = jsonObject.getObject("data", StartupDto.class); barcodeThread.setBarcode(""); staProtocol.setWorkNo(dto.getWorkNo()); - staProtocol.setStaNo(RouteUtils.SouStaEnd(dto.getStaNo(),dto.getSourceStaNo())); + //staProtocol.setStaNo(RouteUtils.SouStaEnd(dto.getStaNo(),dto.getSourceStaNo())); + staProtocol.setStaNo(dto.getStaNo().shortValue()); devpThread.setPakMk(staProtocol.getSiteId(), false); boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol)); log.error("杈撻�佺嚎涓嬪彂2锛�"+dto.getWorkNo()+","+dto.getStaNo()); @@ -973,9 +976,9 @@ crnCommand.setSourcePosX(crnStn.getRow().shortValue()); // 婧愬簱浣嶆帓 crnCommand.setSourcePosY(crnStn.getBay().shortValue()); // 婧愬簱浣嶅垪 crnCommand.setSourcePosZ(crnStn.getLev().shortValue()); // 婧愬簱浣嶅眰 - crnCommand.setDestinationPosX(locMast.getRow1().shortValue()); // 鐩爣搴撲綅鎺� - crnCommand.setDestinationPosY(locMast.getBay1().shortValue()); // 鐩爣搴撲綅鍒� - crnCommand.setDestinationPosZ(locMast.getLev1().shortValue()); // 鐩爣搴撲綅灞� + crnCommand.setDestinationPosX((short)(locMast.getRow1()+slave.getOffset())); // 鐩爣搴撲綅鎺� + crnCommand.setDestinationPosY((short)(locMast.getBay1()+slave.getOffset())); // 鐩爣搴撲綅鍒� + crnCommand.setDestinationPosZ((short)(locMast.getLev1()+slave.getOffset())); // 鐩爣搴撲綅灞� crnCommand.setTraySize(locMast.getLocType1() == 2); if (!MessageQueue.offer(SlaveType.Crn, wrkMast.getCrnNo(), new Task(2, crnCommand))) { News.error(""+mark+" - 1"+" - 16"+" - 鍫嗗灈鏈哄懡浠や笅鍙戝け璐ワ紝鍫嗗灈鏈哄彿={}锛屼换鍔℃暟鎹�={}", wrkMast.getCrnNo(), JSON.toJSON(crnCommand)); @@ -1132,9 +1135,9 @@ crnCommand.setTaskNo(wrkMast.getWrkNo().shortValue()); // 宸ヤ綔鍙� // crnCommand.setAckFinish((short) 0); // 浠诲姟瀹屾垚纭浣� crnCommand.setTaskMode(CrnTaskModeType.LOC_MOVE); // 浠诲姟妯″紡: 搴撲綅绉昏浆 - crnCommand.setSourcePosX(sourceSta.getRow1().shortValue()); // 婧愬簱浣嶆帓 - crnCommand.setSourcePosY(sourceSta.getBay1().shortValue()); // 婧愬簱浣嶅垪 - crnCommand.setSourcePosZ(sourceSta.getLev1().shortValue()); // 婧愬簱浣嶅眰 + crnCommand.setSourcePosX((short)(sourceSta.getRow1()+slave.getOffset())); // 婧愬簱浣嶆帓 + crnCommand.setSourcePosY((short)(sourceSta.getBay1()+slave.getOffset())); // 婧愬簱浣嶅垪 + crnCommand.setSourcePosZ((short)(sourceSta.getLev1()+slave.getOffset())); // 婧愬簱浣嶅眰 crnCommand.setDestinationPosX(crnStn.getRow().shortValue()); // 鐩爣搴撲綅鎺� crnCommand.setDestinationPosY(crnStn.getBay().shortValue()); // 鐩爣搴撲綅鍒� crnCommand.setDestinationPosZ(crnStn.getLev().shortValue()); // 鐩爣搴撲綅灞� @@ -1579,7 +1582,8 @@ // 鏇存柊绔欑偣淇℃伅 涓� 涓嬪彂plc鍛戒护 staProtocol.setWorkNo(dto.getWorkNo()); - staProtocol.setStaNo(staProtocol.getSiteId().shortValue()); + staProtocol.setStaNo(dto.getStaNo().shortValue()); + //staProtocol.setStaNo(staProtocol.getSiteId().shortValue()); devpThread.setPakMk(staProtocol.getSiteId(), false); boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol)); log.error("杈撻�佺嚎涓嬪彂6锛�"+dto.getWorkNo()+","+staProtocol.getSiteId()); @@ -2332,12 +2336,15 @@ * 灏忚溅鍦板浘鏇存柊 鏇存柊閿� * */ public synchronized boolean rgvMapUpdate(BasRgvMap basRgvMapCurrent,Integer staStart,Integer staEnd,String sign){ + log.info("灏忚溅鍦板浘鏇存柊锛乕鏍囪锛歿}];[BasRgvMap锛歿}];[staStart锛歿}];[staEnd锛歿}];",sign,JSON.toJSONString(basRgvMapCurrent),staStart,staEnd); // List<Integer> integers = RouteUtils.RouteMapCurrentFar(basRgvMapCurrent.getNowRoute(),staStart,staEnd, basRgvMapCurrent.getLockStartRoute()); //鏇存柊褰撳墠灏忚溅閿� try{ Integer farCurrentStaNo = RouteUtils.RouteIndexFarMas(basRgvMapCurrent.getNowRoute(), staStart, staEnd, basRgvMapCurrent.getLockStartRoute());//鑾峰彇鏈�杩滅珯鐐� + log.info("灏忚溅鍦板浘鏇存柊锛佽幏鍙栨渶杩滅珯鐐�;[farCurrentStaNo锛歿}]",farCurrentStaNo); Integer fallMerge = RouteUtils.RouteIndexFarMas(basRgvMapCurrent.getRgvNo(), farCurrentStaNo); //鑾峰彇鍚堝苟骞叉秹椤� + log.info("灏忚溅鍦板浘鏇存柊锛佽幏鍙栧悎骞跺共娑夐」;[fallMerge锛歿}]",fallMerge); basRgvMapCurrent.setLockEndRoute(fallMerge); Integer i = basRgvMapMapper.updateById(basRgvMapCurrent); // if (i>0){ @@ -2346,9 +2353,14 @@ //鏇存柊鍙︿竴鍙板皬杞﹀湴鍥� Integer rgvNoOther = basRgvMapCurrent.getRgvNoOther(basRgvMapCurrent.getRgvNo()); + log.info("灏忚溅鍦板浘鏇存柊锛佸彟涓�鍙板皬杞﹀彿;[rgvNoOther锛歿}]",rgvNoOther); + BasRgvMap basRgvMapOther = basRgvMapMapper.selectById(rgvNoOther); + log.info("灏忚溅鍦板浘鏇存柊锛佸彟涓�鍙板皬杞�;[basRgvMapOther锛歿}]",JSON.toJSONString(basRgvMapOther)); + List<Integer> integers = RouteUtils.RouteMapCurrentFar(fallMerge, basRgvMapCurrent.getLockStartRoute()); Integer lockEndRoute = RouteUtils.RouteMapOtherFarStnNo(integers, basRgvMapCurrent.getLockStartRoute());//鍙︿竴鍙板皬杞﹀彲娲诲姩鏈�杩滀綅缃� + log.info("灏忚溅鍦板浘鏇存柊锛佸彟涓�鍙板皬杞﹀彲娲诲姩鏈�杩滀綅缃�;[lockEndRoute锛歿}]",lockEndRoute); basRgvMapOther.setEndRoute(lockEndRoute); Integer i1 = basRgvMapMapper.updateById(basRgvMapOther); // if (i1>0){ @@ -2356,7 +2368,7 @@ // } return true; }catch (Exception e){ - log.error("灏忚溅鍦板浘鏇存柊鍑洪敊锛�"); + log.error("灏忚溅鍦板浘鏇存柊鍑洪敊锛佸紓甯稿師鍥狅細"+e); return false; } } @@ -2574,8 +2586,15 @@ basRgvMap.setNowRoute(rgvProtocol.getRgvPosI()); //鏇存柊灏忚溅褰撳墠浣嶇疆绔欑偣鍙� List<WrkMastSta> wrkMastStaList = wrkMastStaMapper.selectNoInterfereList(route, route); for (WrkMastSta wrkMastSta : wrkMastStaList){ - if (wrkMastSta.getType()!=0 || wrkMastSta.getWrkType()!=3){//1:婊$増 3锛氬彇鏀� + if (wrkMastSta.getType()!=0 || wrkMastSta.getWrkType()!=3 || wrkMastSta.getWrkSts()!=0){//1:婊$増 3锛氬彇鏀� continue; + } + //鍒ゆ柇宸ヤ綔缁撴潫浣嶇疆鐘舵�� + BasDevp devNo = basDevpService.selectOne(new EntityWrapper<BasDevp>().eq("dev_no", wrkMastSta.getStaEnd())); + if (!Cools.isEmpty(devNo)){ + if (devNo.getAutoing().equals("Y") && !devNo.getWrkNo().equals(0) && !devNo.getLoading().equals("N")){ + continue; + } } boolean sign = rgvTakeFullAll(basRgvMap.getRgvNo(), wrkMastSta); //鍛戒护涓嬪彂 wrkEnable = true; @@ -2594,9 +2613,11 @@ break; }else { log.error("3864琛岋紝璐х墿鎼繍浠诲姟锛氬伐浣滃彿{}鎵�灞炰换鍔′笅鍙戝悗鍦板浘鍚屾澶辫触",wrkMastSta.getWrkNo()); + Thread.sleep(500); } } else { log.error("宸ヤ綔鍙穥}鎵�灞炰换鍔′笅鍙戝け璐�",wrkMastSta.getWrkNo()); + Thread.sleep(500); } break; } -- Gitblit v1.9.1