自动化立体仓库 - WMS系统
#
luxiaotao1123
2022-08-31 b30f8602f2d163a31b4411f5794ac8f6fb860b45
src/main/java/com/zy/common/service/CommonService.java
@@ -68,25 +68,23 @@
        }
        int workNo = 0;
        // 入出库类型
        if (wrkLastno.getWrkMk() == 0) {
            workNo = wrkLastno.getWrkNo();
            int sNo = wrkLastno.getSNo();
            int eNo = wrkLastno.getENo();
        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;
                } else {
                    break;
                }
        while (true) {
            WrkMast wrkMast = wrkMastService.selectById(workNo);
            if (null != wrkMast) {
                workNo = workNo>=eNo ? sNo : workNo+1;
            } else {
                break;
            }
            if (workNo > 0){
                wrkLastno.setWrkNo(workNo);
                wrkLastnoService.updateById(wrkLastno);
            }
        }
        if (workNo > 0){
            wrkLastno.setWrkNo(workNo);
            wrkLastnoService.updateById(wrkLastno);
        }
        if (workNo == 0) {
            throw new CoolException("生成工作号失败,请联系管理员");
@@ -114,10 +112,14 @@
    public StartupDto getLocNo(Integer whsType, Integer staDescId, Integer sourceStaNo, List<String> matNos, LocTypeDto locTypeDto, LocTypeDto oldLocType, int times) {
        StartupDto startupDto = new StartupDto();
        switch (sourceStaNo) {
            case 107:
            case 108:
                whsType = 1;
                break;
            case 111:
            case 211:
                whsType = 2;
                break;
            case 118:
            case 208:
                whsType = 3;
                break;
            default:
@@ -142,7 +144,7 @@
        // 靠近摆放规则 --- 同天同规格物料
        if (!Cools.isEmpty(matNos)) {
            List<String> locNos = locDetlService.getSameDetl(matNos.get(0), 2, 30);
            List<String> locNos = locDetlService.getSameDetl(matNos.get(0), sRow, eRow);
            for (String locNo : locNos) {
                List<String> groupLoc = Utils.getGroupLoc(locNo);
                locMast = locMastService.findOutMost(groupLoc);
@@ -161,7 +163,7 @@
        // 靠近摆放规则 --- 空托
        if (staDescId == 10) {
            List<LocMast> locMasts = locMastService.selectList(new EntityWrapper<LocMast>().eq("loc_sts", "D").ge("row1", 2).le("row1", 30));
            List<LocMast> locMasts = locMastService.selectList(new EntityWrapper<LocMast>().eq("loc_sts", "D").ge("row1", sRow).le("row1", eRow));
            if (locMasts.size() > 0) {
                for (LocMast loc : locMasts) {
                    List<String> groupLoc = Utils.getGroupLoc(loc.getLocNo());