From 352b3946e1afb9a27c96f58bb138e2ba5a010ec0 Mon Sep 17 00:00:00 2001 From: lsh <lsh@163.com> Date: 星期五, 21 六月 2024 19:52:07 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | 50 ++++++++++++++++++++++++++++++++++++++------------ 1 files changed, 38 insertions(+), 12 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 cc21f70..eb15ae1 100644 --- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java @@ -109,6 +109,8 @@ private WrkMastSplitTwinService wrkMastSplitTwinService; @Autowired private BasJarMastService basJarMastService; + @Autowired + private WrkMastExecuteService wrkMastExecuteService; @Value("${wms.url}") private String wmsUrl; @@ -4411,18 +4413,42 @@ */ public synchronized void jarGenerateWrkMastSta() { for (JarSlave jarSlave : slaveProperties.getJar()) { - try{ - Integer count = basJarMastService.getJarMastByJarIdCount(jarSlave.getId().longValue()); - if (count>=7){ + for(JarSlave.StaStn staStn : jarSlave.getJarInSta()){ + // 鑾峰彇纭寲缃愬叆搴撶珯淇℃伅 + DevpThread devpThread = (DevpThread) SlaveConnection.get(SlaveType.Devp, staStn.getDevpPlcId()); + StaProtocol staProtocol = devpThread.getStation().get(staStn.getStaNo()); + if (staProtocol == null) { continue; + } else { + staProtocol = staProtocol.clone(); } - BasJarMast jarMastByJarIdMax = basJarMastService.getJarMastByJarIdMax(jarSlave.getId().longValue()); - if (!Cools.isEmpty(jarMastByJarIdMax) && jarMastByJarIdMax.getJarLocDigit()==7){ - continue; + if (staProtocol.isAutoing() && staProtocol.isLoading() && staProtocol.getWorkNo()!=0){ + try{ + if (basJarMastService.selectJarMastOperation(jarSlave.getId(),1)!=0){ + break; + } + if (wrkMastExecuteService.getWrkMastByJarIdCount(jarSlave.getId())!=0){ + break; + } + if (basJarMastService.getJarMastByJarIdCount(jarSlave.getId())>=7){ + continue; + } + BasJarMast jarMastByJarIdMax = basJarMastService.getJarMastByJarIdMax(jarSlave.getId()); + if (!Cools.isEmpty(jarMastByJarIdMax) && jarMastByJarIdMax.getJarLocDigit()==7){ + continue; + } + WrkMast wrkMast = wrkMastMapper.selectById(staProtocol.getWorkNo()); + if (Cools.isEmpty(wrkMast) || wrkMast.getWrkSts()!=2){ + continue; + } + if (jarGenerateWrkMastStaExecute(jarSlave,wrkMast)){ + return; + }; + }catch (Exception e){ + log.error(jarSlave.getId()+"鍙峰皬杞﹀浣嶇嚎绋嬫姤閿欙紒"+e); + } + break; } - jarGenerateWrkMastStaExecute(jarSlave); - }catch (Exception e){ - log.error(jarSlave.getId()+"鍙峰皬杞﹀浣嶇嚎绋嬫姤閿欙紒"+e); } } } @@ -4430,7 +4456,7 @@ /** * Jar浠诲姟鍒涘缓 鎵ц */ - public synchronized boolean jarGenerateWrkMastStaExecute(JarSlave jarSlave) { + public synchronized boolean jarGenerateWrkMastStaExecute(JarSlave jarSlave,WrkMast wrkMast) { try{ // 鑾峰彇鍫嗗灈鏈轰俊鎭� JarThread jarThread = (JarThread) SlaveConnection.get(SlaveType.Jar, jarSlave.getId()); @@ -4451,8 +4477,8 @@ return false; } - //鑷姩銆佺┖闂层�佸彸闂ㄥ叧闂�� - if (jarProtocol.isAutoing() && !jarProtocol.isRightDoor() && jarProtocol.jarErr==0 && !jarOtherProtocol.isLeftDoor() && jarOtherProtocol.jarErr==0){ + //鑷姩銆佺┖闂层�佸彸闂ㄥ叧闂�� Other宸﹂棬鍏抽棴 + if (jarProtocol.isAutoing() && !jarProtocol.isRightDoor() && jarProtocol.jarErr==0 && !jarOtherProtocol.isLeftDoor()){ } -- Gitblit v1.9.1