自动化立体仓库 - WMS系统
Administrator
2024-12-30 8e36d6e7a2837df41b35ca46bd3678cc1a8d0533
src/main/java/com/zy/common/service/CommonService.java
@@ -92,7 +92,7 @@
     * @param whsType 类型 1:双深式货架
     * @param staDescId 路径工作类型
     * @param sourceStaNo 源站
     * @param matNos 商品编号集合
     * @param matNos 品号集合
     * @return locNo 检索到的库位号
     */
    @Transactional
@@ -172,7 +172,9 @@
                    int row = Integer.parseInt(loc.getLocNo().substring(0, 2));
                    String shallowLocNo = "";
                    if (row == 1 || row == 2) continue;
                    if (row == 1 || row == 2) {
                        continue;
                    }
                    LocMast trgerLoc = locMastService.selectById(zerofill(String.valueOf(2), 2) + loc.getLocNo().substring(2));
                    if (!trgerLoc.getLocSts().equals("O")) {
                        continue;
@@ -213,7 +215,7 @@
        // 更新库位排号
        rowLastno.setCurrentRow(curRow);
        rowLastnoService.updateById(rowLastno);
             rowLastnoService.updateById(rowLastno);
        // 开始查找库位 ==============================>>
@@ -281,6 +283,9 @@
            // 当前巷道无空库位时,递归调整至下一巷道,检索全部巷道无果后,跳出递归
            if (times < rowCount) {
                times = times + 1;
                if(locTypeDto.getLocType1() == 1 && times == 3){
                    locTypeDto.setLocType1((short) 2);
                }
                return getLocNo(1, staDescId, sourceStaNo, matNos, locTypeDto, times);
            }
@@ -358,12 +363,12 @@
     * @param whsType 类型 1:双深式货架
     * @param staDescId 路径工作类型
     * @param sourceStaNo 源站
     * @param matnr 商品编号集合
     * @param matnr 品号集合
     * @return locNo 检索到的库位号
     */
    @Transactional
    public StartupDto getLocNoRun(Integer whsType, Integer staDescId, Integer sourceStaNo, String matnr, String batch, String grade, Integer moveCrnNo, LocTypeDto locTypeDto, int times) {
        if (Cools.isEmpty(matnr)) {  //物料号
        if (Cools.isEmpty(matnr)) {  //品号
            matnr = "";
        }
        if (Cools.isEmpty(batch)) {  //箱号
@@ -480,11 +485,11 @@
                return getLocNoRun(1, staDescId, sourceStaNo, matnr, batch, grade,moveCrnNo, locTypeDto, times);
            }
            // 轻货物找轻库位为空时,可以去找重库位仓
            //if (locTypeDto.getLocType1() == 1) {
            //    locTypeDto.setLocType1((short) 2);
            //    return getLocNoRun(1, staDescId, sourceStaNo, matnr, batch, grade,moveCrnNo, locTypeDto, times);
            //}
////             轻货物找轻库位为空时,可以去找重库位仓
//            if (locTypeDto.getLocType1() == 1) {
//                locTypeDto.setLocType1((short) 2);
//                return getLocNoRun(1, staDescId, sourceStaNo, matnr, batch, grade,moveCrnNo, locTypeDto, times);
//            }
            log.error("系统没有空库位!!! 尺寸规格: {}, 轮询次数:{}", JSON.toJSONString(locTypeDto), times);
            throw new CoolException("没有空库位");
        }