From ef19ce2bc384c00b590ebdbd4e8c14ebfa9f0188 Mon Sep 17 00:00:00 2001 From: pang.jiabao <pang_jiabao@163.com> Date: 星期四, 24 十月 2024 14:49:14 +0800 Subject: [PATCH] 去掉日志打印 --- src/main/java/com/zy/common/service/CommonService.java | 125 +++++++++++++++++++++++++++++++++++++++-- 1 files changed, 117 insertions(+), 8 deletions(-) diff --git a/src/main/java/com/zy/common/service/CommonService.java b/src/main/java/com/zy/common/service/CommonService.java index db8c334..fd6c66a 100644 --- a/src/main/java/com/zy/common/service/CommonService.java +++ b/src/main/java/com/zy/common/service/CommonService.java @@ -3,28 +3,27 @@ import com.alibaba.fastjson.JSON; import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.baomidou.mybatisplus.mapper.Wrapper; -import com.core.common.Arith; import com.core.common.Cools; import com.core.exception.CoolException; import com.zy.asrs.entity.*; -import com.zy.asrs.entity.result.KeyValueVo; import com.zy.asrs.service.*; import com.zy.asrs.utils.Utils; import com.zy.asrs.utils.VersionUtils; import com.zy.common.model.LocTypeDto; -import com.zy.common.model.Shelves; 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 java.time.LocalDate; -import java.time.format.DateTimeFormatter; -import java.time.temporal.ChronoUnit; -import java.util.ArrayList; +import javax.annotation.Resource; +import java.util.HashMap; import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; /** * 璐ф灦鏍稿績鍔熻兘 @@ -52,6 +51,9 @@ private LocDetlService locDetlService; @Autowired private SlaveProperties slaveProperties; + + @Resource + private ConfigMapper configMapper; /** * 鐢熸垚宸ヤ綔鍙� @@ -123,10 +125,117 @@ } /** + * 鍙屾繁鎵惧簱浣� + */ + @Transactional + public StartupDto getLocNo(Integer staDescId, Integer sourceStaNo,LocTypeDto locTypeDto,int times) { + LocMast locMast; + + locMast = getLocNoStepSingle(locTypeDto); + + if (locMast != null) { + //鎵惧埌搴撲綅锛岃繑鍥瀌to + return getLocNoStep6(staDescId, sourceStaNo, locMast);//杩斿洖dto + } + + //鎵句笉鍒板簱浣嶏紝鎶涘嚭寮傚父 + throw new CoolException("娌℃湁绌哄簱浣�"); + } + + // 鎼滅储鍗曞搧(鏁翠釜搴撲綅缁�) + private LocMast getLocNoStepSingle(LocTypeDto locTypeDto) { + + LocMast locMast = null; + + // 鑾峰彇妯″紡涓虹數鑴戞ā寮忥紝鏃犱换鍔$殑鍫嗗灈鏈哄垪琛�:闃叉鍒嗛厤鍒板爢鍨涙満涓嶅彲鐢� + List<BasCrnp> basCrnps = basCrnpService.selectList(new EntityWrapper<BasCrnp>().eq("crn_sts",3) + .eq("wrk_no",0).eq("in_enable","Y")); + if (basCrnps.isEmpty()) { + // 閮芥湁浠诲姟鍒欒幏鍙栫數鑴戞ā寮忕殑鍫嗗灈鏈哄垪琛� + basCrnps = basCrnpService.selectList(new EntityWrapper<BasCrnp>().eq("crn_sts",3).eq("in_enable","Y")); + } + if (basCrnps.isEmpty()) { + throw new CoolException("娌℃湁鍙敤鍫嗗灈鏈�,鍫嗗灈鏈哄仠姝㈡垨寮傚父鎴栫鐢�"); + } + // 鍙敤鍫嗗灈鏈哄垪琛� + 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") + .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") + .gt("bay1",columnNum)); + } + if (locMasts.isEmpty()) { + throw new CoolException("娌℃湁鍙敤搴撲綅"); + } + + // 璁板綍鍫嗗灈鏈烘槸鍚︽煡璇㈣繃锛岄伩鍏嶉噸澶嶆煡璇� + Map<Integer,Boolean> crnMap = new HashMap<>(); + for (LocMast mast : locMasts) { + if (crnMap.get(mast.getCrnNo()) == null) { + //棰勭暀绌哄簱浣� + if (locMastService.checkEmptyCount(mast, 10)) { + locMast = mast; + break; + } else { + crnMap.put(mast.getCrnNo(),true); + } + } + } + + return locMast; + } + + //杩斿洖dto + private StartupDto getLocNoStep6(Integer staDescId, Integer sourceStaNo, LocMast locMast) { + StartupDto startupDto = new StartupDto(); + // 鑾峰彇鐩爣绔� + Wrapper<StaDesc> wrapper = new EntityWrapper<StaDesc>() + .eq("type_no", staDescId) + .eq("stn_no", sourceStaNo) + .eq("crn_no",locMast.getCrnNo()); + StaDesc staDesc = staDescService.selectOne(wrapper); + if (Cools.isEmpty(staDesc)) { + log.error("鍏ュ簱璺緞涓嶅瓨鍦�, staDescId={}, sourceStaNo={}", staDescId, sourceStaNo); + throw new CoolException("鍏ュ簱璺緞涓嶅瓨鍦�"); + } + + // 妫�娴嬬洰鏍囩珯 + BasDevp staNo = basDevpService.selectById(staDesc.getCrnStn()); + if (!staNo.getAutoing().equals("Y")) { + throw new CoolException("鐩爣绔�" + staDesc.getCrnStn() + "涓嶅彲鐢�"); + } + + // 鐢熸垚宸ヤ綔鍙� + int workNo = getWorkNo(0); + // 杩斿洖dto + startupDto.setWorkNo(workNo); + startupDto.setSourceStaNo(sourceStaNo); + startupDto.setStaNo(staNo.getDevNo()); + startupDto.setLocNo(locMast.getLocNo()); + startupDto.setCrnNo(locMast.getCrnNo()); + return startupDto; + } + /** * 妫�绱㈠簱浣嶅彿 * * @param whsType 绫诲瀷 1:鍙屾繁寮忚揣鏋� - * @param staDescId 璺緞ID + * @param staDescId 鍏ュ簱绫诲瀷 * @param sourceStaNo 婧愮珯 * @param matnr 鐗╂枡鍙烽泦鍚� * @return locNo 妫�绱㈠埌鐨勫簱浣嶅彿 -- Gitblit v1.9.1