自动化立体仓库 - WMS系统
#
luxiaotao1123
2022-08-17 cb7dd7a126955cd9d84f24494220f6ce68e99589
#
5个文件已修改
57 ■■■■■ 已修改文件
src/main/java/com/zy/asrs/task/handler/WorkLogHandler.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/common/model/Shelves.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/common/service/CommonService.java 41 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/mapper/LocMastMapper.xml 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/task/handler/WorkLogHandler.java
@@ -59,7 +59,7 @@
            }
            // 入库 --------------------------------------------------------------------------------
            if (wrkMast.getWrkSts() == 5) {
            if (wrkMast.getWrkSts() == 10) {
                // 全板入库
                if (wrkMast.getIoType() == 1) {
                    // 入库通知单
@@ -89,7 +89,7 @@
                }
                // 出库 --------------------------------------------------------------------------------
            } else if (wrkMast.getWrkSts() == 15) {
            } else if (wrkMast.getWrkSts() == 18) {
                if (!Cools.isEmpty(wrkDetls)) {
                    if (!orderService.saveHandlerOrder(Boolean.FALSE, wrkMast, wrkDetls)) {
                        exceptionHandle("生成手动出库单据[workNo={0}]失败", wrkMast.getWrkNo());
src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java
@@ -254,7 +254,7 @@
                    break;
            }
            // 修改工作主档状态
            wrkMast.setWrkSts(5L);
            wrkMast.setWrkSts(10L);
            wrkMast.setModiTime(now);
            if (!wrkMastService.updateById(wrkMast)) {
                exceptionHandle("更新入库完成状态失败;[workNo={0}]", wrkMast.getWrkNo());
@@ -323,7 +323,7 @@
                    break;
            }
            // 修改工作主档状态
            wrkMast.setWrkSts(15L);
            wrkMast.setWrkSts(18L);
            wrkMast.setModiTime(now);
            if (!wrkMastService.updateById(wrkMast)) {
                exceptionHandle("更新出库完成状态失败;[workNo={0}]", wrkMast.getWrkNo());
src/main/java/com/zy/common/model/Shelves.java
@@ -110,7 +110,7 @@
    }
    public static void main(String[] args) throws InterruptedException {
        Shelves shelves = new Shelves(2,2);
        Shelves shelves = new Shelves(1,1);
        System.out.println(shelves.nodes.toString());
        int start = 1;
        while (true) {
src/main/java/com/zy/common/service/CommonService.java
@@ -113,7 +113,17 @@
     */
    public StartupDto getLocNo(Integer whsType, Integer staDescId, Integer sourceStaNo, List<String> matNos, LocTypeDto locTypeDto, LocTypeDto oldLocType, int times) {
        StartupDto startupDto = new StartupDto();
        whsType = 1;
        switch (sourceStaNo) {
            case 107:
                whsType = 2;
                break;
            case 118:
                whsType = 3;
                break;
            default:
                whsType = 1;
                break;
        }
        // 生成工作号
        int workNo = getWorkNo(0);
        RowLastno rowLastno = rowLastnoService.selectById(whsType);
@@ -179,6 +189,9 @@
                    throw new CoolException("检索库位失败,请联系管理员");
                }
                Integer crnNo1 = shelves.get(curRow) + 1;
                if (whsType != 1) {
                    crnNo1 = whsType;
                }
                if (basCrnpService.checkSiteError(crnNo1, true)) {
                    crnNo = crnNo1;
                    break;
@@ -215,18 +228,24 @@
        // 1.当检索库排为浅库位排时,优先寻找当前库排的深库位排
        if (locMast == null) {
            List<Integer> rows;
            switch (curRow) {
                case 1:
                    rows = FIRST_GROUP_ROW_LIST;
                    break;
                case 2:
                    rows = SECOND_GROUP_ROW_LIST;
                    break;
                default:
                    throw new CoolException("入库逻辑故障【" + curRow + "】");
            if (whsType == 2) {
                rows = FIRST_GROUP_ROW_LIST;
            } else if (whsType == 3) {
                rows = SECOND_GROUP_ROW_LIST;
            } else {
                switch (curRow) {
                    case 1:
                        rows = FIRST_GROUP_ROW_LIST;
                        break;
                    case 2:
                        rows = SECOND_GROUP_ROW_LIST;
                        break;
                    default:
                        throw new CoolException("入库逻辑故障【" + curRow + "】");
                }
            }
            locMast = locMastService.queryFreeLocMast(curRow, rows, locTypeDto.getLocType1());
            locMast = locMastService.queryFreeLocMast(null, rows, locTypeDto.getLocType1());
            // 因库位移转、需预留空库位
//            if (!locMastService.checkEmptyCount(locMast)) {
//                locMast = null;
src/main/resources/mapper/LocMastMapper.xml
@@ -49,12 +49,6 @@
        <if test="locType1 != null">
            and loc_type1 = #{locType1}
        </if>
        <if test="locType2 != null">
            and loc_type2 = #{locType2}
        </if>
        <if test="locType3 != null">
            and loc_type3 = #{locType3}
        </if>
        and loc_sts='O'
        order by loc_sts desc,row1 asc, lev1 asc, bay1 asc
    </select>