From a9a8af3cd6e452cbcb8f8a046890cd5b36a61b17 Mon Sep 17 00:00:00 2001 From: ZY <zc857179121@qq.com> Date: 星期三, 21 八月 2024 10:34:39 +0800 Subject: [PATCH] 档查询出来有多条数据时,加上数量条件,进行匹配,如果数量也匹配不上,就默认返回第一个 --- src/main/java/com/zy/common/service/CommonService.java | 77 ++++++++++++++++++++++++++++++++++---- 1 files changed, 69 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 bfa3529..eb95817 100644 --- a/src/main/java/com/zy/common/service/CommonService.java +++ b/src/main/java/com/zy/common/service/CommonService.java @@ -7,6 +7,7 @@ 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; @@ -19,6 +20,10 @@ 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 java.util.List; /** @@ -50,7 +55,6 @@ /** * 鐢熸垚宸ヤ綔鍙� - * * @param wrkMk * @return workNo(宸ヤ綔鍙�) */ @@ -63,17 +67,17 @@ int workNo = wrkLastno.getWrkNo(); int sNo = wrkLastno.getSNo(); int eNo = wrkLastno.getENo(); - workNo = workNo >= eNo ? sNo : workNo + 1; + workNo = workNo>=eNo ? sNo : workNo+1; while (true) { WrkMast wrkMast = wrkMastService.selectById(workNo); if (null != wrkMast) { - workNo = workNo >= eNo ? sNo : workNo + 1; + workNo = workNo>=eNo ? sNo : workNo+1; } else { break; } } // 淇敼搴忓彿璁板綍 - if (workNo > 0) { + if (workNo > 0){ wrkLastno.setWrkNo(workNo); wrkLastnoService.updateById(wrkLastno); } @@ -81,11 +85,27 @@ if (workNo == 0) { throw new CoolException("鐢熸垚宸ヤ綔鍙峰け璐ワ紝璇疯仈绯荤鐞嗗憳"); } else { - if (wrkMastService.selectById(workNo) != null) { + if (wrkMastService.selectById(workNo)!=null) { throw new CoolException("鐢熸垚宸ヤ綔鍙�" + workNo + "鍦ㄥ伐浣滄。涓凡瀛樺湪"); } } return workNo; + } + + //鎷嗙洏鏈哄绌烘澘鎵爜锛岄┍鍔ㄦ墭鐩樺悜鐮佸灈浣嶏紝涓嶅叆搴� + @Transactional + public StartupDto getScanBarcodeEmptyBoard(){ + StartupDto startupDto = new StartupDto(); + Integer staNo = 0; + if (wrkMastService.selectCount(new EntityWrapper<WrkMast>().eq("io_type", 201).eq("staNo", 216))<2){ + staNo=216; + } + if (wrkMastService.selectCount(new EntityWrapper<WrkMast>().eq("io_type", 201).eq("staNo", 220))<2){ + staNo=220; + } + + startupDto.setStaNo(staNo); + return startupDto; } /** @@ -291,6 +311,7 @@ }else { staNo = basDevpService.selectById(staDesc.getCrnStn()); if (!staNo.getAutoing().equals("Y")) { + log.error("鐩爣绔�"+staDesc.getCrnStn()+"涓嶅彲鐢�"); // throw new CoolException("鐩爣绔�"+staDesc.getCrnStn()+"涓嶅彲鐢�"); crnNo = 0; } @@ -308,25 +329,65 @@ // 1.鎸夎鍒欐煡鎵惧簱浣� if (Cools.isEmpty(locMast) && crnNo != 0) { - List<LocMast> locMasts = locMastService.selectList(new EntityWrapper<LocMast>().eq("row1", nearRow).eq("loc_sts", "O").orderBy("lev1",true).orderBy("bay1",true)); + List<LocMast> locMasts = locMastService.selectList(new EntityWrapper<LocMast>() + .eq("row1", nearRow) + .eq("loc_sts", "O") + .orderBy("lev1",true).orderBy("bay1",true)); for (LocMast locMast1 : locMasts) { if (!VersionUtils.locMoveCheckLocTypeComplete(locMast1, locTypeDto)) { continue; } if (Utils.BooleanWhsTypeStaIoType(whsType)){ String shallowLoc = Utils.getDeepLoc(slaveProperties, locMast1.getLocNo()); - LocMast locMast2 = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_no", shallowLoc).eq("loc_sts", "O")); + LocMast locMast2 = locMastService.selectOne(new EntityWrapper<LocMast>() + .eq("loc_no", shallowLoc).eq("loc_sts", "O")); if (!Cools.isEmpty(locMast2)) { locMast = locMast2; break; } - }else { + } else { if (!Cools.isEmpty(locMast1)) { locMast = locMast1; break; } } } + + if (Cools.isEmpty(locMast) && Utils.BooleanWhsTypeStaIoType(whsType)){ + for (LocMast locMast1 : locMasts) { + if (!VersionUtils.locMoveCheckLocTypeComplete(locMast1, locTypeDto)) { + continue; + } + if (Utils.BooleanWhsTypeStaIoType(whsType)){ + String shallowLoc = Utils.getDeepLoc(slaveProperties, locMast1.getLocNo()); + LocMast locMast2 = locMastService.selectOne(new EntityWrapper<LocMast>() + .eq("loc_no", shallowLoc).eq("loc_sts", "O")); + if (!Cools.isEmpty(locMast2)) { + locMast = locMast2; + break; + } else { + locMast2 = locMastService.selectOne(new EntityWrapper<LocMast>() + .eq("loc_no", shallowLoc).eq("loc_sts", "F")); + if (!Cools.isEmpty(locMast2)) { + locMast = locMast2; + break; + } else { + locMast2 = locMastService.selectOne(new EntityWrapper<LocMast>() + .eq("loc_no", shallowLoc).eq("loc_sts", "D")); + if (!Cools.isEmpty(locMast2)) { + locMast = locMast2; + break; + } + } + } + } else { + if (!Cools.isEmpty(locMast1)) { + locMast = locMast1; + break; + } + } + } + } } if (!Cools.isEmpty(locMast) && !basCrnpService.checkSiteError(crnNo, true)) { -- Gitblit v1.9.1