From d4daea691450958841e393fe56ae20472c9a9382 Mon Sep 17 00:00:00 2001 From: lsh <lsh@163.com> Date: 星期六, 22 六月 2024 18:00:27 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | 111 ++++++++++++++++++++++++++++++++++++------------------- 1 files changed, 72 insertions(+), 39 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 b88f85a..c81ce35 100644 --- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java @@ -4627,9 +4627,9 @@ break; } case 3: -// if (jarWrkMastExecuteGenerate2(jarSlave,sign)){ -// break; -// } + if (jarWrkMastExecuteGenerate2(jarSlave,sign)){ + break; + } } } } catch (Exception e){ @@ -4653,54 +4653,87 @@ add(2); }}); for (BasJarMast basJarMast : basJarMastList){ - // 鑾峰彇纭寲缃愪俊鎭� - JarThread jarThread = (JarThread) SlaveConnection.get(SlaveType.Jar, jarSlave.getId()); - JarProtocol jarProtocol = jarThread.getJarProtocol(); - if (jarProtocol == null) { - return false; + JarSlave.StaStn staStn = null; + for (JarSlave.StaStn staStn1 : jarSlave.getJarInSta()){ + if (staStn1.getStaNo().equals(basJarMast.getEnterStaNo())){ + staStn = staStn1; + } } - if (jarProtocol.modeType != JarModeType.AUTO){ - return false; + if (Cools.isEmpty(staStn)){ + continue; } + //妫�娴嬬珯鐐圭姸鎬� + DevpThread devpThread = (DevpThread) SlaveConnection.get(SlaveType.Devp, staStn.getDevpPlcId()); + StaProtocol staProtocol = devpThread.getStation().get(staStn.getStaNo()); + if (staProtocol == null) { + continue; + } else { + staProtocol = staProtocol.clone(); + } + if (staProtocol.isAutoing() && staProtocol.isLoading() && staProtocol.getWorkNo()==basJarMast.getWrkNo().intValue()){ - JarThread jarOtherThread = (JarThread) SlaveConnection.get(SlaveType.Jar, jarSlave.getJarOtherId()); - JarProtocol jarOtherProtocol = jarOtherThread.getJarProtocol(); - if (jarOtherProtocol == null) { - return false; - } + //妫�娴婻GV鐘舵�� + StaProtocol staProtocolRGV = devpThread.getStation().get(staStn.getRgvNo()); + if (staProtocolRGV == null) { + continue; + } else { + staProtocolRGV = staProtocolRGV.clone(); + } + if (staProtocolRGV.isRGV1() && !staProtocolRGV.isRGV2() && !staProtocolRGV.isRGV3() && !staProtocolRGV.isRGV4() && !staProtocolRGV.isRGV5() && !staProtocolRGV.isRGV6()){ + // 鑾峰彇纭寲缃愪俊鎭� + JarThread jarThread = (JarThread) SlaveConnection.get(SlaveType.Jar, jarSlave.getId()); + JarProtocol jarProtocol = jarThread.getJarProtocol(); + if (jarProtocol == null) { + return false; + } + if (jarProtocol.modeType != JarModeType.AUTO){ + return false; + } + + JarThread jarOtherThread = (JarThread) SlaveConnection.get(SlaveType.Jar, jarSlave.getJarOtherId()); + JarProtocol jarOtherProtocol = jarOtherThread.getJarProtocol(); + if (jarOtherProtocol == null) { + return false; + } // if (jarOtherProtocol.modeType != JarModeType.AUTO){ // continue; // } - BasJar basJar = basJarMapper.selectById(jarProtocol.getJarNo()); - if (Cools.isEmpty(basJar)){ - log.error("{}鍙风~鍖栫綈鏌ヨ璁惧妗f鏃犱俊鎭紒锛侊紒",jarProtocol.getJarNo()); - return false; - } + BasJar basJar = basJarMapper.selectById(jarProtocol.getJarNo()); + if (Cools.isEmpty(basJar)){ + log.error("{}鍙风~鍖栫綈鏌ヨ璁惧妗f鏃犱俊鎭紒锛侊紒",jarProtocol.getJarNo()); + return false; + } - //闂ㄤ綔涓� 鏃� - //鑷姩銆佺┖闂层�佸彸闂ㄥ叧闂�� 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.statusType == JarStatusType.IDLE && !jarProtocol.isLeftDoor() && basJarMast.getStatus()==0){ - //鐢熸垚寮�闂ㄤ换鍔� OpenTheDoor - if (!jarWrkMastExecuteGenerateExecute(basJar,basJarMast,new int[]{basJar.getEnterSteNo(),basJar.getEnterRgvId(),1,1})){ - log.error("JarWrkMastExecute浠诲姟鍒涘缓===>鎵ц寮傚父===銆嬪紓甯告暟鎹細BasJar:"+ JSON.toJSONString(basJar)+";BasJarMast:"+JSON.toJSONString(basJarMast)); + //闂ㄤ綔涓� 鏃� + //鑷姩銆佺┖闂层�佸彸闂ㄥ叧闂�� 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.statusType == JarStatusType.IDLE && !jarProtocol.isLeftDoor() && basJarMast.getStatus()==0){ + //鐢熸垚寮�闂ㄤ换鍔� OpenTheDoor + if (!jarWrkMastExecuteGenerateExecute(basJar,basJarMast,new int[]{basJar.getEnterSteNo(),basJar.getEnterRgvId(),1,1})){ + log.error("JarWrkMastExecute浠诲姟鍒涘缓===>鎵ц寮傚父===銆嬪紓甯告暟鎹細BasJar:"+ JSON.toJSONString(basJar)+";BasJarMast:"+JSON.toJSONString(basJarMast)); + } + return true; + } else if (jarProtocol.statusType == JarStatusType.MOVING && jarProtocol.isLeftDoor()){ + //鐢熸垚鍏ョ~鍖栫綈浠诲姟 + if (!jarWrkMastExecuteGenerateExecute(basJar,basJarMast,new int[]{basJar.getEnterSteNo(),basJar.getEnterRgvId(),5,1})){ + log.error("JarWrkMastExecute浠诲姟鍒涘缓===>鎵ц寮傚父===銆嬪紓甯告暟鎹細BasJar:"+ JSON.toJSONString(basJar)+";BasJarMast:"+JSON.toJSONString(basJarMast)); + } + return true; + } else if (jarProtocol.statusType == JarStatusType.IDLE && jarProtocol.isLeftDoor()){ + log.error("JarWrkMastExecute浠诲姟鍒涘缓===>鎵ц寮傚父===銆嬬~鍖栫綈绌洪棽浣嗘槸闂ㄦ湭鍏�===銆嬪紓甯告暟鎹細BasJar:"+ JSON.toJSONString(basJar)+";BasJarMast:"+JSON.toJSONString(basJarMast)); + } } - return true; - } else if (jarProtocol.statusType == JarStatusType.MOVING && jarProtocol.isLeftDoor()){ - //鐢熸垚鍏ョ~鍖栫綈浠诲姟 - if (!jarWrkMastExecuteGenerateExecute(basJar,basJarMast,new int[]{basJar.getEnterSteNo(),basJar.getEnterRgvId(),5,1})){ - log.error("JarWrkMastExecute浠诲姟鍒涘缓===>鎵ц寮傚父===銆嬪紓甯告暟鎹細BasJar:"+ JSON.toJSONString(basJar)+";BasJarMast:"+JSON.toJSONString(basJarMast)); - } - return true; - } else if (jarProtocol.statusType == JarStatusType.IDLE && jarProtocol.isLeftDoor()){ - log.error("JarWrkMastExecute浠诲姟鍒涘缓===>鎵ц寮傚父===銆嬬~鍖栫綈绌洪棽浣嗘槸闂ㄦ湭鍏�===銆嬪紓甯告暟鎹細BasJar:"+ JSON.toJSONString(basJar)+";BasJarMast:"+JSON.toJSONString(basJarMast)); + return false; + } else { + log.error("JarWrkMastExecute浠诲姟鍒涘缓===>鎵ц寮傚父===銆婻GV涓嶆弧瓒虫潯浠讹紝绛夊緟===銆嬪紓甯告暟鎹細BasJar:"+ JSON.toJSONString(staProtocolRGV)+";BasJarMast:"+JSON.toJSONString(basJarMast)); + return false; } } - return false; } + } catch (Exception e){ log.error("{}鍙风~鍖栫綈JarWrkMastExecute浠诲姟鍒涘缓寮傚父,寮傚父鍘熷洜={}",jarSlave.getId(),e.getMessage()); } -- Gitblit v1.9.1