From d2c0bccd2e6dde4cf2a614a67bbf0ed45e2bcbaf Mon Sep 17 00:00:00 2001 From: whycq <913841844@qq.com> Date: 星期五, 29 十一月 2024 13:59:22 +0800 Subject: [PATCH] # 213 --- src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | 71 +++++++++++++++++++++++++---------- 1 files changed, 51 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 0bd70a4..486d852 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; @@ -236,6 +233,7 @@ devpThread.setPakMk(staProtocol.getSiteId(), false,238); boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol)); if (!result) { + LedErrorThreadUtil.ledErrorThread("鏇存柊plc绔欑偣淇℃伅澶辫触!绔欑偣鍙凤細"+inSta.getStaNo(),inSta.getLed(), LedErrorAreaType.ONE_OTHER.getDesc()); throw new CoolException("鏇存柊plc绔欑偣淇℃伅澶辫触"); } return; @@ -281,6 +279,7 @@ devpThread.setPakMk(staProtocol.getSiteId(), false,283); boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol)); if (!result) { + LedErrorThreadUtil.ledErrorThread("鏇存柊plc绔欑偣淇℃伅澶辫触!绔欑偣鍙凤細"+inSta.getStaNo(),inSta.getLed(), LedErrorAreaType.ONE_OTHER.getDesc()); throw new CoolException("鏇存柊plc绔欑偣淇℃伅澶辫触"); } } else { @@ -408,6 +407,7 @@ devpThread.setPakMk(staProtocol.getSiteId(), false,422); boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol)); if (!result) { + LedErrorThreadUtil.ledErrorThread("鏇存柊plc绔欑偣淇℃伅澶辫触!绔欑偣鍙凤細"+inSta.getStaNo(),inSta.getLed(), LedErrorAreaType.ONE_OTHER.getDesc()); throw new CoolException("鏇存柊plc绔欑偣淇℃伅澶辫触"); } return; @@ -453,6 +453,7 @@ devpThread.setPakMk(staProtocol.getSiteId(), false,467); boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol)); if (!result) { + LedErrorThreadUtil.ledErrorThread("鏇存柊plc绔欑偣淇℃伅澶辫触!绔欑偣鍙凤細"+inSta.getStaNo(),inSta.getLed(), LedErrorAreaType.ONE_OTHER.getDesc()); throw new CoolException("鏇存柊plc绔欑偣淇℃伅澶辫触"); } } else if (jsonObject.getInteger("code").equals(700)){ @@ -615,12 +616,7 @@ devpThread.setPakMk(staProtocol1.getSiteId(), false,637); boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol1)); if (!result) { - if (ledThread != null) { - ErrMsg errMsg1 = new ErrMsg(); - errMsg1.setErrMsg("鏇存柊plc绔欑偣淇℃伅澶辫触!绔欑偣鍙凤細"+inSta.getStaNo()); - errMsg1.setArea("1"); - MessageQueue.offer(SlaveType.Led, inSta.getLed(), new Task(5, errMsg1)); - } + LedErrorThreadUtil.ledErrorThread("鏇存柊plc绔欑偣淇℃伅澶辫触!绔欑偣鍙凤細"+inSta.getStaNo(),inSta.getLed(), LedErrorAreaType.ONE_OTHER.getDesc()); throw new CoolException("鏇存柊plc绔欑偣淇℃伅澶辫触"); } return; @@ -822,12 +818,7 @@ log.info("閿佸畾鏍囪flase===銆婲===銆嬬珯鐐瑰彿锛歿}锛屽伐浣滃彿锛歿}锛屾潯鐮�:{}",staProtocol1.getSiteId(),staProtocol1.getWorkNo(),barcode); boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol1)); if (!result) { - if (ledThread != null) { - ErrMsg errMsg1 = new ErrMsg(); - errMsg1.setErrMsg("鏇存柊plc绔欑偣淇℃伅澶辫触!绔欑偣鍙凤細"+inSta.getStaNo()); - errMsg1.setArea("1"); - MessageQueue.offer(SlaveType.Led, inSta.getLed(), new Task(5, errMsg1)); - } + LedErrorThreadUtil.ledErrorThread("鏇存柊plc绔欑偣淇℃伅澶辫触!绔欑偣鍙凤細"+inSta.getStaNo(),inSta.getLed(), LedErrorAreaType.ONE_OTHER.getDesc()); throw new CoolException("鏇存柊plc绔欑偣淇℃伅澶辫触"); } return; @@ -872,6 +863,7 @@ log.info("閿佸畾鏍囪flase===銆婲===銆嬬珯鐐瑰彿锛歿}锛屽伐浣滃彿锛歿}锛屾潯鐮�:{}",staProtocol1.getStaNo(),staProtocol1.getWorkNo(),barcode); boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol1)); if (!result) { + LedErrorThreadUtil.ledErrorThread("鏇存柊plc绔欑偣淇℃伅澶辫触!绔欑偣鍙凤細"+inSta.getStaNo(),inSta.getLed(), LedErrorAreaType.ONE_OTHER.getDesc()); throw new CoolException("鏇存柊plc绔欑偣淇℃伅澶辫触"); } try{ @@ -2278,7 +2270,7 @@ staProtocolOther1 = staProtocolOther1.clone(); } - if (staProtocolOther1.isAutoing() || staProtocolOther1.getWorkNo()!=0){ + if (staProtocolOther1.isLoading() || !staProtocolOther1.getWorkNo().equals(0)){ return; } @@ -2289,7 +2281,7 @@ } else { staProtocolOther2 = staProtocolOther2.clone(); } - if (staProtocolOther2.isAutoing() || staProtocolOther2.getWorkNo()!=0){ + if (staProtocolOther2.isLoading() || !staProtocolOther2.getWorkNo().equals(0)){ return; } } @@ -3103,12 +3095,20 @@ 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; + } + 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 wrkCount = wrkMastMapper.selectCount(new EntityWrapper<WrkMast>().eq("io_type", 110).gt("sta_no", 309).lt("sta_no", 314).gt("wrk_sts",11L)); @@ -3271,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 { @@ -3352,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); + } + } } /** @@ -4027,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)) { @@ -4109,6 +4130,7 @@ devpThread.setPakMk(staProtocol.getSiteId(), false,4087); boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol)); if (!result) { + LedErrorThreadUtil.ledErrorThread("鏇存柊plc绔欑偣淇℃伅澶辫触!绔欑偣鍙凤細"+emptyInSta.getStaNo(),emptyInSta.getLed(), LedErrorAreaType.ONE_OTHER.getDesc()); throw new CoolException("鏇存柊plc绔欑偣淇℃伅澶辫触"); } } else { @@ -4172,6 +4194,7 @@ devpThread.setPakMk(staProtocol.getSiteId(), false,4150); boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol)); if (!result) { + LedErrorThreadUtil.ledErrorThread("鏇存柊plc绔欑偣淇℃伅澶辫触!绔欑偣鍙凤細"+emptyInSta.getStaNo(),emptyInSta.getLed(), LedErrorAreaType.ONE_OTHER.getDesc()); throw new CoolException("鏇存柊plc绔欑偣淇℃伅澶辫触"); } } else { @@ -4235,6 +4258,7 @@ devpThread.setPakMk(staProtocol.getSiteId(), false,4213); boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol)); if (!result) { + LedErrorThreadUtil.ledErrorThread("鏇存柊plc绔欑偣淇℃伅澶辫触!绔欑偣鍙凤細"+emptyInSta.getStaNo(),emptyInSta.getLed(), LedErrorAreaType.ONE_OTHER.getDesc()); throw new CoolException("鏇存柊plc绔欑偣淇℃伅澶辫触"); } } else { @@ -8422,6 +8446,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