From 314e894c0d6ce2739344dcd1c94ae7770868a0f1 Mon Sep 17 00:00:00 2001 From: Junjie <fallin.jie@qq.com> Date: 星期三, 28 五月 2025 14:51:16 +0800 Subject: [PATCH] # --- src/main/java/com/zy/common/service/CommonService.java | 76 +++++++++++++++++++++++++++++++++----- 1 files changed, 66 insertions(+), 10 deletions(-) diff --git a/src/main/java/com/zy/common/service/CommonService.java b/src/main/java/com/zy/common/service/CommonService.java index 42cc7bb..fd01bf3 100644 --- a/src/main/java/com/zy/common/service/CommonService.java +++ b/src/main/java/com/zy/common/service/CommonService.java @@ -21,8 +21,6 @@ @Autowired private WrkMastService wrkMastService; @Autowired - private WrkMastLogService wrkMastLogService; - @Autowired private WrkLastnoService wrkLastnoService; @Autowired private LocMastService locMastService; @@ -65,6 +63,21 @@ return workNo; } + //妫�娴嬪伐浣滃彿鏄惁鍦ㄦ寚瀹氱被鍨嬪伐浣滆寖鍥村唴 + public synchronized boolean checkWorkNoContainMk(Integer workNo, Integer wrkMk) { + WrkLastno wrkLastno = wrkLastnoService.selectById(wrkMk); + if (Cools.isEmpty(wrkLastno)) { + throw new CoolException("鏁版嵁寮傚父锛岃鑱旂郴绠$悊鍛�"); + } + + int sNo = wrkLastno.getSNo(); + int eNo = wrkLastno.getENo(); + if (workNo >= sNo && workNo <= eNo) { + return true; + } + return false; + } + public static String zerofill(String msg, Integer count) { if (msg.length() == count) { return msg; @@ -94,6 +107,8 @@ wrkMast.setWrkSts(WrkStsType.COMPLETE_MOVE.sts); } else if (wrkMast.getIoType() == WrkIoType.SHUTTLE_CHARGE.id) { wrkMast.setWrkSts(WrkStsType.COMPLETE_CHARGE.sts); + } else if (wrkMast.getIoType() == WrkIoType.LOC_MOVE.id) { + wrkMast.setWrkSts(WrkStsType.COMPLETE_LOC_MOVE.sts); } wrkMast.setModiTime(new Date()); @@ -108,21 +123,36 @@ throw new CoolException("浠诲姟涓嶅瓨鍦�"); } - wrkMastLogService.save(wrkNo); - wrkMastService.deleteById(wrkNo); + wrkMast.setMk("taskCancel"); + wrkMast.setModiTime(new Date()); + wrkMastService.updateById(wrkMast); return true; } //绉诲簱浠诲姟 public boolean createLocMoveTask(CreateLocMoveTaskParam param) { Date now = new Date(); - LocMast locMast = locMastService.queryByLoc(param.getSourceLocNo()); - if (null == locMast) { + LocMast sourceLocMast = locMastService.queryByLoc(param.getSourceLocNo()); + if (null == sourceLocMast) { throw new CoolException("婧愬簱浣嶄笉瀛樺湪"); } - if (!locMast.getLocSts().equals("F")) { + if (!sourceLocMast.getLocSts().equals("F")) { throw new CoolException("婧愬簱浣嶄笉澶勪簬鍦ㄥ簱鐘舵��"); + } + + LocMast locMast = locMastService.queryByLoc(param.getLocNo()); + if (null == locMast) { + throw new CoolException("鐩爣搴撲綅涓嶅瓨鍦�"); + } + + if (!locMast.getLocSts().equals("O")) { + throw new CoolException("鐩爣搴撲綅涓嶅浜庣┖搴撶姸鎬�"); + } + + double ioPri = 800D; + if (param.getTaskPri() != null) { + ioPri = param.getTaskPri().doubleValue(); } // 鑾峰彇宸ヤ綔鍙� @@ -133,7 +163,7 @@ wrkMast.setIoTime(now); wrkMast.setWrkSts(WrkStsType.NEW_LOC_MOVE.sts); // 宸ヤ綔鐘舵�侊細501.鐢熸垚绉诲簱浠诲姟 wrkMast.setIoType(WrkIoType.LOC_MOVE.id); // 鍏ュ嚭搴撶姸鎬侊細 201.绉诲簱浠诲姟 - wrkMast.setIoPri(800D); + wrkMast.setIoPri(ioPri); wrkMast.setSourceLocNo(param.getSourceLocNo()); wrkMast.setLocNo(param.getLocNo()); // 鐩爣搴撲綅 wrkMast.setWmsWrkNo(param.getTaskNo()); @@ -144,6 +174,14 @@ News.error("绉诲簱浠诲姟 --- 淇濆瓨宸ヤ綔妗eけ璐ワ紒"); throw new CoolException("淇濆瓨宸ヤ綔妗eけ璐�"); } + + sourceLocMast.setLocSts("R"); + sourceLocMast.setModiTime(new Date()); + locMastService.updateById(sourceLocMast); + + locMast.setLocSts("S"); + locMast.setModiTime(new Date()); + locMastService.updateById(locMast); return true; } @@ -160,6 +198,11 @@ throw new CoolException("鐩爣搴撲綅涓嶅浜庣┖搴撶姸鎬�"); } + double ioPri = 100D; + if (param.getTaskPri() != null) { + ioPri = param.getTaskPri().doubleValue(); + } + // 鑾峰彇宸ヤ綔鍙� int workNo = getWorkNo(WrkIoType.IN.id); // 淇濆瓨宸ヤ綔妗� @@ -168,7 +211,7 @@ wrkMast.setIoTime(now); wrkMast.setWrkSts(WrkStsType.NEW_INBOUND.sts); // 宸ヤ綔鐘舵�侊細1.鐢熸垚鍏ュ簱浠诲姟 wrkMast.setIoType(WrkIoType.IN.id); // 鍏ュ嚭搴撶姸鎬侊細 1.鍏ュ簱 - wrkMast.setIoPri(100D); + wrkMast.setIoPri(ioPri); wrkMast.setLocNo(param.getLocNo()); // 鐩爣搴撲綅 wrkMast.setSourceStaNo(param.getSourceStaNo());//婧愮珯 wrkMast.setStaNo(param.getStaNo());//鐩爣绔� @@ -180,6 +223,10 @@ News.error("鍏ュ簱浠诲姟 --- 淇濆瓨宸ヤ綔妗eけ璐ワ紒"); throw new CoolException("淇濆瓨宸ヤ綔妗eけ璐�"); } + + locMast.setLocSts("S"); + locMast.setModiTime(new Date()); + locMastService.updateById(locMast); return true; } @@ -196,6 +243,11 @@ throw new CoolException("婧愬簱浣嶄笉澶勪簬鍦ㄥ簱鐘舵��"); } + double ioPri = 100D; + if (param.getTaskPri() != null) { + ioPri = param.getTaskPri().doubleValue(); + } + // 鑾峰彇宸ヤ綔鍙� int workNo = getWorkNo(WrkIoType.OUT.id); // 淇濆瓨宸ヤ綔妗� @@ -204,7 +256,7 @@ wrkMast.setIoTime(now); wrkMast.setWrkSts(WrkStsType.NEW_OUTBOUND.sts); // 宸ヤ綔鐘舵�侊細101.鐢熸垚鍑哄簱浠诲姟 wrkMast.setIoType(WrkIoType.OUT.id); // 鍏ュ嚭搴撶姸鎬侊細 101.鍑哄簱 - wrkMast.setIoPri(100D); + wrkMast.setIoPri(ioPri); wrkMast.setSourceLocNo(param.getSourceLocNo()); // 婧愬簱浣� wrkMast.setStaNo(param.getStaNo());//鐩爣绔� wrkMast.setWmsWrkNo(param.getTaskNo()); @@ -216,6 +268,10 @@ throw new CoolException("淇濆瓨宸ヤ綔妗eけ璐�"); } + locMast.setLocSts("R"); + locMast.setModiTime(new Date()); + locMastService.updateById(locMast); + return true; } -- Gitblit v1.9.1