From 93a5853a6956d39b2f6fa940c3b9a5701f9498d8 Mon Sep 17 00:00:00 2001 From: 18516761980 <tqsxp@163.com> Date: 星期日, 05 三月 2023 15:17:16 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java | 113 ++++++++++++++++++++------------------------------------ 1 files changed, 40 insertions(+), 73 deletions(-) diff --git a/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java index e24fd80..021c0ed 100644 --- a/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java @@ -55,9 +55,7 @@ @Autowired private WaitPakinService waitPakinService; @Autowired - private WrkMastService wrkMastService; - @Autowired - private WorkLogHandler workLogHandler; + private WrkDetlService wrkDetlService; @Override @Transactional @@ -488,6 +486,11 @@ matSyncParam.setMats(matParams); return matSyncParam; } + public void callApiLogSave(MatSyncParam.Mats matParam, String tableName, String response, Boolean bool) { + apiLogService.save("ERP涓嬪彂鍟嗗搧淇℃伅", tableName, "null", "10.10.10.1", + "鐗╂枡缂栫爜锛�" + matParam.getMatnr() + "銆佺墿鏂欏悕绉帮細" + matParam.getMaktx() + "銆佽鏍硷細" + matParam.getSpecs() + "銆佸娉細" + matParam.getMemo(), + response, bool); + } @Override @@ -495,28 +498,32 @@ public void combMes(CombParam param) { Long userId=9999l; if (Cools.isEmpty(param.getBarcode(), param.getCombMats())) { + callApiLogSaveMES(null, null, BaseRes.PARAM, false); throw new CoolException(BaseRes.PARAM); + } + if(param.getBarcode().length()!=8){ + callApiLogSaveMES(param, null, param.getBarcode() + "锛氭潯鐮侀暱搴︿笉鏄�8浣�", false); + throw new CoolException("鏉$爜闀垮害涓嶆槸8浣�===>>" + param.getBarcode()); } // 鍒ゆ柇鏄惁鏈夌浉鍚屾潯鐮佺殑鏁版嵁 if (waitPakinService.selectCount(new EntityWrapper<WaitPakin>(). eq("zpallet", param.getBarcode()).eq("io_status", "N")) > 0) { + callApiLogSaveMES(param, null, param.getBarcode() + "鏁版嵁姝e湪杩涜鍏ュ簱", false); throw new CoolException(param.getBarcode() + "鏁版嵁姝e湪杩涜鍏ュ簱"); } - // todo: 涓嶄笅绾块噸鏂板叆搴� - WrkMast wrkMast = wrkMastService.selectByBarcode(param.getBarcode()); - if (wrkMast != null && wrkMast.getWrkSts() == 18) { - ReturnT<String> start = workLogHandler.start(wrkMast); - if (!start.isSuccess()) { - log.error("宸ヤ綔妗workNo={}]鍘嗗彶妗e鐞嗗け璐�", wrkMast.getWrkNo()); - } + int countLoc = locDetlService.selectCount(new EntityWrapper<LocDetl>().eq("zpallet",param.getBarcode())); + int countWrk = wrkDetlService.selectCount(new EntityWrapper<WrkDetl>().eq("zpallet",param.getBarcode())); + if (countLoc > 0) { + callApiLogSaveMES(param, null, param.getBarcode() + "锛氬簱瀛樻潯鐮佹暟鎹凡瀛樺湪", false); + throw new CoolException("搴撳瓨鏉$爜鏁版嵁宸插瓨鍦�===>>" + param.getBarcode()); + }else if (countWrk > 0){ + callApiLogSaveMES(param, null, param.getBarcode() + "锛氬伐浣滄槑缁嗘。宸插瓨鍦ㄦ鏁版嵁", false); + throw new CoolException("宸ヤ綔鏄庣粏妗e凡瀛樺湪姝ゆ暟鎹�===>>" + param.getBarcode()); } Date now = new Date(); - - // 鏃犲崟缁勬墭 - if (Cools.isEmpty(param.getOrderNo())) { - + try{ // 鐢熸垚鍏ュ簱閫氱煡妗� List<DetlDto> detlDtos = new ArrayList<>(); param.getCombMats().forEach(elem -> { @@ -530,10 +537,10 @@ } }); - for (DetlDto detlDto : detlDtos) { Mat mat = matService.selectByMatnr(detlDto.getMatnr()); if (Cools.isEmpty(mat)) { + callApiLogSaveMES(param, null,mat.getMatnr()+"鍟嗗搧妗f涓嶅瓨鍦�", false); throw new CoolException(detlDto.getMatnr() + "鍟嗗搧妗f涓嶅瓨鍦�"); } WaitPakin waitPakin = new WaitPakin(); @@ -548,69 +555,29 @@ waitPakin.setModiUser(userId); waitPakin.setModiTime(now); if (!waitPakinService.insert(waitPakin)) { + callApiLogSaveMES(param, null,mat.getMatnr()+"淇濆瓨鍏ュ簱閫氱煡妗eけ璐�", false); throw new CoolException("淇濆瓨鍏ュ簱閫氱煡妗eけ璐�"); } } - // 鍏宠仈缁勬墭 - } else { - Order order = orderService.selectByNo(param.getOrderNo()); - if (Cools.isEmpty(order)){ - throw new CoolException("鍗曟嵁涓嶅瓨鍦�:"+param.getOrderNo()); - } - if (order.getSettle() > 2) { - throw new CoolException("鍗曟嵁缂栧彿宸茶繃鏈�"); - } - // 鐢熸垚鍏ュ簱閫氱煡妗� - List<DetlDto> detlDtos = new ArrayList<>(); - param.getCombMats().forEach(elem -> { - - // 璁㈠崟鏄庣粏鏁伴噺鏍¢獙 - OrderDetl orderDetl = orderDetlService.selectItem(order.getId(), elem.getMatnr(), elem.getBatch()); - if (elem.getAnfme() > orderDetl.getEnableQty()) { - throw new CoolException(orderDetl.getMatnr() + "鍏ュ簱鏁伴噺涓嶅悎娉�"); - } - // 淇敼璁㈠崟鏄庣粏鏁伴噺 - if (!orderDetlService.increase(order.getId(), elem.getMatnr(), elem.getBatch(), elem.getAnfme())) { - throw new CoolException("淇敼鍗曟嵁鏄庣粏鏁伴噺澶辫触"); - } - - DetlDto detlDto = new DetlDto(elem.getMatnr(), elem.getBatch(), elem.getAnfme()); - if (DetlDto.has(detlDtos, detlDto)) { - DetlDto one = DetlDto.find(detlDtos, detlDto.getMatnr(), detlDto.getBatch()); - assert one != null; - one.setAnfme(one.getAnfme() + detlDto.getAnfme()); - } else { - detlDtos.add(detlDto); - } - }); - for (DetlDto detlDto : detlDtos) { - Mat mat = matService.selectByMatnr(detlDto.getMatnr()); - if (Cools.isEmpty(mat)) { - throw new CoolException(detlDto.getMatnr() + "鍟嗗搧妗f涓嶅瓨鍦�"); - } - WaitPakin waitPakin = new WaitPakin(); - waitPakin.sync(mat); - waitPakin.setOrderNo(order.getOrderNo()); // 鍗曟嵁缂栧彿 - waitPakin.setBatch(detlDto.getBatch()); // 搴忓垪鐮� - waitPakin.setZpallet(param.getBarcode()); // 鎵樼洏鐮� - waitPakin.setIoStatus("N"); // 鍏ュ嚭鐘舵�� - waitPakin.setAnfme(detlDto.getAnfme()); // 鏁伴噺 - waitPakin.setStatus("Y"); // 鐘舵�� - waitPakin.setAppeUser(userId); - waitPakin.setAppeTime(now); - waitPakin.setModiUser(userId); - waitPakin.setModiTime(now); - if (!waitPakinService.insert(waitPakin)) { - throw new CoolException("淇濆瓨鍏ュ簱閫氱煡妗eけ璐�"); - } - } - orderService.updateSettle(order.getId(), 2L, userId); + }catch (Exception e){ + callApiLogSaveMES(null, null,""+e, false); } + callApiLogSaveMES(param, param.getCombMats().get(0),"缁勬墭鎴愬姛", true); } - public void callApiLogSave(MatSyncParam.Mats matParam, String tableName, String response, Boolean bool) { - apiLogService.save("ERP涓嬪彂鍟嗗搧淇℃伅", tableName, "null", "10.10.10.1", - "鐗╂枡缂栫爜锛�" + matParam.getMatnr() + "銆佺墿鏂欏悕绉帮細" + matParam.getMaktx() + "銆佽鏍硷細" + matParam.getSpecs() + "銆佸娉細" + matParam.getMemo(), - response, bool); + public void callApiLogSaveMES(CombParam combParam,CombParam.CombMat combMat, String response, Boolean bool) { + if (Cools.isEmpty(combParam)){ + apiLogService.save("MES涓嬪彂鍏ュ簱閫氱煡鍗�", "/open/asrs/comb/v1", "null", "10.10.10.1", + "", + response, bool); + }else if (Cools.isEmpty(combMat)){ + apiLogService.save("MES涓嬪彂鍏ュ簱閫氱煡鍗�", "/open/asrs/comb/v1", "null", "10.10.10.1", + "鎵樼洏鐮侊細" + combParam.getBarcode(), + response, bool); + }else { + apiLogService.save("MES涓嬪彂鍏ュ簱閫氱煡鍗�", "/open/asrs/comb/v1", "null", "10.10.10.1", + "鎵樼洏鐮侊細" + combParam.getBarcode() + "銆佺墿鏂欑紪鍙凤細" + combMat.getMatnr() + "銆佹暟閲忥細" + combMat.getAnfme(), + response, bool); + } } } -- Gitblit v1.9.1