From 4c4c8fb50c3e9a86ebe6948bfa81961579ea86c3 Mon Sep 17 00:00:00 2001 From: pjb <pjb123456> Date: 星期一, 16 六月 2025 14:59:31 +0800 Subject: [PATCH] wcs功能完善 --- src/main/java/com/zy/service/impl/MainServiceImpl.java | 81 +++++++++++++++++++++++----------------- 1 files changed, 46 insertions(+), 35 deletions(-) diff --git a/src/main/java/com/zy/service/impl/MainServiceImpl.java b/src/main/java/com/zy/service/impl/MainServiceImpl.java index 26fcc24..c550397 100644 --- a/src/main/java/com/zy/service/impl/MainServiceImpl.java +++ b/src/main/java/com/zy/service/impl/MainServiceImpl.java @@ -90,7 +90,7 @@ taskStaNoToRgvStaNoMap.put(1050,1044);taskStaNoToRgvStaNoMap.put(1078,1044);taskStaNoToRgvStaNoMap.put(1064,1044);taskStaNoToRgvStaNoMap.put(1071,1044);taskStaNoToRgvStaNoMap.put(1096,1094); taskStaNoToRgvStaNoMap.put(1104,1100);taskStaNoToRgvStaNoMap.put(1102,1100);taskStaNoToRgvStaNoMap.put(1090,1090);taskStaNoToRgvStaNoMap.put(1002,1001);taskStaNoToRgvStaNoMap.put(1016,1018); - taskStaNoToRgvStaNoMap.put(1020,1019);taskStaNoToRgvStaNoMap.put(1024,1022);taskStaNoToRgvStaNoMap.put(1035,1034);taskStaNoToRgvStaNoMap.put(1040,1033);taskStaNoToRgvStaNoMap.put(1043,1041); + taskStaNoToRgvStaNoMap.put(1020,1019);taskStaNoToRgvStaNoMap.put(1024,1022);taskStaNoToRgvStaNoMap.put(1031,1033);taskStaNoToRgvStaNoMap.put(1035,1034);taskStaNoToRgvStaNoMap.put(1040,1033);taskStaNoToRgvStaNoMap.put(1043,1041); canningLineRgvConnectionSiteList.add(1083);canningLineRgvConnectionSiteList.add(1086); canningLineRgvConnectionSiteList.add(1089); @@ -205,12 +205,11 @@ if (!staProtocol.isLoading()){ continue; } - if (!staProtocol.isPakMk()) { - continue; - } News.info("{}鍏ュ簱鍥為��锛歿}锛屼换鍔″彿锛歿}", inSta.getStaNo(), errMsg,wrkNo); - log.error("{}鍏ュ簱鍥為��锛歿}锛屼换鍔″彿锛歿}", inSta.getStaNo(), errMsg,wrkNo); - return; + // 濡傛灉瓒呴檺鎶ヨ鎴栬秴閲嶇瓑锛屽嚭鍒�1024 + if(errMsg.equals("鎵爜澶辫触")) { + return; + } } // 鍒ゆ柇鏄惁婊¤冻鍏ュ簱鏉′欢 @@ -222,11 +221,13 @@ ) { if(Cools.isEmpty(barcode) || "NG".endsWith(barcode) || "NoRead".equals(barcode) || "00000000".equals(barcode) || barcode.startsWith("ERROR")) { log.error("{}鍙锋潯鐮佹娴嬪け璐ワ紝鏉$爜淇℃伅锛歿}", inSta.getBarcode(), barcode); + MessageQueue.offer(SlaveType.Led, inSta.getLed(), new Task(3, "鏉$爜妫�娴嬪け璐ワ細"+barcode)); continue; } // 鍒ゆ柇閲嶅宸ヤ綔妗� WrkMast wrkMast = wrkMastMapper.selectPakInStep1(inSta.getStaNo(), barcode); if (wrkMast != null) { + MessageQueue.offer(SlaveType.Led, inSta.getLed(), new Task(3, "鏉$爜宸查噸澶嶏細" + barcode)); continue; } @@ -242,6 +243,7 @@ param.setBucketCount(staProtocol.getBucketCount()); param.setTailSupportFlag(staProtocol.isTailSupportFlag()); param.setWantBucketFlag(getWantBucketFlag()); + param.setErrMsg(errMsg); String response = new HttpHandler.Builder() .setUri(wmsUrl) @@ -293,8 +295,8 @@ StaProtocol staProtocol1084 = devpThread.getStation().get(1084); StaProtocol staProtocol1087 = devpThread.getStation().get(1087); List<SearchLocParam.WantBucket> wantBucketList = new ArrayList<>(); - wantBucketList.add(new SearchLocParam.WantBucket(1071,staProtocol1081.getWantBucketFlag())); wantBucketList.add(new SearchLocParam.WantBucket(1064,staProtocol1084.getWantBucketFlag())); + wantBucketList.add(new SearchLocParam.WantBucket(1071,staProtocol1081.getWantBucketFlag())); wantBucketList.add(new SearchLocParam.WantBucket(1078,staProtocol1087.getWantBucketFlag())); return wantBucketList; } @@ -808,6 +810,14 @@ break; } + if (crnStn.getStaNo() == 1093) { // 鍒ゆ柇鍑哄簱鍒板埌1093锛屽垽鏂�1092鏄惁鏈夌墿,鏈夌墿涓嶅彲鍑� + StaProtocol staProtocol2 = devpThread.getStation().get(1092); + if(!staProtocol2.isAutoing() || staProtocol2.isLoading() || staProtocol2.getWorkNo() != 0) { + log.warn("1鍙峰爢鍨涙満鍑哄簱鍙栬揣鍓嶏紝鍒ゆ柇1092绔欑偣淇℃伅鑷姩锛歿}锛屾湁鐗╋細{}锛屽伐浣滃彿锛歿}锛屼笉鍙叆",staProtocol2.isAutoing(),staProtocol2.isLoading(),staProtocol2.getWorkNo()); + continue; + } + } + // 鍙屾繁搴撲綅涓旀祬搴撲綅鏈夎揣锛屽垯闇�鍏堝娴呭簱浣嶈繘琛屽簱浣嶇Щ杞� if (Utils.isDeepLoc(slaveProperties, wrkMast.getSourceLocNo())) { News.warnNoLog(""+mark+" - 2"+" - 6"+" - 鍙屾繁搴撲綅涓旀祬搴撲綅鏈夎揣锛屽垯闇�鍏堝娴呭簱浣嶈繘琛屽簱浣嶇Щ杞� : 寮�濮嬫墽琛� 浠诲姟鍙�={}",wrkMast.getWrkNo()); @@ -1292,33 +1302,29 @@ break; } ledCommand.setSourceLocNo(wrkMast.getSourceLocNo()); + ledCommand.setLocNo(wrkMast.getLocNo()); + ledCommand.setSourceStaNo(wrkMast.getSourceStaNo()); ledCommand.setStaNo(wrkMast.getStaNo()); ledCommand.setBarcode(wrkMast.getBarcode()); - if (wrkMast.getIoType() != 110 && wrkMast.getIoType() != 10) { - List<WrkDetl> wrkDetls = wrkDetlService.selectList(new EntityWrapper<WrkDetl>().eq("wrk_no", wrkMast.getWrkNo())); -// List<WrkDetl> wrkDetls = wrkDetlService.findByWorkNo(wrkMast.getWrkNo()); - wrkDetls.forEach(wrkDetl -> ledCommand.getMatDtos().add(new MatDto(wrkDetl.getMatnr(), wrkDetl.getBatch(), wrkDetl.getSpecs(),wrkDetl.getManuDate(),wrkDetl.getModel(),wrkDetl.getWeight(),wrkDetl.getManLength(),wrkDetl.getVolume()))); -// wrkDetls.forEach(wrkDetl -> { -// Double total = 0.0; -// EntityWrapper<LocDetl> wrapper = new EntityWrapper<>(); -// LocDetl locDetl = locDetlService.selectOne(wrapper.eq("zpallet", wrkDetl.getZpallet()).eq("matnr", wrkDetl.getMatnr())); -// if (Cools.isEmpty(locDetl)) { -// total = wrkDetl.getAnfme(); -// } else { -// total = locDetl.getAnfme(); -// } -// if (wrkMast.getIoType() == 101 || wrkMast.getIoType() == 1) { -// ledCommand.getMatDtos().add(new MatDto(wrkDetl.getMatnr(), wrkDetl.getMaktx(), wrkDetl.getBatch(), wrkDetl.getSpecs(), wrkDetl.getManu(), wrkDetl.getMemo(), wrkDetl.getAnfme(),total)); -// } -// if (wrkMast.getIoType() == 103 && (null == wrkDetl.getInspect() || 0 == wrkDetl.getInspect())) { -// ledCommand.getMatDtos().add(new MatDto(wrkDetl.getMatnr(), wrkDetl.getMaktx(), wrkDetl.getBatch(), wrkDetl.getSpecs(), wrkDetl.getManu(), wrkDetl.getMemo(), wrkDetl.getAnfme(),total)); -// } -// if (wrkMast.getIoType() == 107) { -// ledCommand.getMatDtos().add(new MatDto(wrkDetl.getMatnr(), wrkDetl.getMaktx(), wrkDetl.getBatch(), wrkDetl.getSpecs(), wrkDetl.getManu(), wrkDetl.getMemo(), wrkDetl.getAnfme(),total)); -// } -// }); + MatDto matDto = new MatDto(); + // 鏄庣粏 + WrkDetl wrkDetl1 = wrkDetlService.selectOne(new EntityWrapper<WrkDetl>().eq("wrk_no", wrkMast.getWrkNo())); + if (wrkDetl1 != null) { + ledCommand.setOrderNo(wrkDetl1.getOrderNo()); + matDto.setMaknx(wrkDetl1.getMaktx()); + matDto.setMatnr(wrkDetl1.getMatnr()); + matDto.setBatch(wrkDetl1.getBatch()); + matDto.setManuDate(wrkDetl1.getManuDate()); + matDto.setAnfme(wrkDetl1.getAnfme()); + matDto.setWeight(wrkDetl1.getWeight()); + matDto.setGrossWeight(wrkDetl1.getManLength()); + ledCommand.getMatDtos().add(matDto); } - commands.add(ledCommand); + // 璁㈠崟 +// if(wrkDetl1 != null && !Cools.isEmpty(wrkDetl1.getOrderNo())) { +// +// } + commands.add(0,ledCommand); } Set<Integer> workNos = wrkMasts.stream().map(WrkMast::getWrkNo).collect(Collectors.toSet()); // 鑾峰彇LED绾跨▼ @@ -1652,10 +1658,14 @@ log.warn("rgv鏀捐揣瀹屾垚锛宺gv鏈浣�:rgv鍙穥}锛屼换鍔″彿锛歿}锛屼换鍔$姸鎬亄}",wrkMast.getRgvNo(),wrkMast.getWrkNo(),wrkMast.getWrkSts()); continue; } - wrkMast.setWrkSts(2L); + wrkMast.setWrkSts(5L); wrkMast.setModiTime(new Date()); wrkMastService.updateById(wrkMast); - } else if(wrkMast.getIoType() == 101 && wrkMast.getWrkSts() == 2 && (wrkMast.getStaNo() == 1024 || wrkMast.getStaNo() == 1016 || wrkMast.getStaNo() == 1043)) { + } else if(wrkMast.getIoType() == 101 && (wrkMast.getStaNo() == 1024 || wrkMast.getStaNo() == 1016 || wrkMast.getStaNo() == 1043)) { + if(wrkMast.getWrkSts() != 2 ) { + log.warn("rgv鏀捐揣瀹屾垚锛宺gv鏈浣�:rgv鍙穥}锛屼换鍔″彿锛歿}锛屼换鍔$姸鎬亄}", wrkMast.getRgvNo(), wrkMast.getWrkNo(), wrkMast.getWrkSts()); + continue; + } wrkMast.setWrkSts(15L); wrkMast.setModiTime(new Date()); wrkMastService.updateById(wrkMast); @@ -1873,10 +1883,11 @@ CanningLineInLocParam param = new CanningLineInLocParam(); param.setWrkNo(staProtocol.getWrkNo()); param.setMatnr(staProtocol.getMatnr().trim()); - param.setBatch(staProtocol.getBatch()); + param.setBatch(staProtocol.getBatch().trim()); param.setManuDate(staProtocol.getManuDate()); param.setWeight(staProtocol.getWeight()); param.setGrossWeight(staProtocol.getGrossWeight()); + param.setReinspection(staProtocol.isReinspection()); param.setSourceStaNo(site + 2); param.setTbFlag(staProtocol2.isBarcodeErr()); @@ -1951,7 +1962,7 @@ staProtocol.setBucketCount(wrkDetl.getAnfme().intValue()); boolean result = MessageQueue.offer(SlaveType.Devp, inGzxSiteList.indexOf(site) + 4, new Task(4, staProtocol)); if (result) { - log.info("鍛婅瘔缃愯绾垮叆搴撴《淇℃伅鍛戒护闃熷垪鎺ㄩ�佹垚鍔燂細" + staProtocol.getWorkNo() + "," + site + "," + staProtocol.getBucketType() +"," + staProtocol.getBucketCount()); + log.info("鍛婅瘔缃愯绾垮叆搴撴《淇℃伅鍛戒护闃熷垪鎺ㄩ�佹垚鍔燂細" + staProtocol.getWorkNo() + "," +"鎵樼洏鐮侊細" + wrkMast.getBarcode() +"锛�" + site + "," + staProtocol.getBucketType() +"," + staProtocol.getBucketCount()); News.info("鍛婅瘔缃愯绾垮叆搴撴《淇℃伅鍛戒护闃熷垪鎺ㄩ�佹垚鍔燂細" + staProtocol.getWorkNo() + "," + site + "," + staProtocol.getBucketType() +"," + staProtocol.getBucketCount()); wrkMast.setWhsType(1); // 鏇存柊鎺ㄩ�佹爣璇嗭紝閬垮厤閲嶅鎺ㄩ�� wrkMastService.updateById(wrkMast); -- Gitblit v1.9.1