From 8f93d32b15cff5287a07649da92bd5b6276c14e2 Mon Sep 17 00:00:00 2001 From: lsh <lsh123456> Date: 星期三, 26 六月 2024 22:13:47 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | 111 +++++++++++++++++++++++++++++++++++++++++++++---------- 1 files changed, 91 insertions(+), 20 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 6f1a206..358e743 100644 --- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java @@ -4522,8 +4522,7 @@ log.error("{}鍙风~鍖栫綈鏌ヨ璁惧妗f鏃犱俊鎭紒锛侊紒",jarProtocol.getJarNo()); return false; } - - if (basJar.getJarMode()!=1 && basJar.getJarMode()!=0){ + if (basJar.getJarMode()!=2){ return false; } @@ -4796,7 +4795,7 @@ for (BasJarMast basJarMast : basJarMastList){ JarSlave.StaStn staStn = null; for (JarSlave.StaStn staStn1 : jarSlave.getJarInSta()){ - if (staStn1.getStaNo().equals(basJarMast.getEnterStaNo())){ + if (staStn1.getStaNo().equals(basJarMast.getJarEnterStaNo())){ staStn = staStn1; } } @@ -4848,16 +4847,15 @@ //闂ㄤ綔涓� 鏃� //鑷姩銆佺┖闂层�佸彸闂ㄥ叧闂�� Other宸﹂棬鍏抽棴 - if (jarProtocol.isAutoing() && !jarProtocol.isRightDoor() && jarProtocol.jarErr==0 - && jarProtocol.leftDoorOpen==0 && jarProtocol.leftDoorClose==0 && jarProtocol.rightDoorOpen==0 && jarProtocol.rightDoorClose==0 - && !jarOtherProtocol.isLeftDoor() && jarOtherProtocol.leftDoorOpen==0 && jarOtherProtocol.leftDoorClose==0){ + if (jarProtocol.isAutoing() && jarProtocol.jarErr==0 + && jarProtocol.leftDoorOpen==0 && jarProtocol.leftDoorClose==0 && jarProtocol.rightDoorOpen==0 && jarProtocol.rightDoorClose==0){ if (!jarProtocol.isLeftDoor() && basJarMast.getStatus()==0){ //鐢熸垚寮�闂ㄤ换鍔� OpenTheDoor if (!jarWrkMastExecuteGenerateExecute(basJar,basJarMast,basJar.getJarNo(),new int[]{basJar.getEnterSteNo(),basJar.getEnterRgvNo(),1,1})){ log.error("JarWrkMastExecute浠诲姟鍒涘缓===>鎵ц寮傚父===銆嬪紓甯告暟鎹細BasJar:"+ JSON.toJSONString(basJar)+";BasJarMast:"+JSON.toJSONString(basJarMast)); } return true; - } else if (jarProtocol.statusType == JarStatusType.WAITING3 && jarProtocol.isLeftDoor()){ + } else if ((jarProtocol.statusType == JarStatusType.WAITING3 || jarProtocol.statusType == JarStatusType.MOVING) && jarProtocol.isLeftDoor()){ //鐢熸垚鍏ョ~鍖栫綈浠诲姟 if (!jarWrkMastExecuteGenerateExecute(basJar,basJarMast,basJar.getJarNo(),new int[]{basJar.getEnterSteNo(),basJar.getEnterRgvNo(),5,1})){ log.error("JarWrkMastExecute浠诲姟鍒涘缓===>鎵ц寮傚父===銆嬪紓甯告暟鎹細BasJar:"+ JSON.toJSONString(basJar)+";BasJarMast:"+JSON.toJSONString(basJarMast)); @@ -5325,7 +5323,7 @@ } } } catch (Exception e){ - + log.error("JarWrkMastExecute浠诲姟鍒涘缓===>Action==>涓嬪彂"+e.getMessage()); } } @@ -5352,7 +5350,7 @@ return false; } - BasJar basJar = basJarMapper.selectByJarNo(jarProtocol.getJarNo()); + BasJar basJar = basJarMapper.selectById(jarProtocol.getJarNo()); if (Cools.isEmpty(basJar)){ log.error("{}鍙风~鍖栫綈鏌ヨ璁惧妗f鏃犱俊鎭紒锛侊紒",jarProtocol.getJarNo()); return false; @@ -5469,7 +5467,7 @@ return false; } - BasJar basJar = basJarMapper.selectByJarNo(jarProtocol.getJarNo()); + BasJar basJar = basJarMapper.selectById(jarProtocol.getJarNo()); if (Cools.isEmpty(basJar)){ log.error("{}鍙风~鍖栫綈鏌ヨ璁惧妗f鏃犱俊鎭紒锛侊紒",jarProtocol.getJarNo()); return false; @@ -5586,7 +5584,7 @@ return false; } - BasJar basJar = basJarMapper.selectByJarNo(jarProtocol.getJarNo()); + BasJar basJar = basJarMapper.selectById(jarProtocol.getJarNo()); if (Cools.isEmpty(basJar)){ log.error("{}鍙风~鍖栫綈鏌ヨ璁惧妗f鏃犱俊鎭紒锛侊紒",jarProtocol.getJarNo()); return false; @@ -5597,7 +5595,7 @@ // return false; // } - DevpThread devpThread = (DevpThread) SlaveConnection.get(SlaveType.Devp, 1); + DevpThread devpThread = (DevpThread) SlaveConnection.get(SlaveType.Devp, 2); StaProtocol staProtocolRGV = devpThread.getStation().get(basJar.getEnterRgvNo()); if (staProtocolRGV == null) { return false; @@ -5639,8 +5637,8 @@ } //璋冭溅 == > 鍙栬揣 if (jarRgvGetTake(wrkMastExecute - ,SteAndJarUtil.getRgvJarNowRow(wrkMastExecute.getJarEnterStaNo())==1 - ,SteAndJarUtil.getRgvJarNowRow(wrkMastExecute.getJarEnterStaNo())==2)){ + ,SteAndJarUtil.getRgvStaRow(wrkMastExecute.getJarEnterStaNo())==1 + ,SteAndJarUtil.getRgvStaRow(wrkMastExecute.getJarEnterStaNo())==3)){ log.error("骞宠 杞GV鍛戒护涓嬪彂澶辫触锛宺gv鍙�={},浠诲姟鏁版嵁={},纭寲缃愭暟鎹�={},sign={}", wrkMastExecute.getJarId(), JSON.toJSON(wrkMastExecute), JSON.toJSON(jarProtocol),sign); } @@ -5698,7 +5696,7 @@ return false; } - BasJar basJar = basJarMapper.selectByJarNo(jarProtocol.getJarNo()); + BasJar basJar = basJarMapper.selectById(jarProtocol.getJarNo()); if (Cools.isEmpty(basJar)){ log.error("{}鍙风~鍖栫綈鏌ヨ璁惧妗f鏃犱俊鎭紒锛侊紒",jarProtocol.getJarNo()); return false; @@ -5808,7 +5806,7 @@ return false; } - BasJar basJar = basJarMapper.selectByJarNo(jarProtocol.getJarNo()); + BasJar basJar = basJarMapper.selectById(jarProtocol.getJarNo()); if (Cools.isEmpty(basJar)){ log.error("{}鍙风~鍖栫綈鏌ヨ璁惧妗f鏃犱俊鎭紒锛侊紒",jarProtocol.getJarNo()); return false; @@ -5824,7 +5822,7 @@ return false; } - BasJar basJarOther = basJarMapper.selectByJarNo(jarProtocolOther.getJarNo()); + BasJar basJarOther = basJarMapper.selectById(jarProtocolOther.getJarNo()); if (Cools.isEmpty(basJarOther)){ log.error("{}鍙风~鍖栫綈鏌ヨ璁惧妗f鏃犱俊鎭紒锛侊紒",jarProtocolOther.getJarNo()); return false; @@ -5966,7 +5964,7 @@ // return false; // } - BasJar basJar = basJarMapper.selectByJarNo(wrkMastExecute.getJarId()); + BasJar basJar = basJarMapper.selectById(wrkMastExecute.getJarId()); if (Cools.isEmpty(basJar)){ log.error("{}鍙峰喎鍗存Ы鏌ヨ璁惧妗f鏃犱俊鎭紒锛侊紒",wrkMastExecute.getJarId()); return false; @@ -6080,7 +6078,7 @@ return false; } - BasJar basJar = basJarMapper.selectByJarNo(jarProtocol.getJarNo()); + BasJar basJar = basJarMapper.selectById(jarProtocol.getJarNo()); if (Cools.isEmpty(basJar)){ log.error("{}鍙风~鍖栫綈鏌ヨ璁惧妗f鏃犱俊鎭紒锛侊紒",jarProtocol.getJarNo()); return false; @@ -6442,6 +6440,9 @@ public synchronized boolean jarWrkMastExecuteGenerateJarComplete(Integer sign) { try{ for (JarSlave jarSlave : slaveProperties.getJar()) { + if (jarSlave.getId()>4){ + continue; + } // 鑾峰彇纭寲缃愪俊鎭� JarThread jarThread = (JarThread) SlaveConnection.get(SlaveType.Jar, jarSlave.getId()); JarProtocol jarProtocol = jarThread.getJarProtocol(); @@ -6458,7 +6459,9 @@ } //WAITING2(4, "纭寲瀹屾垚"), if (jarProtocol.getJarErr()==0 && jarProtocol.getStatusType().equals(JarStatusType.WAITING2) - && jarProtocol.isRightDoor() && jarProtocol.isLeftDoor() ){ + && 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(5);//纭寲涓� }}); @@ -6469,6 +6472,74 @@ if (basJarMastList.size()!=integer){ log.error("{}鍙风~鍖栫綈纭寲瀹屾垚淇敼纭寲妗f鐘舵�佺粨鏋滄暟閲忎笉涓�鑷达紒锛侊紒鏌ヨ璧勬枡鏁伴噺={}锛屾洿鏂拌繑鍥炴暟閲�={}",jarProtocol.getJarNo(),basJarMastList.size(),integer); } + } else if (jarProtocol.getJarErr()==0 + && jarProtocol.isRightDoor() && jarProtocol.isLeftDoor() + && jarProtocol.leftDoorOpen!=1 && jarProtocol.leftDoorOpen!=3 + && jarProtocol.rightDoorOpen!=1 && jarProtocol.rightDoorOpen!=3 + && (jarProtocol.leftDoorOpen==2 || jarProtocol.rightDoorOpen==2)){ + WrkMastExecute wrkMastExecuteSou = new WrkMastExecute(); + wrkMastExecuteSou.setWrkType(3); + List<WrkMastExecute> wrkMastExecuteList = wrkMastExecuteService.selectWrkMastExecuteByWrk(wrkMastExecuteSou); + if (wrkMastExecuteList.isEmpty()){ + WrkMastExecute execute = new WrkMastExecute(); + execute.setJarId(jarProtocol.getJarNo()); + //鐩存帴鍏抽棬 + if (jarDoorTake(execute,JarTaskModeType.OPEN_THE_DOOR_COMPLETE)){ + log.error("纭寲缃怞ar鍛戒护涓嬪彂澶辫触锛宩ar鍙�={},浠诲姟鏁版嵁={},纭寲缃愭暟鎹�={},sign={}", + execute.getJarId(), JSON.toJSON(execute), JSON.toJSON(jarProtocol),sign); + } + return true; + } + for (WrkMastExecute wrkMastExecute : wrkMastExecuteList){ + if (wrkMastExecute.getIoType() == 1 || wrkMastExecute.getIoType() == 3){ + //鐩存帴鍏抽棬 + if (jarDoorTake(wrkMastExecute,JarTaskModeType.OPEN_THE_DOOR_COMPLETE)){ + log.error("纭寲缃怞ar鍛戒护涓嬪彂澶辫触锛宩ar鍙�={},浠诲姟鏁版嵁={},纭寲缃愭暟鎹�={},sign={}", + wrkMastExecute.getJarId(), JSON.toJSON(wrkMastExecute), JSON.toJSON(jarProtocol),sign); + } + wrkMastExecute.setWrkSts(4); + if (wrkMastExecuteService.updateById(wrkMastExecute)){ + log.error("骞宠 杞gv鍛戒护涓嬪彂澶辫触===>鏇存柊wrkMastExecute澶辫触锛宩ar鍙�={},浠诲姟鏁版嵁={},纭寲缃愭暟鎹�={},sign={}", + wrkMastExecute.getSteId(), JSON.toJSON(wrkMastExecute), JSON.toJSON(jarProtocol),sign); + return false; + } + return true; + } + } + } else if (jarProtocol.getJarErr()==0 + && jarProtocol.isRightDoor() && jarProtocol.isLeftDoor() + && jarProtocol.leftDoorClose!=1 && jarProtocol.leftDoorClose!=3 + && jarProtocol.rightDoorClose!=1 && jarProtocol.rightDoorClose!=3 + && (jarProtocol.leftDoorClose==2 || jarProtocol.rightDoorClose==2)){ + WrkMastExecute wrkMastExecuteSou = new WrkMastExecute(); + wrkMastExecuteSou.setWrkType(3); + List<WrkMastExecute> wrkMastExecuteList = wrkMastExecuteService.selectWrkMastExecuteByWrk(wrkMastExecuteSou); + if (wrkMastExecuteList.isEmpty()){ + WrkMastExecute execute = new WrkMastExecute(); + execute.setJarId(jarProtocol.getJarNo()); + //鐩存帴鍏抽棬 + if (jarDoorTake(execute,JarTaskModeType.CLOSE_THE_DOOR_COMPLETE)){ + log.error("纭寲缃怞ar鍛戒护涓嬪彂澶辫触锛宩ar鍙�={},浠诲姟鏁版嵁={},纭寲缃愭暟鎹�={},sign={}", + execute.getJarId(), JSON.toJSON(execute), JSON.toJSON(jarProtocol),sign); + } + return true; + } + for (WrkMastExecute wrkMastExecute : wrkMastExecuteList){ + if (wrkMastExecute.getIoType() == 2 || wrkMastExecute.getIoType() == 4){ + //鐩存帴鍏抽棬 + if (jarDoorTake(wrkMastExecute,JarTaskModeType.CLOSE_THE_DOOR_COMPLETE)){ + log.error("纭寲缃怞ar鍛戒护涓嬪彂澶辫触锛宩ar鍙�={},浠诲姟鏁版嵁={},纭寲缃愭暟鎹�={},sign={}", + wrkMastExecute.getJarId(), JSON.toJSON(wrkMastExecute), JSON.toJSON(jarProtocol),sign); + } + wrkMastExecute.setWrkSts(4); + if (wrkMastExecuteService.updateById(wrkMastExecute)){ + log.error("骞宠 杞gv鍛戒护涓嬪彂澶辫触===>鏇存柊wrkMastExecute澶辫触锛宩ar鍙�={},浠诲姟鏁版嵁={},纭寲缃愭暟鎹�={},sign={}", + wrkMastExecute.getSteId(), JSON.toJSON(wrkMastExecute), JSON.toJSON(jarProtocol),sign); + return false; + } + return true; + } + } } } return true; -- Gitblit v1.9.1