From a0d7fdd303b3f76131d77162a7dd2c7db60d80ae Mon Sep 17 00:00:00 2001 From: lsh <1> Date: 星期三, 24 一月 2024 19:12:26 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/task/handler/ReportToDismantleTheStackHandler.java | 138 +++++++++++++++++++++++++++++++++++++--------- 1 files changed, 111 insertions(+), 27 deletions(-) diff --git a/src/main/java/com/zy/asrs/task/handler/ReportToDismantleTheStackHandler.java b/src/main/java/com/zy/asrs/task/handler/ReportToDismantleTheStackHandler.java index e9209ba..b24e75d 100644 --- a/src/main/java/com/zy/asrs/task/handler/ReportToDismantleTheStackHandler.java +++ b/src/main/java/com/zy/asrs/task/handler/ReportToDismantleTheStackHandler.java @@ -18,11 +18,13 @@ import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import java.util.ArrayList; +import java.util.Date; import java.util.List; /** * Created by Monkey D. Luffy on 2023.07.25 - * 寰愬伐姹変簯..............浠ヤ笅.............涓婇ザ姹熼摐.............鑷姩琛ョ┖鏉� + * 寰愬伐姹変簯..............浠ヤ笅.............涓婇ザ姹熼摐.............鎷嗗灈淇℃伅涓婁紶 */ @Slf4j @Service @@ -42,51 +44,105 @@ @Autowired private BasDevpService basDevpService; - @Value("${srXghyErp.url}") + @Value("${srHangJia.url}") private String erpUrl; - @Value("${srXghyErp.barcodeUploadPath}") - private String barcodeUploadpath; + @Value("${srHangJia.reportOutPath}") + private String reportOutPath; public ReturnT<String> start(int staNo) { try { + Date now = new Date(); BasDevp basDevp = basDevpService.selectById(staNo); - if (!Cools.isEmpty(basDevp) && basDevp.getAutoing().equals("Y") && basDevp.getWrkNo()!=0){ //涓婁紶鍓嶅伐浣滃彿璺熺數鎺х害瀹氫负9992锛堜綘鍙互鑷畾涔夛級 + Integer staOther = getStaOther(staNo); + Integer staEnd = getStaEnd(staNo); + if (staOther==0) return FAIL; + BasDevp basDevpOther = basDevpService.selectById(staOther); + if (Cools.isEmpty(basDevpOther) || basDevpOther.getReportSign()==1){ + return FAIL; + } + BasDevp basDevpEnd = basDevpService.selectById(staEnd); + if (!basDevpEnd.getLoading().equals("Y") || !basDevpEnd.getAutoing().equals("Y") || !basDevpEnd.getInEnable().equals("Y")){ + return FAIL; + } + if ((basDevpEnd.getWrkNo()<9900 && basDevpEnd.getWrkNo()!=0 ) || basDevpEnd.getWrkNo()>10000 || basDevpEnd.getReportSign()!=0){ + return FAIL; + } + WrkMast wrkMast1 = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("io_type", 202).eq("source_sta_no", staEnd).eq("wrk_sts",51L)); + if (!Cools.isEmpty(wrkMast1)) return FAIL; + if (!Cools.isEmpty(basDevp) && basDevp.getAutoing().equals("Y") && basDevp.getWrkNo()!=0){ //涓婁紶鍓嶅伐浣滃彿璺熺數鎺х害瀹氫负9992涓帶(妗佹灦)锛氱爜鍨涘畬鎴愪笅鍙戝叆搴撲俊鎭紙浣犲彲浠ヨ嚜瀹氫箟锛� + WrkMast wrkMast = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("wrk_no", basDevp.getWrkNo())); - if (Cools.isEmpty(wrkMast) || !wrkMast.getSheetNo().equals("0")){ - return SUCCESS; + if (Cools.isEmpty(wrkMast) || Cools.isEmpty(wrkMast.getSheetNo()) || !wrkMast.getSheetNo().equals("0")){ + return FAIL; } List<WrkDetl> wrkDetls = wrkDetlService.selectByWrkNo(wrkMast.getWrkNo()); if (Cools.isEmpty(wrkDetls) || wrkDetls.size()==0){ - return SUCCESS; + return FAIL; } - SingleMountUnstackingCompleteParam singleMountUnstackingCompleteParam = new SingleMountUnstackingCompleteParam(wrkMast,wrkDetls); + List<WrkDetl> wrkDetlList = new ArrayList<>(); + String signOne = ""; + String signTwo = ""; + for (WrkDetl wrkDetl:wrkDetls){ + if (wrkDetl.getOrigin().equals("1") && signOne.equals("")){ + wrkDetlList.add(wrkDetl); + signOne = "1"; + } else if (wrkDetl.getOrigin().equals("2") && signTwo.equals("")){ + wrkDetlList.add(wrkDetl); + signTwo = "2"; + } + if (!signOne.equals("") && !signTwo.equals("")){ + break; + } + } + SingleMountUnstackingCompleteParam singleMountUnstackingCompleteParam = new SingleMountUnstackingCompleteParam(wrkMast,wrkDetlList); singleMountUnstackingCompleteParam.setStaStart(staNo); - singleMountUnstackingCompleteParam.setStaEnd(staNo>119? 135:133); - ReturnT<String> result = null; - result = postMesData(barcodeUploadpath,singleMountUnstackingCompleteParam); - System.out.println(result); - if (true){ + singleMountUnstackingCompleteParam.setStaEnd(staEnd); +// result = null; +// if (true){ +// return FAIL; +// } + ReturnT<String> result = postMesData(reportOutPath,singleMountUnstackingCompleteParam); +// System.out.println(result); +// if (true){ +// for (WrkDetl wrkDetl:wrkDetls){ +// WrkDetlSingle wrkDetlSingle = new WrkDetlSingle(); +// wrkDetlSingle.sync(wrkDetl); +// wrkDetlSingle.setWrkNo(wrkDetl.getWrkNo().longValue()); +// wrkDetlSingleService.insert(wrkDetlSingle); +// } +// wrkMast.setSheetNo("1"); +// wrkMastService.updateById(wrkMast); +// basDevp.setReportSign(1); +// basDevpService.updateById(basDevp); +// basDevpEnd.setReportSign(1); +// basDevpService.updateById(basDevp); +// return SUCCESS; +// } + if (result.getCode()==200){ + Date nowOne = new Date(); + Date nowTwo = now; for (WrkDetl wrkDetl:wrkDetls){ + if (wrkDetl.getOrigin().equals("1")){ + now = nowOne; + } else if (wrkDetl.getOrigin().equals("2")){ + now = nowTwo; + } WrkDetlSingle wrkDetlSingle = new WrkDetlSingle(); wrkDetlSingle.sync(wrkDetl); wrkDetlSingle.setWrkNo(wrkDetl.getWrkNo().longValue()); + wrkDetlSingle.setIoTime(now); wrkDetlSingleService.insert(wrkDetlSingle); } wrkMast.setSheetNo("1"); wrkMastService.updateById(wrkMast); - return SUCCESS; - } - if (result.getCode()==200){ - for (WrkDetl wrkDetl:wrkDetls){ - WrkDetlSingle wrkDetlSingle = new WrkDetlSingle(); - wrkDetlSingle.sync(wrkDetl); - wrkDetlSingleService.insert(wrkDetlSingle); - } - wrkMast.setSheetNo("1"); - wrkMastService.updateById(wrkMast); + basDevp.setReportSign(1); + basDevpService.updateById(basDevp); + basDevpEnd.setReportSign(1); + basDevpService.updateById(basDevpEnd); + return SUCCESS; }else { - log.error("鏉$爜涓婁紶涓帶澶辫触"); + log.error("鎷嗗灈淇℃伅涓婁紶澶辫触"); } } }catch (Exception e){ @@ -108,10 +164,10 @@ .build() .doPost(); JSONObject jsonObject = JSON.parseObject(response); - if (jsonObject.getString("result").equals("Y")) { + if (jsonObject.getInteger("Code")==200) { success = true; } else { - log.error("璇锋眰鎺ュ彛澶辫触锛侊紒锛乽rl锛歿}锛況equest锛歿}锛況esponse锛歿}"+erpUrl+erpPath, JSON.toJSONString(combParam), response); + log.error("鎷嗗灈淇℃伅涓婁紶璇锋眰鎺ュ彛澶辫触锛侊紒锛乽rl锛歿}锛況equest锛歿}锛況esponse锛歿}"+erpUrl+erpPath, JSON.toJSONString(combParam), response); throw new CoolException("涓婃姤erp绯荤粺澶辫触"); } } catch (Exception e) { @@ -135,4 +191,32 @@ } return SUCCESS; } + + public Integer getStaOther(Integer staNo){ + switch (staNo){ + case 118: + return 119; + case 119: + return 118; + case 120: + return 121; + case 121: + return 120; + default: + return 0; + } + } + + public Integer getStaEnd(Integer staNo){ + switch (staNo){ + case 118: + case 119: + return 131; + case 120: + case 121: + return 135; + default: + return 0; + } + } } -- Gitblit v1.9.1