From 716f7e3dec477b1dffe2ff33182116f558be60b0 Mon Sep 17 00:00:00 2001 From: yxFwq <1> Date: 星期三, 01 一月 2025 15:22:24 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | 89 ++++++++++++++++++++++++++++++++++++-------- 1 files changed, 73 insertions(+), 16 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 56fd550..b874b5a 100644 --- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java @@ -7,6 +7,7 @@ import com.core.common.Cools; import com.core.common.DateUtils; import com.core.common.R; +import com.core.common.SpringUtils; import com.core.exception.CoolException; import com.zy.asrs.domain.enums.LedErrorAreaType; import com.zy.asrs.domain.enums.WorkNoType; @@ -57,13 +58,9 @@ public class MainServiceImpl { public static final long COMMAND_TIMEOUT = 5 * 1000; -// private static final int[][] execute = new int[][]{{1,4},{2,4},{3,4},{4,4},{5,6},{6,6},{7,4},{8,4},{9,3},{10,4},{11,4}}; private static final int[][] execute = new int[][]{{1,4},{2,4},{3,4},{4,4},{5,6},{6,6},{7,4},{8,4},{9,3},{10,4},{11,4}}; -// private static final Integer jarMaxLoc1 = 7; private static Integer jarMaxLoc = 0; -// private static Integer signBigTurn = 0; -// private static Integer signSmallTurn = 0; private static final Float jarTemperature = 50F; @Autowired private CommonService commonService; @@ -2273,7 +2270,7 @@ staProtocolOther1 = staProtocolOther1.clone(); } - if (staProtocolOther1.isAutoing() || staProtocolOther1.getWorkNo()!=0){ + if (staProtocolOther1.isLoading() || !staProtocolOther1.getWorkNo().equals(0)){ return; } @@ -2284,7 +2281,7 @@ } else { staProtocolOther2 = staProtocolOther2.clone(); } - if (staProtocolOther2.isAutoing() || staProtocolOther2.getWorkNo()!=0){ + if (staProtocolOther2.isLoading() || !staProtocolOther2.getWorkNo().equals(0)){ return; } } @@ -3098,18 +3095,26 @@ continue; } + Integer turnBigInt = 0; if (wrkMast.booleanStaNoSign()){ RgvOneSign rgvOneSign = rgvOneSignMapper.selectOneSign("LineUp"+wrkMast.getStaNo()); if (Cools.isEmpty(rgvOneSign)){ continue; } - if (rgvOneSign.getRgvOneSign()>=2){ + RgvOneSign trunBig = rgvOneSignMapper.selectOneSign("TrunBig"+wrkMast.getStaNo()); + if (Cools.isEmpty(trunBig)){ continue; } -// int wrkCount = wrkMastMapper.selectCount(new EntityWrapper<WrkMast>().eq("io_type", 110).gt("sta_no", 309).lt("sta_no", 314).gt("wrk_sts",11L)); -// if (wrkCount>=12){ -// continue; -// } + turnBigInt = trunBig.getRgvOneSign(); + int wrkCount = wrkMastMapper.selectCount(new EntityWrapper<WrkMast>().eq("sta_no", wrkMast.getStaNo()).eq("wrk_sts",12L)); + + if (trunBig.getRgvOneSign()+wrkCount+rgvOneSign.getRgvOneSign()>2){ + continue; + } + int wrkCountGt = wrkMastMapper.selectCount(new EntityWrapper<WrkMast>().eq("sta_no", wrkMast.getStaNo()).gt("wrk_sts",11L)); + if (wrkCountGt > 2){ + continue; + } // RgvOneSign bigTurn = rgvOneSignMapper.selectOneSign("bigTurn"); // if (Cools.isEmpty(bigTurn)){ // continue; @@ -3266,6 +3271,9 @@ crnCommand.setDestinationPosX((short)0); // 鐩爣搴撲綅鎺� crnCommand.setDestinationPosY((short)0); // 鐩爣搴撲綅鍒� crnCommand.setDestinationPosZ((short)0); // 鐩爣搴撲綅灞� + if (wrkMast.booleanStaNoSign()){ + updateRgvOneSign("TrunBig"+wrkMast.getStaNo(),turnBigInt+1); + } if (!MessageQueue.offer(SlaveType.Crn, wrkMast.getCrnNo(), new Task(crnStation==1? 2:5, crnCommand))) { log.error("鍫嗗灈鏈哄懡浠や笅鍙戝け璐ワ紝鍫嗗灈鏈哄彿={}锛屼换鍔℃暟鎹�={}", wrkMast.getCrnNo(), JSON.toJSONString(crnCommand)); } else { @@ -3347,6 +3355,24 @@ // signBigTurn = 0; // } + } + + public void updateRgvOneSign(String signType,Integer oneSign){ + RgvOneSignMapper rgvOneSignMapper = SpringUtils.getBean(RgvOneSignMapper.class); + + try{ + RgvOneSign rgvOneSign = rgvOneSignMapper.selectOneSign(signType); + if (!Cools.isEmpty(rgvOneSign)){ + rgvOneSign.setRgvOneSign(oneSign); + rgvOneSignMapper.updateById(rgvOneSign); + } + } catch (Exception e){ + RgvOneSign rgvOneSign = rgvOneSignMapper.selectOneSign(signType); + if (!Cools.isEmpty(rgvOneSign)){ + rgvOneSign.setRgvOneSign(999); + rgvOneSignMapper.updateById(rgvOneSign); + } + } } /** @@ -4022,7 +4048,7 @@ } else { staProtocol = staProtocol.clone(); } - if (emptyInSta.getStaNo()==607 && staProtocol.getStaNo()==0 && staProtocol.getWorkNo()==0 + if (emptyInSta.getStaNo()==607 && staProtocol.getStaNo()==0 && staProtocol.getWorkNo().equals(0) && staProtocol.isLoading() && staProtocol.isAutoing() && staProtocol.isInEnable()){ String barcode = staProtocol.getBarcode(); if (!Cools.isEmpty(barcode)) { @@ -5132,7 +5158,7 @@ if (jarMaxLoc == 0 || basJarOther.getJarCount() == 0) { break; } - int count = basJarMastService.selectCount(new EntityWrapper<BasJarMast>().eq("jar_regin", basJar.getRegion()).lt("status", 17).gt("status", 6)); + int count = basJarMastService.selectCount(new EntityWrapper<BasJarMast>().eq("jar_regin", basJar.getRegion()).lt("status", 17).gt("status", 5)); if (count>0){ break; } @@ -5941,9 +5967,9 @@ if (!basJarMastListOther.isEmpty() && basJarMastListOther.size() < basJarOther.getJarCount()){ return false; } - if (basJarMastService.selectJarMastOperation(jarSlave.getJarOtherId(),4)!=0 && !basJarMastService.selectJarMastOperation(jarSlave.getJarOtherId(), 4).equals(basJarOther.getJarCount() )){ - return false; - } +// if (basJarMastService.selectJarMastOperation(jarSlave.getJarOtherId(),4)!=0 && !basJarMastService.selectJarMastOperation(jarSlave.getJarOtherId(), 4).equals(basJarOther.getJarCount() )){ +// return false; +// } // //涓存椂 // if (basJar.getJarCode()==1){ @@ -8064,6 +8090,30 @@ log.error("{}鍙风~鍖栫綈鏌ヨ璁惧妗f鏃犱俊鎭紒锛侊紒",jarProtocol.getJarNo()); continue; } + if (jarProtocol.getJarErr()==0 && (jarProtocol.getStatusType().equals(JarStatusType.WAITING1) || jarProtocol.getStatusType().equals(JarStatusType.MOVING)) + && jarProtocol.isRightDoor() && jarProtocol.isLeftDoor() + && jarProtocol.leftDoorOpen==0 && jarProtocol.leftDoorClose==0 && jarProtocol.rightDoorOpen==0 && jarProtocol.rightDoorClose==0 + ){ + List<BasJarMast> basJarMastList = basJarMastService.getJarMastByJarIdAndStatusList(jarSlave.getId(), new ArrayList<Integer>() {{ + add(6);//纭寲瀹屾垚 + }}); + if (!basJarMastList.isEmpty()){ + WrkMastExecute wrkMastExecuteSou = new WrkMastExecute(); + wrkMastExecuteSou.setWrkSts(3); + List<WrkMastExecute> wrkMastExecuteList = wrkMastExecuteService.selectWrkMastExecuteByWrk(wrkMastExecuteSou); + for (WrkMastExecute wrkMastExecute : wrkMastExecuteList){ + if (wrkMastExecute.getIoType() == 3){ + wrkMastExecute.setWrkSts(4); + if (!wrkMastExecuteService.updateById(wrkMastExecute)){ + log.error("纭寲缃怞ar鍛戒护淇敼澶辫触===>鏇存柊wrkMastExecute澶辫触锛宩ar鍙�={},浠诲姟鏁版嵁={},纭寲缃愭暟鎹�={},sign={}", + wrkMastExecute.getSteId(), JSON.toJSON(wrkMastExecute), JSON.toJSON(jarProtocol),sign); + return false; + } + return true; + } + } + } + } //WAITING2(4, "纭寲瀹屾垚"), if (jarProtocol.getJarErr()==0 && jarProtocol.getStatusType().equals(JarStatusType.WAITING2) && !jarProtocol.isRightDoor() && !jarProtocol.isLeftDoor() @@ -8420,6 +8470,13 @@ /** * ste鍏呯數浠诲姟鍒涘缓 //瀹屾垚 */ + public synchronized void signTrunBig() { + updateRgvOneSign("TrunSma126",0); + updateRgvOneSign("TrunSma131",0); + updateRgvOneSign("TrunBig310",0); + updateRgvOneSign("TrunBig312",0); + } + public synchronized boolean jarChargeGenerate() { try{ //80%鐢甸噺 鏃犱换鍔� 鍏呯數 >50鐢甸噺 鏈変换鍔� 鏂數 -- Gitblit v1.9.1