| | |
| | | detl = wrkDetl.get(0); |
| | | } |
| | | String matnr = detl == null ? null : detl.getMatnr(); |
| | | int[] candidates = wrkMast.getCrnNo() != null && wrkMast.getCrnNo() < 3 ? new int[]{1, 2} : new int[]{1, 2, 3, 4}; |
| | | Integer sourceCrnNo = null; |
| | | if (!Cools.isEmpty(wrkMast.getLocNo())) { |
| | | LocMast sourceLoc = locMastService.selectById(wrkMast.getLocNo()); |
| | | if (!Cools.isEmpty(sourceLoc) && sourceLoc.getCrnNo() != null) { |
| | | sourceCrnNo = sourceLoc.getCrnNo(); |
| | | } |
| | | } |
| | | int[] candidates = sourceCrnNo != null && sourceCrnNo < 5 ? new int[]{1, 2} : new int[]{1, 2, 3, 4}; |
| | | Integer chosenCrnNo = null; |
| | | Integer chosenCount = null; |
| | | for (int candidate : candidates) { |
| | | if (sourceCrnNo != null && candidate == sourceCrnNo) { |
| | | continue; |
| | | } |
| | | //判断该巷道是否存在空位 |
| | | LocMast candidateLoc = locMastService.selectOne(new EntityWrapper<LocMast>() |
| | | .eq("crn_no", candidate) |
| | |
| | | .eq("whs_type", 1) |
| | | .orderBy("lev1,bay1")); |
| | | } |
| | | if (!Cools.isEmpty(locMast) && sourceCrnNo != null && sourceCrnNo.equals(locMast.getCrnNo())) { |
| | | locMast = null; |
| | | } |
| | | if (Cools.isEmpty(locMast)) { |
| | | List<LocMast> anyLocs = locMastService.selectList(new EntityWrapper<LocMast>() |
| | | .eq("loc_sts", "O") |
| | |
| | | if (anyLoc == null || anyLoc.getCrnNo() == null) { |
| | | continue; |
| | | } |
| | | if (sourceCrnNo != null && sourceCrnNo.equals(anyLoc.getCrnNo())) { |
| | | continue; |
| | | } |
| | | if (!basCrnpService.checkSiteError(anyLoc.getCrnNo(), true)) { |
| | | continue; |
| | | } |