From b7a584c8d96765e681508910cd7ba21a6b32420a Mon Sep 17 00:00:00 2001 From: zhangc <zc@123> Date: 星期四, 20 三月 2025 19:07:22 +0800 Subject: [PATCH] 配置信息 --- src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | 199 ++++++++++++++++++++++++++++++++----------------- 1 files changed, 130 insertions(+), 69 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 506e3c6..814365d 100644 --- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java @@ -7,10 +7,7 @@ import com.core.common.Cools; import com.core.exception.CoolException; import com.zy.asrs.entity.*; -import com.zy.asrs.mapper.BasCrnErrorMapper; -import com.zy.asrs.mapper.BasDevpMapper; -import com.zy.asrs.mapper.WrkChargeMapper; -import com.zy.asrs.mapper.WrkMastMapper; +import com.zy.asrs.mapper.*; import com.zy.asrs.service.*; import com.zy.asrs.utils.Utils; import com.zy.common.model.LocTypeDto; @@ -95,6 +92,8 @@ private WrkChargeMapper wrkChargeMapper; @Autowired private BasDevpMapper basDevpMapper; + @Autowired + private WaitPakinMapper waitPakinMapper; /** * 缁勬墭 @@ -121,45 +120,45 @@ && !staProtocol.isEmptyMk() && (workNo == 0 || (workNo >= 9990 && workNo <= 9999)) && staProtocol.isPakMk()) { - //20230201. 2鍙峰爢鍨涙満鏈夊嚭搴撲换鍔℃椂锛岀姝㈡柊鏉垮叆搴� - if (staProtocol.getWorkNo() == 9995) { - if ( inSta.getStaNo()==103 && devpThread.ioModeOf1F == IoModeType.PAKOUT_MODE) { - //鏈夊嚭搴撲换鍔★紝閫�搴撳埌鍏ュ簱鍙� - staProtocol.setWorkNo((short) 9999); - staProtocol.setStaNo((short)100); - devpThread.setPakMk(staProtocol.getSiteId(), false); - boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol)); - News.error("MainServiceImpl generateStoreWrkFile"+"103涓哄嚭搴撴ā寮忥紝绂佹鍏ュ簱锛岄��鍥炲叆搴撳彛銆傦紒锛侊紒"); - continue; - } - if ( inSta.getStaNo()==203 && devpThread.ioModeOf2F == IoModeType.PAKOUT_MODE) { - //鏈夊嚭搴撲换鍔★紝閫�搴撳埌鍏ュ簱鍙� - staProtocol.setWorkNo((short) 9999); - staProtocol.setStaNo((short)200); - devpThread.setPakMk(staProtocol.getSiteId(), false); - boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol)); - News.error("MainServiceImpl generateStoreWrkFile"+"203涓哄嚭搴撴ā寮忥紝绂佹鍏ュ簱锛岄��鍥炲叆搴撳彛銆傦紒锛侊紒"); - continue; - } - if ( inSta.getStaNo()==113 && devpThread.ioModeOf3F == IoModeType.PAKOUT_MODE) { - //鏈夊嚭搴撲换鍔★紝閫�搴撳埌鍏ュ簱鍙� - staProtocol.setWorkNo((short) 9999); - staProtocol.setStaNo((short)114); - devpThread.setPakMk(staProtocol.getSiteId(), false); - boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol)); - News.error("MainServiceImpl generateStoreWrkFile"+"103涓哄嚭搴撴ā寮忥紝绂佹鍏ュ簱锛岄��鍥炲叆搴撳彛銆傦紒锛侊紒"); - continue; - } - if ( inSta.getStaNo()==213 && devpThread.ioModeOf4F == IoModeType.PAKOUT_MODE) { - //鏈夊嚭搴撲换鍔★紝閫�搴撳埌鍏ュ簱鍙� - staProtocol.setWorkNo((short) 9999); - staProtocol.setStaNo((short)214); - devpThread.setPakMk(staProtocol.getSiteId(), false); - boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol)); - News.error("MainServiceImpl generateStoreWrkFile"+"203涓哄嚭搴撴ā寮忥紝绂佹鍏ュ簱锛岄��鍥炲叆搴撳彛銆傦紒锛侊紒"); - continue; - } - } +// //20230201. 2鍙峰爢鍨涙満鏈夊嚭搴撲换鍔℃椂锛岀姝㈡柊鏉垮叆搴� +// if (staProtocol.getWorkNo() == 9995) { +// if ( inSta.getStaNo()==103 && devpThread.ioModeOf1F == IoModeType.PAKOUT_MODE) { +// //鏈夊嚭搴撲换鍔★紝閫�搴撳埌鍏ュ簱鍙� +// staProtocol.setWorkNo((short) 9999); +// staProtocol.setStaNo((short)100); +// devpThread.setPakMk(staProtocol.getSiteId(), false); +// boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol)); +// News.error("MainServiceImpl generateStoreWrkFile"+"103涓哄嚭搴撴ā寮忥紝绂佹鍏ュ簱锛岄��鍥炲叆搴撳彛銆傦紒锛侊紒"); +// continue; +// } +// if ( inSta.getStaNo()==203 && devpThread.ioModeOf2F == IoModeType.PAKOUT_MODE) { +// //鏈夊嚭搴撲换鍔★紝閫�搴撳埌鍏ュ簱鍙� +// staProtocol.setWorkNo((short) 9999); +// staProtocol.setStaNo((short)200); +// devpThread.setPakMk(staProtocol.getSiteId(), false); +// boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol)); +// News.error("MainServiceImpl generateStoreWrkFile"+"203涓哄嚭搴撴ā寮忥紝绂佹鍏ュ簱锛岄��鍥炲叆搴撳彛銆傦紒锛侊紒"); +// continue; +// } +// if ( inSta.getStaNo()==113 && devpThread.ioModeOf3F == IoModeType.PAKOUT_MODE) { +// //鏈夊嚭搴撲换鍔★紝閫�搴撳埌鍏ュ簱鍙� +// staProtocol.setWorkNo((short) 9999); +// staProtocol.setStaNo((short)114); +// devpThread.setPakMk(staProtocol.getSiteId(), false); +// boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol)); +// News.error("MainServiceImpl generateStoreWrkFile"+"103涓哄嚭搴撴ā寮忥紝绂佹鍏ュ簱锛岄��鍥炲叆搴撳彛銆傦紒锛侊紒"); +// continue; +// } +// if ( inSta.getStaNo()==213 && devpThread.ioModeOf4F == IoModeType.PAKOUT_MODE) { +// //鏈夊嚭搴撲换鍔★紝閫�搴撳埌鍏ュ簱鍙� +// staProtocol.setWorkNo((short) 9999); +// staProtocol.setStaNo((short)214); +// devpThread.setPakMk(staProtocol.getSiteId(), false); +// boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol)); +// News.error("MainServiceImpl generateStoreWrkFile"+"203涓哄嚭搴撴ā寮忥紝绂佹鍏ュ簱锛岄��鍥炲叆搴撳彛銆傦紒锛侊紒"); +// continue; +// } +// } // 鑾峰彇鏉$爜鎵弿浠俊鎭� BarcodeThread barcodeThread = (BarcodeThread) SlaveConnection.get(SlaveType.Barcode, inSta.getBarcode()); @@ -240,14 +239,14 @@ if (!result) { throw new CoolException("鏇存柊plc绔欑偣淇℃伅澶辫触"); } - } else if (code == 500){ - if (ledThread != null) { - String errorMsg = jsonObject.getString("msg"); - if (!Cools.isEmpty(errorMsg)) { - MessageQueue.offer(SlaveType.Led, inSta.getLed(), new Task(3, errorMsg)); - } - } - News.error("璇锋眰鎺ュ彛澶辫触锛侊紒锛乽rl锛歿}锛況equest锛歿}锛況esponse锛歿}", wmsUrl + "/rpc/pakin/loc/v1", JSON.toJSONString(param), response); +// } else if (code == 500){ +// if (ledThread != null) { +// String errorMsg = jsonObject.getString("msg"); +// if (!Cools.isEmpty(errorMsg)) { +// MessageQueue.offer(SlaveType.Led, inSta.getLed(), new Task(3, errorMsg)); +// } +// } +// News.error("璇锋眰鎺ュ彛澶辫触锛侊紒锛乽rl锛歿}锛況equest锛歿}锛況esponse锛歿}", wmsUrl + "/rpc/pakin/loc/v1", JSON.toJSONString(param), response); } else if (code == 700) { staProtocol.setWorkNo((short) 9995); staProtocol.setStaNo(inSta.getBackSta().shortValue()); @@ -259,22 +258,39 @@ String errorMsg = barcode + "鎵樼洏璇嗗埆寮傚父锛岃鍏堣繘琛岀粍鎵橈紒"; MessageQueue.offer(SlaveType.Led, inSta.getLed(), new Task(3, errorMsg)); } - } else if (code == 1000){ + } else if (code == 500 || code == 1000){ if (inSta.getStaNo().equals(103)){ staProtocol.setWorkNo((short)9996); staProtocol.setStaNo((short)203); - }else { + } + if (inSta.getStaNo().equals(203)){ staProtocol.setWorkNo((short)9996); staProtocol.setStaNo((short)103); + }if (inSta.getStaNo().equals(113)){ + staProtocol.setWorkNo((short)9995); + staProtocol.setStaNo((short)114); + }else if (inSta.getStaNo().equals(213)){ + staProtocol.setWorkNo((short)9995); + staProtocol.setStaNo((short)214); } devpThread.setPakMk(staProtocol.getSiteId(), false); MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol)); - - // led 寮傚父鏄剧ず - if (ledThread != null) { - String errorMsg = barcode + "闇�瑕佹崲鍏ュ簱绔欍�傜洰鏍囩珯锛�"+staProtocol.getStaNo(); - MessageQueue.offer(SlaveType.Led, inSta.getLed(), new Task(3, errorMsg)); + String data = jsonObject.getString("data"); + String msg = jsonObject.getString("msg"); + if (code == 500){ + // led 寮傚父鏄剧ず + if (ledThread != null) { + String errorMsg ="鍏ュ簱绔欙細" + staProtocol.getStaNo() + "---" + barcode + "妫�绱㈠簱浣嶅け璐�,璇锋鏌ュ簱瀛樺墿浣欍��===>>" + data + "--" + msg; + MessageQueue.offer(SlaveType.Led, inSta.getLed(), new Task(3, errorMsg)); + } + } else if (code == 1000){ + // led 寮傚父鏄剧ず + if (ledThread != null) { + String errorMsg ="鍏ュ簱绔欙細" + staProtocol.getStaNo() + "---" + barcode + "闇�瑕佹崲鍏ュ簱绔欍��"; + MessageQueue.offer(SlaveType.Led, inSta.getLed(), new Task(3, errorMsg)); + } } + } } catch (Exception e) { e.printStackTrace(); @@ -1205,7 +1221,8 @@ } } if(flag){ - return false; + continue; +// return false; } // 鍒ゆ柇鏄惁宸插瓨鍦ㄥ皬杞︾粦瀹氫换鍔� @@ -1527,9 +1544,11 @@ } else { List<String> shallowLocs = Utils.getShallowLocs(wrkMast.getSourceLocNo()); if (!Cools.isEmpty(shallowLocs)) { + // 娴呭簱浣嶇粍鏈夎揣 for (String shallowLocNo : shallowLocs) { LocMast shallowLoc = locMastService.selectById(shallowLocNo); WrkMast waitWrkMast = wrkMastMapper.selectByLocNo(shallowLocNo); + // 娴呭簱浣嶅湪浣滀笟涓� if (shallowLoc.getLocSts().equals("P") || shallowLoc.getLocSts().equals("R")) { if (Cools.isEmpty(waitWrkMast)){ News.error("搴撲綅寮傚父"); @@ -1557,7 +1576,8 @@ break; } } - }else if (shallowLoc.getLocSts().equals("F") || shallowLoc.getLocSts().equals("D")) { + // 娴呭簱浣嶇粍鏈夎揣锛屼笖娌℃湁鍦ㄤ綔涓氫腑 + } else if (shallowLoc.getLocSts().equals("F") || shallowLoc.getLocSts().equals("D")) { if (null == waitWrkMast) { // 鐢熸垚涓�绗旂Щ搴撲换鍔″伐浣滄。銆佹敼鍙樻祬搴撲綅鐨勬簮搴�/鐩爣搴� 搴撲綅鐘舵�� // 娌℃湁浣滀笟涓殑鍑哄簱浠诲姟鏃讹紝鎵嶈兘鐢熸垚绉诲簱浠诲姟 @@ -4610,7 +4630,8 @@ } LocMast loc = null; - if(shallowLoc.getLocType2() == 3){ //浣庨娣风洿鎺ュ嚭搴� + if(shallowLoc.getLocType2() == 3 || shallowLoc.getLocType2() == 1){ + //浣庨娣风洿鎺ュ嚭搴� // 鑾峰彇宸ヤ綔鍙� int workNo = commonService.getWorkNo(0); Date now = new Date(); @@ -4655,13 +4676,20 @@ WrkDetl wrkDetl = new WrkDetl(); wrkDetl.sync(locDetl); wrkDetl.setWrkNo(workNo); - wrkDetl.setIoTime(new Date()); + wrkDetl.setIoTime(now); wrkDetl.setAnfme(locDetl.getAnfme()); - wrkDetl.setAppeTime(new Date()); - wrkDetl.setModiTime(new Date()); + wrkDetl.setAppeTime(now); + wrkDetl.setModiTime(now); if (!wrkDetlService.insert(wrkDetl)) { throw new CoolException("淇濆瓨宸ヤ綔妗f槑缁嗗け璐�"); } + // 鐢熸垚瀵瑰簲鐨勭粍鎵樻。 + WaitPakin waitPakin = new WaitPakin(); + waitPakin.sync(wrkDetl); + waitPakin.setModiTime(now); + waitPakin.setAppeTime(now); + waitPakinMapper.insert(waitPakin); + } } // 淇敼婧愬簱浣嶇姸鎬� @@ -4919,9 +4947,25 @@ // } } } else { - // 鍏ュ簱妯″紡 - devpThread.ioModeOf3F = IoModeType.PAKIN_MODE; - + CrnThread crnThread = (CrnThread) SlaveConnection.get(SlaveType.Crn, 1); + CrnProtocol crnProtocol = crnThread.getCrnProtocol(); + if (crnProtocol != null) { + if (crnProtocol.getTaskNo() != 0) { + if (crnProtocol.isStatusEnd()){ + // 鍑哄簱妯″紡 + devpThread.ioModeOf3F = IoModeType.PAKOUT_MODE; + } else { + // 鍏ュ簱妯″紡 + devpThread.ioModeOf3F = IoModeType.PAKIN_MODE; + } + } else { + // 鍏ュ簱妯″紡 + devpThread.ioModeOf3F = IoModeType.PAKIN_MODE; + } + } else { + // 鍏ュ簱妯″紡 + devpThread.ioModeOf3F = IoModeType.PAKIN_MODE; + } } } break; @@ -4948,8 +4992,25 @@ // } } } else { - // 鍏ュ簱妯″紡 - devpThread.ioModeOf4F = IoModeType.PAKIN_MODE; + CrnThread crnThread = (CrnThread) SlaveConnection.get(SlaveType.Crn, 3); + CrnProtocol crnProtocol = crnThread.getCrnProtocol(); + if (crnProtocol != null) { + if (crnProtocol.getTaskNo() != 0) { + if (crnProtocol.isStatusEnd()){ + // 鍑哄簱妯″紡 + devpThread.ioModeOf3F = IoModeType.PAKOUT_MODE; + } else { + // 鍏ュ簱妯″紡 + devpThread.ioModeOf3F = IoModeType.PAKIN_MODE; + } + } else { + // 鍏ュ簱妯″紡 + devpThread.ioModeOf3F = IoModeType.PAKIN_MODE; + } + } else { + // 鍏ュ簱妯″紡 + devpThread.ioModeOf3F = IoModeType.PAKIN_MODE; + } } } break; -- Gitblit v1.9.1