From 0a1dceaa6478ec0081c38721be88fa6d807c6094 Mon Sep 17 00:00:00 2001 From: zhang <zc857179121@qq.com> Date: 星期三, 17 九月 2025 14:26:34 +0800 Subject: [PATCH] 1 --- src/main/java/com/zy/common/service/CommonService.java | 39 ++++++++++++++++++++++++++++++++++++--- 1 files changed, 36 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/zy/common/service/CommonService.java b/src/main/java/com/zy/common/service/CommonService.java index 96e877c..fe43f14 100644 --- a/src/main/java/com/zy/common/service/CommonService.java +++ b/src/main/java/com/zy/common/service/CommonService.java @@ -12,11 +12,14 @@ import com.zy.common.model.LocTypeDto; import com.zy.common.model.StartupDto; import com.zy.common.properties.SlaveProperties; +import com.zy.system.entity.Config; +import com.zy.system.mapper.ConfigMapper; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import javax.annotation.Resource; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -48,6 +51,9 @@ private LocDetlService locDetlService; @Autowired private SlaveProperties slaveProperties; + + @Resource + private ConfigMapper configMapper; /** * 鐢熸垚宸ヤ綔鍙� @@ -154,25 +160,47 @@ // 鍙敤鍫嗗灈鏈哄垪琛� List<Integer> crnNoList = basCrnps.stream().map(BasCrnp::getCrnNo).collect(Collectors.toList()); + // 鑾峰彇澶囪揣鍖洪厤缃� + Config config = configMapper.selectConfigByCode("auto_stock_up"); + if (config == null) { + throw new CoolException("鐞嗚揣鑾峰彇澶囪揣鍖洪厤缃敊璇紒锛侊紒"); + } + + // 鍓嶅嚑鍒楁槸澶囪揣鍖� + int columnNum = Integer.parseInt(config.getValue()); + // 鎼滅储娣卞簱浣� List<LocMast> locMasts = locMastService.selectList(new EntityWrapper<LocMast>() - .eq("loc_sts","O").in("crn_no",crnNoList).in("row1","1,4,5,8,9,12,13,16,17,20,21,24").orderBy("lev1,bay1,row1")); + .eq("loc_sts","O").in("crn_no",crnNoList).in("row1","1,4,5,8,9,12,13,16,17,20,21,24").orderBy("lev1,bay1,row1") + .gt("bay1",columnNum)); // 娣卞簱浣嶆病鏈夊垯鎼滅储娴呭簱浣� if (locMasts.isEmpty()) { locMasts = locMastService.selectList(new EntityWrapper<LocMast>() - .eq("loc_sts","O").in("crn_no",crnNoList).in("row1","2,3,6,7,10,11,14,15,18,19,22,23").orderBy("lev1,bay1,row1")); + .eq("loc_sts","O").in("crn_no",crnNoList).in("row1","2,3,6,7,10,11,14,15,18,19,22,23").orderBy("lev1,bay1,row1") + .gt("bay1",columnNum)); } if (locMasts.isEmpty()) { throw new CoolException("娌℃湁鍙敤搴撲綅"); } - + // 娴呭簱浣� + String[] split = "02,03,06,07,10,11,14,15,18,19,22,23".split(","); // 璁板綍鍫嗗灈鏈烘槸鍚︽煡璇㈣繃锛岄伩鍏嶉噸澶嶆煡璇� Map<Integer,Boolean> crnMap = new HashMap<>(); for (LocMast mast : locMasts) { if (crnMap.get(mast.getCrnNo()) == null) { //棰勭暀绌哄簱浣� if (locMastService.checkEmptyCount(mast, 10)) { + Integer row1 = mast.getRow1(); + if(slaveProperties.getDoubleLocs().contains(row1)){ + // 鍙栨祬搴撲綅 + String s = split[slaveProperties.getDoubleLocs().indexOf(row1)]; + LocMast locMast1 = locMastService.selectById(s + mast.getLocNo().substring(2)); + if(locMast1 != null && !locMast1.getLocSts().equals("O")) { + log.warn("鍏ュ簱鍒嗛厤搴撲綅锛歿}锛屽搴旀祬搴撲綅{}涓嶄负绌猴細{}",mast.getLocNo(),locMast1.getLocNo(),locMast1.getLocSts()); + continue; + } + } locMast = mast; break; } else { @@ -181,6 +209,11 @@ } } + if (locMast == null) { + log.error("鍏ュ簱璇锋眰搴撲綅涓嶈冻锛屽墿浣欏簱浣嶄笉瓒�/涓嶆弧瓒冲叆搴撴潯浠�"); + throw new CoolException("鍏ュ簱璇锋眰搴撲綅涓嶈冻锛屽墿浣欐暟閲忎笉瓒�/涓嶆弧瓒冲叆搴撴潯浠�"); + } + return locMast; } -- Gitblit v1.9.1