From 0134bfa28a0583c0f2b28e52a6c0aeee7098ecf9 Mon Sep 17 00:00:00 2001 From: lsh <lsh@163.com> Date: 星期四, 03 四月 2025 13:04:28 +0800 Subject: [PATCH] * --- src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | 328 ++++++++++++++++++++++++++++++------------------------ 1 files changed, 180 insertions(+), 148 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 04841ba..3b91932 100644 --- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java @@ -24,12 +24,16 @@ import com.zy.core.enums.*; import com.zy.core.model.CrnSlave; import com.zy.core.model.DevpSlave; +import com.zy.core.model.RgvSlave; import com.zy.core.model.Task; import com.zy.core.model.command.CrnCommand; +import com.zy.core.model.command.RgvCommand; import com.zy.core.model.protocol.CrnProtocol; +import com.zy.core.model.protocol.RgvProtocol; import com.zy.core.model.protocol.StaProtocol; import com.zy.core.properties.SlaveProperties; import com.zy.core.thread.BarcodeThread; +import com.zy.core.thread.RgvThread; import com.zy.core.thread.SiemensDevpThread; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; @@ -78,6 +82,12 @@ private ApiLogService apiLogService; @Autowired private CommonService commonService; + @Autowired + private BasRgvService basRgvService; + @Autowired + private WrkMastStaMapper wrkMastStaMapper; + @Autowired + private BasRgvMapMapper basRgvMapMapper; @Value("${wms.url}") private String wmsUrl; @@ -90,6 +100,8 @@ @Autowired private CrnController crnController; + @Value("${wms.rgvOpen}") + private boolean rgvOpen; public void generateStoreWrkFile() throws IOException, InterruptedException { try { @@ -107,8 +119,8 @@ } else { staProtocol = staProtocol.clone(); } - Short workNo = staProtocol.getWorkNo(); - Short stano = staProtocol.getStaNo(); + Integer workNo = staProtocol.getWorkNo(); + Integer stano = staProtocol.getStaNo(); // 灏哄妫�娴嬪紓甯� boolean back = false; @@ -154,7 +166,7 @@ } // News.warn("鎵爜鍏ュ簱澶辫触锛寋}鍏ュ簱绔欏洜{}寮傚父锛屾墭鐩樺凡琚��鍥�", inSta.getStaNo(), errMsg); staProtocol.setWorkNo(workNo); - staProtocol.setStaNo(inSta.getStaNo().shortValue()); + staProtocol.setStaNo(inSta.getStaNo()); devpThread.setPakMk(staProtocol.getSiteId(), false); MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol)); TaskWrk taskWrk = taskWrkMapper.selectByWrkNo(Integer.valueOf(workNo)); @@ -189,8 +201,8 @@ log.info("鎵樼洏鐮侊細"+barcode+"浠诲姟妗e瓨鍦�"); return; }else { - staProtocol.setWorkNo(taskWrk1.getWrkNo().shortValue()); - staProtocol.setStaNo(staDesc.getCrnStn().shortValue()); + staProtocol.setWorkNo(taskWrk1.getWrkNo()); + staProtocol.setStaNo(staDesc.getCrnStn()); MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol)); } } @@ -222,8 +234,8 @@ // 閫�鍥� log.error("鎵爜妫�娴嬬▼搴忓紓甯�"+inSta.getStaNo()+"寮傚父淇℃伅"+e1); } - staProtocol.setWorkNo((short)9999); - staProtocol.setStaNo(inSta.getStaNo().shortValue()); + staProtocol.setWorkNo(9999); + staProtocol.setStaNo(inSta.getStaNo()); devpThread.setPakMk(staProtocol.getSiteId(), false); MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol)); // TaskWrk taskWrk = taskWrkMapper.selectByWrkNo(Integer.valueOf(workNo)); @@ -276,8 +288,8 @@ log.error("鎵爜妫�娴嬬▼搴忓紓甯�"+inSta.getStaNo()+errMsg); log.error("鎵爜妫�娴嬬▼搴忓紓甯�,寮傚父淇℃伅"+e); - staProtocol.setWorkNo((short)9999); - staProtocol.setStaNo(inSta.getStaNo().shortValue()); + staProtocol.setWorkNo(9999); + staProtocol.setStaNo(inSta.getStaNo()); devpThread.setPakMk(staProtocol.getSiteId(), false); MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol)); // TaskWrk taskWrk = taskWrkMapper.selectByWrkNo(Integer.valueOf(workNo)); @@ -331,8 +343,8 @@ taskWrkService.insert(taskWrk); StaDesc staDesc = staDescService.selectOne(new EntityWrapper<StaDesc>() .eq("crn_no", taskWrk.getCrnNo()).eq("type_no",1).eq("stn_no",staProtocol.getSiteId())); - staProtocol.setWorkNo(taskWrk.getWrkNo().shortValue()); - staProtocol.setStaNo(staDesc.getCrnStn().shortValue()); + staProtocol.setWorkNo(taskWrk.getWrkNo()); + staProtocol.setStaNo(staDesc.getCrnStn()); MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol)); } } @@ -345,8 +357,8 @@ // 閫�鍥� log.error("鎵爜鍏ュ簱澶辫触锛寋}鍏ュ簱绔欏洜{}寮傚父锛屾墭鐩樺凡琚��鍥�", inSta.getStaNo(), errMsg); - staProtocol.setWorkNo((short)9999); - staProtocol.setStaNo(inSta.getStaNo().shortValue()); + staProtocol.setWorkNo(9999); + staProtocol.setStaNo(inSta.getStaNo()); devpThread.setPakMk(staProtocol.getSiteId(), false); MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol)); TaskWrk taskWrk = taskWrkMapper.selectByWrkNo(Integer.valueOf(workNo)); @@ -394,8 +406,8 @@ } log.info("涓嬪彂杈撻�佺嚎浠诲姟锛歵askWrk:"+JSON.toJSONString(taskWrk)); // R r = siteController.siteDetlUpdate(Integer.valueOf(taskWrk.getTargetPoint()), taskWrk.getWrkNo().shortValue(), (short) 0, "Y", false, false); - staProtocol.setWorkNo(taskWrk.getWrkNo().shortValue()); - staProtocol.setStaNo(staDesc.getCrnStn().shortValue()); + staProtocol.setWorkNo(taskWrk.getWrkNo()); + staProtocol.setStaNo(staDesc.getCrnStn()); boolean offer = false; try{ offer = MessageQueue.offer(SlaveType.Devp, 1, new Task(2, staProtocol)); @@ -1112,7 +1124,160 @@ } return taskWrk; } + /** + * 瀹屾垚灏忚溅浠诲姟 + */ + public synchronized void rgvCompleteWrkMastSta() { + try{ + for (RgvSlave rgvSlave:slaveProperties.getRgv()) { + RgvThread rgvThread = (RgvThread) SlaveConnection.get(SlaveType.Rgv, rgvSlave.getId()); + RgvProtocol rgvProtocol = rgvThread.getRgvProtocol(); + if (rgvProtocol == null) { + continue; + } + BasRgv basRgv = basRgvService.selectById(rgvSlave.getId()); + if (basRgv == null) { + log.error("{}鍙稲GV灏氭湭鍦ㄦ暟鎹簱杩涜缁存姢锛�", rgvSlave.getId()); + continue; + } + // 鍙湁褰揜GV绛夊緟WCS纭銆佽嚜鍔� + if (rgvProtocol.getStatusType() == RgvStatusType.WORKING + && rgvProtocol.getModeType() == RgvModeType.AUTO + && ((rgvProtocol.getStatusType1()==RgvStatusType.WAITING || rgvProtocol.getStatusType2()==RgvStatusType.WAITING ) || + (rgvProtocol.getStatusType1()==RgvStatusType.FETCHWAITING || rgvProtocol.getStatusType2()==RgvStatusType.FETCHWAITING )) + ) { + log.info("{}鍙峰皬杞︾瓑寰厀cs纭锛岀姸鎬亄}锛屽弬鏁皗}",rgvProtocol.getRgvNo(),rgvProtocol.getStatusType(),rgvProtocol); + if (rgvProtocol.getTaskNo1()!=0 && (rgvProtocol.getStatusType1()==RgvStatusType.WAITING || rgvProtocol.getStatusType1()==RgvStatusType.FETCHWAITING)){ + if (rgvProtocol.getTaskNo1()==(short)32222){ + boolean rgvComplete = rgvComplete(rgvProtocol.getRgvNo()); + if (!rgvComplete){ + log.error("灏忚溅澶嶄綅澶辫触锛屽皬杞﹀彿{}锛�",rgvProtocol.getRgvNo()); + } + BasRgvMap basRgvMap = basRgvMapMapper.selectById(rgvProtocol.getRgvNo()); + basRgvMap.setNowRoute(rgvProtocol.getRgvPosI()); + rgvMapUpdate(basRgvMap,basRgvMap.getStartRoute(),basRgvMap.getStartRoute()); + break; + } + WrkMastSta wrkMastSta = wrkMastStaMapper.selectByWrkNo(rgvProtocol.getTaskNo1().longValue()); + if (Cools.isEmpty(wrkMastSta) || wrkMastSta.getType()!=1 || wrkMastSta.getWrkSts()!=1){ + log.error("鏈煡鍒板皬杞︽墽琛屼换鍔℃垨鑰呮墽琛屼换鍔$姸鎬佷笉绗﹀悎锛�"+wrkMastSta); + continue; + } + /* WrkMast wrkMast = wrkMastMapper.selectPakInStep3(wrkMastSta.getWrkNo().intValue()); + if (!Cools.isEmpty(wrkMast) && wrkMastSta.getWrkType()!=5){ + Thread.sleep(200); + SiemensDevpThread devpThread = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, 1); + StaProtocol staProtocol = devpThread.getStation().get(wrkMastSta.getStaEnd()); + if (staProtocol == null) { + continue; + } else { + staProtocol = staProtocol.clone(); + } + if (!staProtocol.isAutoing() || !staProtocol.isLoading()){ + continue; + } + // 涓嬪彂绔欑偣淇℃伅 + staProtocol.setWorkNo(wrkMast.getWrkNo()); + staProtocol.setStaNo(wrkMast.getStaNo()); + if (!MessageQueue.offer(SlaveType.Devp, 1, new Task(2, staProtocol))) { + continue; + } + log.error("灏忚溅浠诲姟瀹屾垚涓嬪彂杈撻�佺嚎浠诲姟锛�"+staProtocol); +// try{ +// Thread.sleep(1000); +// DevpThread devpThreadEnd = (DevpThread) SlaveConnection.get(SlaveType.Devp, 1); +// StaProtocol staProtocolEnd = devpThreadEnd.getStation().get(wrkMastSta.getStaEnd()); +// log.error("灏忚溅浠诲姟瀹屾垚璇诲彇杈撻�佺嚎浠诲姟锛�"+staProtocolEnd); +// if (staProtocolEnd.getWorkNo()==0 ){ //|| !staProtocolEnd.getWorkNo().equals(wrkMast.getWrkNo()) +// staProtocolEnd.setWorkNo(wrkMast.getWrkNo()); +// staProtocolEnd.setStaNo(wrkMast.getStaNo()); +// if (!MessageQueue.offer(SlaveType.Devp, 1, new Task(2, staProtocolEnd))) { +// continue; +// } +// log.error("灏忚溅浠诲姟瀹屾垚涓嬪彂杈撻�佺嚎浠诲姟绗簩娆★細"+staProtocolEnd); +// } +// }catch (Exception e){ +// +// } + }*/ + boolean rgvComplete = rgvComplete(rgvProtocol.getRgvNo()); + if (!rgvComplete){ + log.error("灏忚溅澶嶄綅澶辫触锛屽皬杞﹀彿{}锛�",rgvProtocol.getRgvNo()); + break; + } + wrkMastSta.setWrkSts(3); + wrkMastStaMapper.updateById(wrkMastSta); + BasRgvMap basRgvMap = basRgvMapMapper.selectById(rgvProtocol.getRgvNo()); + basRgvMap.setNowRoute(rgvProtocol.getRgvPosI()); + rgvMapUpdate(basRgvMap,basRgvMap.getStartRoute(),basRgvMap.getStartRoute()); + }else if (rgvProtocol.getTaskNo2()!=0 && (rgvProtocol.getStatusType2()==RgvStatusType.WAITING || rgvProtocol.getStatusType2()==RgvStatusType.FETCHWAITING)){ + if (rgvProtocol.getTaskNo2()==(short)32222){ + boolean rgvComplete = rgvComplete(rgvProtocol.getRgvNo()); + if (!rgvComplete){ + log.error("灏忚溅澶嶄綅澶辫触锛屽皬杞﹀彿{}锛�",rgvProtocol.getRgvNo()); + } + BasRgvMap basRgvMap = basRgvMapMapper.selectById(rgvProtocol.getRgvNo()); + basRgvMap.setNowRoute(rgvProtocol.getRgvPosI()); + rgvMapUpdate(basRgvMap,basRgvMap.getStartRoute(),basRgvMap.getStartRoute()); + break; + } + WrkMastSta wrkMastSta = wrkMastStaMapper.selectByWrkNo(rgvProtocol.getTaskNo2().longValue()); + if (Cools.isEmpty(wrkMastSta) || wrkMastSta.getType()!=2){ + log.error("鏈煡鍒板皬杞︽墽琛屼换鍔℃垨鑰呮墽琛屼换鍔$姸鎬佷笉绗﹀悎锛�"+wrkMastSta); + continue; + } + /*WrkMast wrkMast = wrkMastMapper.selectPakInStep3(wrkMastSta.getWrkNo().intValue()); + if (!Cools.isEmpty(wrkMast) && wrkMastSta.getWrkType()!=5){ + Thread.sleep(200); + DevpThread devpThread = (DevpThread) SlaveConnection.get(SlaveType.Devp, 1); + StaProtocol staProtocol = devpThread.getStation().get(wrkMastSta.getStaEnd()); + if (!staProtocol.isAutoing() || !staProtocol.isLoading()){ + continue; + } + // 涓嬪彂绔欑偣淇℃伅 + staProtocol.setWorkNo(wrkMast.getWrkNo()); + staProtocol.setStaNo(wrkMast.getStaNo()); + if (!MessageQueue.offer(SlaveType.Devp, 1, new Task(2, staProtocol))) { + continue; + } + log.error("灏忚溅浠诲姟瀹屾垚涓嬪彂杈撻�佺嚎浠诲姟锛�"+staProtocol); +// try{ +// Thread.sleep(1000); +// DevpThread devpThreadEnd = (DevpThread) SlaveConnection.get(SlaveType.Devp, 1); +// StaProtocol staProtocolEnd = devpThreadEnd.getStation().get(wrkMastSta.getStaEnd()); +// log.error("灏忚溅浠诲姟瀹屾垚璇诲彇杈撻�佺嚎浠诲姟锛�"+staProtocolEnd); +// if (staProtocolEnd.getWorkNo()==0 ){ //|| !staProtocolEnd.getWorkNo().equals(wrkMast.getWrkNo()) +// staProtocolEnd.setWorkNo(wrkMast.getWrkNo()); +// staProtocolEnd.setStaNo(wrkMast.getStaNo()); +// if (!MessageQueue.offer(SlaveType.Devp, 1, new Task(2, staProtocolEnd))) { +// continue; +// } +// log.error("灏忚溅浠诲姟瀹屾垚涓嬪彂杈撻�佺嚎浠诲姟绗簩娆★細"+staProtocolEnd); +// } +// }catch (Exception e){ +// +// } + }*/ + boolean rgvComplete = rgvComplete(rgvProtocol.getRgvNo()); + if (!rgvComplete){ + log.error("灏忚溅澶嶄綅澶辫触锛屽皬杞﹀彿{}锛�",rgvProtocol.getRgvNo()); + break; + } + wrkMastSta.setWrkSts(3); + wrkMastStaMapper.updateById(wrkMastSta); + BasRgvMap basRgvMap = basRgvMapMapper.selectById(rgvProtocol.getRgvNo()); + basRgvMap.setNowRoute(rgvProtocol.getRgvPosI()); + rgvMapUpdate(basRgvMap,basRgvMap.getStartRoute(),basRgvMap.getStartRoute()); + }else { + log.error("灏忚溅澶嶄綅澶辫触锛屽皬杞﹀彿{},绛夊緟wcs纭浣嗘槸娌℃湁宸ヤ綔鍙凤紒",rgvProtocol.getRgvNo()); + } + } + } + }catch (Exception e){ + log.error("灏忚溅澶嶄綅绾跨▼鎶ラ敊锛�"+e); + } + } /** * 鍏ュ嚭搴� ===>> 灏忚溅浣滀笟涓嬪彂 */ @@ -1156,9 +1321,6 @@ case 4://鍙栧彔鐩� signWork = rgvRunWrkMastEmptyStaTake(rgvSlave); break; - case 5:////婊″彇 - signWork = rgvRunWrkMastEmptyStaTakeFull(rgvSlave); - break; case 6:////鎻愬崌 // signWork = qwe(); break; @@ -1178,9 +1340,6 @@ break; case 4://鍙栧彔鐩� signWork = rgvRunWrkMastEmptyStaTake(rgvSlave); - break; - case 5:////婊″彇 - signWork = rgvRunWrkMastEmptyStaTakeFull(rgvSlave); break; case 6:////鎻愬崌 // signWork = rgvRunWrkMastEmptyStaPut(); @@ -1247,16 +1406,6 @@ BasDevp basDevp = basDevpService.selectById(wrkMastSta.getStaEnd()); if (!basDevp.getAutoing().equals("Y") || basDevp.getLoading().equals("Y") || basDevp.getWrkNo()!=0){ continue; - } - if (basDevp.getDevNo()>117 && basDevp.getDevNo()<124){ - if (basDevp.getLoadingSuper().equals("Y")){ - continue; - } - } - if (basDevp.getDevNo()>=118 && basDevp.getDevNo()<=123){ - if (!basDevp.getEmptyMk().equals("Y")){ - continue; - } } Date date = new Date(); @@ -1365,16 +1514,6 @@ if (!basDevp.getAutoing().equals("Y") || basDevp.getLoading().equals("Y") || basDevp.getWrkNo()!=0){ continue; } - if (basDevp.getDevNo()>117 && basDevp.getDevNo()<124){ - if (basDevp.getLoadingSuper().equals("Y")){ - continue; - } - } - if (basDevp.getDevNo()>=118 && basDevp.getDevNo()<=123){ - if (!basDevp.getEmptyMk().equals("Y")){ - continue; - } - } Date date = new Date(); SiemensDevpThread devpThread = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, rgvSlave.getDevpPlcId()); @@ -1473,16 +1612,6 @@ if (!basDevp.getAutoing().equals("Y") || basDevp.getLoading().equals("Y") || basDevp.getWrkNo()!=0){ continue; } - if (basDevp.getDevNo()>117 && basDevp.getDevNo()<124){ - if (basDevp.getLoadingSuper().equals("Y")){ - continue; - } - } - if (basDevp.getDevNo()>=118 && basDevp.getDevNo()<=123){ - if (!basDevp.getEmptyMk().equals("Y")){ - continue; - } - } Date date = new Date(); SiemensDevpThread devpThread = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, rgvSlave.getDevpPlcId()); @@ -1578,11 +1707,6 @@ if (!basDevp.getAutoing().equals("Y") || !basDevp.getLoading().equals("Y")){ continue; } - if (basDevp.getDevNo()>=118 && basDevp.getDevNo()<=123){ - if (!basDevp.getEmptyMk().equals("Y")){ - continue; - } - } Date date = new Date(); SiemensDevpThread devpThread = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, rgvSlave.getDevpPlcId()); @@ -1603,98 +1727,6 @@ log.info(date+"鍙犵洏浠诲姟涓嬪彂锛氬皬杞﹀伐浣滄。锛�"+wrkMastSta); log.info(date+"鍙犵洏浠诲姟涓嬪彂锛氱洰鏍囩珯鐘舵�侊細"+basDevp); sign = rgvTakeEmpty(rgvProtocol.getRgvNo(),wrkMastSta);//鍙犵洏 - }else { - continue; - } - if (sign){ - boolean signMap = rgvMapUpdate(basRgvMap, wrkMastSta.getStaStart(), basRgvMap.getStartRoute()); - if (signMap){ - wrkMastSta.setWrkSts(1); - try{ - wrkMastStaMapper.updateById(wrkMastSta); - }catch (Exception e){ - log.error("鏇存柊灏忚溅浠诲姟澶辫触"); - } - return true; - }else { - log.error("3879琛岋紝璐х墿鎼繍浠诲姟锛氬伐浣滃彿{}鎵�灞炰换鍔′笅鍙戝悗鍦板浘鍚屾澶辫触",wrkMastSta.getWrkNo()); - } - }else { - log.error("宸ヤ綔鍙穥}鎵�灞炰换鍔′笅鍙戝け璐�",wrkMastSta.getWrkNo()); - } - break; - } - } -// } - }catch (Exception e){ - log.error("3989琛屾墽琛屽皬杞﹀彇绌烘澘浠诲姟涓嬪彂澶辫触"); - log.error("3989琛�"+e); - } - return false; - } - - public synchronized boolean rgvRunWrkMastEmptyStaTakeFull(RgvSlave rgvSlave) {//婊″彇 - try{ -// for (RgvSlave rgvSlave:slaveProperties.getRgv()) { - RgvThread rgvThread = (RgvThread) SlaveConnection.get(SlaveType.Rgv, rgvSlave.getId()); - RgvProtocol rgvProtocol = rgvThread.getRgvProtocol(); - if (rgvProtocol == null) { - return false; - } - BasRgv basRgv = basRgvService.selectById(rgvSlave.getId()); - if (basRgv == null) { - log.error("{}鍙稲GV灏氭湭鍦ㄦ暟鎹簱杩涜缁存姢锛�", rgvSlave.getId()); - return false; - } - - // 鍙湁褰揜GV绌洪棽銆佽嚜鍔�,宸ヤ綅浜屾棤鐗�//rgv鍙敤 - if (rgvProtocol.getStatusType() == RgvStatusType.IDLE - && rgvProtocol.getStatusType1() == RgvStatusType.IDLE - && rgvProtocol.getStatusType2() == RgvStatusType.IDLE - && rgvProtocol.getModeType() == RgvModeType.AUTO - && rgvProtocol.getTaskNo1()==0 && rgvProtocol.getTaskNo2()==0 - && rgvProtocol.getLoaded2()==0 //鐜板満淇敼锛氬彔鐩樻満锛�////0 鏃犵墿锛�1 涓�灞傛棤鐗╀簩灞傛湁鐗╋紙鍙兘鎷嗗彔锛� 锛�2涓�灞傛湁鐗╀簩灞傛棤鐗� 锛堝彧鑳芥弧鏀撅級锛�3 1銆�2灞傞兘鏈夌墿 4锛氾紙锛夊彧鍏佽鎷嗙洏 - ) { - BasRgvMap basRgvMap = basRgvMapMapper.selectById(rgvProtocol.getRgvNo()); - if (basRgvMap == null) { - log.error("{}鍙稲GV灏氭湭鍦ㄦ暟鎹簱鍦板浘涓繘琛岀淮鎶わ紒", rgvProtocol.getRgvNo()); - return false; - } - List<Integer> route = RouteUtils.getRoute(basRgvMap.getStartRoute(), basRgvMap.getEndRoute()); - basRgvMap.setNowRoute(rgvProtocol.getRgvPosI()); //鏇存柊灏忚溅褰撳墠浣嶇疆绔欑偣鍙� - List<WrkMastSta> wrkMastStaList = wrkMastStaMapper.selectNoInterfereList(route, route); - WrkMast wrkMast = wrkMastMapper.selectBy122ManQu(122,110,15L); - if (!Cools.isEmpty(wrkMast)){ - WrkMastSta wrkMastSta = wrkMastStaMapper.selectByWrkNo(wrkMast.getWrkNo().longValue()); - if (!Cools.isEmpty(wrkMastSta) && wrkMastSta.getType()==2 && wrkMastSta.getWrkType()==5 ){ - wrkMastStaList.add(wrkMastSta); - } - } - for (WrkMastSta wrkMastSta : wrkMastStaList){ - if (wrkMastSta.getType()!=2 || wrkMastSta.getWrkType()!=5){// 2:绌烘澘 || 宸ヤ綔绫诲瀷 1:鍙栵紙鍙犵洏锛� 2锛氭媶鐩� 5锛氭弧鍙� 6锛氭弧鏀� - continue; - } - boolean sign = false; - if (wrkMastSta.getStaStart()!=0){//婊″彇 - BasDevp basDevp = basDevpService.selectById(wrkMastSta.getStaStart()); - if (!basDevp.getAutoing().equals("Y") || !basDevp.getLoading().equals("Y")){ - continue; - } - Date date = new Date(); - - SiemensDevpThread devpThread = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, rgvSlave.getDevpPlcId()); - StaProtocol staProtocol = devpThread.getStation().get(basDevp.getDevNo()); - if (staProtocol == null) { - log.info(date+"婊″彇浠诲姟涓嬪彂锛氭湭鏌ヨ鍒扮珯鐐逛俊鎭細"+wrkMastSta); - continue; - } - if (!staProtocol.isAutoing() || staProtocol.isLoading()){ - continue; - } - - log.info(date+"婊″彇浠诲姟涓嬪彂锛氬皬杞﹀伐浣滄。锛�"+wrkMastSta); - log.info(date+"婊″彇浠诲姟涓嬪彂锛氱洰鏍囩珯鐘舵�侊細"+basDevp); - sign = rgvTakeEmptyFull(rgvProtocol.getRgvNo(),wrkMastSta); }else { continue; } -- Gitblit v1.9.1