From f63aa158cd182f1ab40fc475ca2944eacfc8705a Mon Sep 17 00:00:00 2001 From: 野心家 <1051256694@qq.com> Date: 星期二, 03 十月 2023 08:47:56 +0800 Subject: [PATCH] # --- src/main/java/com/zy/common/service/CommonService.java | 56 ++++++++++++++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 54 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/zy/common/service/CommonService.java b/src/main/java/com/zy/common/service/CommonService.java index a7643a0..4fec9b9 100644 --- a/src/main/java/com/zy/common/service/CommonService.java +++ b/src/main/java/com/zy/common/service/CommonService.java @@ -13,6 +13,7 @@ import com.zy.common.model.LocTypeDto; import com.zy.common.model.Shelves; import com.zy.common.model.StartupDto; +import com.zy.core.News; import com.zy.core.properties.SlaveProperties; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; @@ -47,6 +48,9 @@ private SlaveProperties slaveProperties; @Autowired private LocDetlService locDetlService; + @Autowired + private WrkChargeService wrkChargeService; + /** * 鐢熸垚宸ヤ綔鍙� @@ -81,6 +85,40 @@ } else { if (wrkMastService.selectById(workNo)!=null) { throw new CoolException("鐢熸垚宸ヤ綔鍙�" + workNo + "鍦ㄥ伐浣滄。涓凡瀛樺湪"); + } + } + return workNo; + } + + public int getChargeWorkNo(Integer wrkMk) { + WrkLastno wrkLastno = wrkLastnoService.selectById(wrkMk); + if (Cools.isEmpty(wrkLastno)) { + throw new CoolException("鏁版嵁寮傚父锛岃鑱旂郴绠$悊鍛�"); + } + + int workNo = wrkLastno.getWrkNo(); + int sNo = wrkLastno.getSNo(); + int eNo = wrkLastno.getENo(); + workNo = workNo>=eNo ? sNo : workNo+1; + while (true) { + WrkCharge wrkCharge = wrkChargeService.selectById(workNo); + if (null != wrkCharge) { + workNo = workNo>=eNo ? sNo : workNo+1; + } else { + break; + } + } + // 淇敼搴忓彿璁板綍 + if (workNo > 0){ + wrkLastno.setWrkNo(workNo); + wrkLastnoService.updateById(wrkLastno); + } + // 妫�楠� + if (workNo == 0) { + throw new CoolException("鐢熸垚鍏呯數宸ヤ綔鍙峰け璐ワ紝璇疯仈绯荤鐞嗗憳"); + } else { + if (wrkChargeService.selectById(workNo)!=null) { + throw new CoolException("鐢熸垚宸ヤ綔鍙�" + workNo + "鍦ㄥ厖鐢靛伐浣滄。涓凡瀛樺湪"); } } return workNo; @@ -240,7 +278,7 @@ .eq("crn_no", crnNo); StaDesc staDesc = staDescService.selectOne(wrapper); if (Cools.isEmpty(staDesc)) { - log.error("type_no={},stn_no={},crn_no={}", staDescId, sourceStaNo, crnNo); + News.error("type_no={},stn_no={},crn_no={}", staDescId, sourceStaNo, crnNo); throw new CoolException("鍏ュ簱璺緞涓嶅瓨鍦�"); } BasDevp staNo = basDevpService.selectById(staDesc.getCrnStn()); @@ -269,6 +307,20 @@ if (!locMastService.checkEmptyCount(locMast)) { locMast = null; } + // 鐩爣搴撲綅 ===>> 娴呭簱浣嶏紝 鍒欐牎楠屽叾娣卞簱浣嶆槸鍚︿负 F D X + if (null != locMast && Utils.isShallowLoc(slaveProperties, locMast.getLocNo())) { + LocMast deepLoc = locMastService.selectById(Utils.getDeepLoc(slaveProperties, locMast.getLocNo())); + if (!deepLoc.getLocSts().equals("F") && !deepLoc.getLocSts().equals("D") && !deepLoc.getLocSts().equals("X")) { + locMast = null; + } + } + // 鐩爣搴撲綅 ===>> 娣卞簱浣嶏紝 鍒欐牎楠屽叾娴呭簱浣嶆槸鍚︿负 O + if (null != locMast && Utils.isDeepLoc(slaveProperties, locMast.getLocNo())) { + LocMast shallowLoc = locMastService.selectById(Utils.getShallowLoc(slaveProperties, locMast.getLocNo())); + if (!shallowLoc.getLocSts().equals("O")) { + locMast = null; + } + } } } @@ -287,7 +339,7 @@ locTypeDto.setLocType1((short) 2); return getLocNo(null, staDescId, sourceStaNo, matNos, locTypeDto, times); } - log.error("绯荤粺娌℃湁绌哄簱浣嶏紒锛侊紒 灏哄瑙勬牸锛� {}锛� 杞娆℃暟锛歿}", JSON.toJSONString(locTypeDto), times); + News.error("绯荤粺娌℃湁绌哄簱浣嶏紒锛侊紒 灏哄瑙勬牸锛� {}锛� 杞娆℃暟锛歿}", JSON.toJSONString(locTypeDto), times); throw new CoolException("娌℃湁绌哄簱浣�"); } String locNo = locMast.getLocNo(); -- Gitblit v1.9.1