自动化立体仓库 - WMS系统
zyx
2023-12-07 ccbf7105edf18752ab64871d6112abd4f96cf8d4
Merge branch 'tzskasrs-1' of http://47.97.1.152:5880/r/zy-asrs into tzskasrs-1
4个文件已修改
62 ■■■■ 已修改文件
src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java 36 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/common/web/WcsController.java 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/mapper/WrkMastMapper.xml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/webapp/static/js/wrkMast/wrkMast.js 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java
@@ -38,10 +38,10 @@
    private WaitPakinService waitPakinService;
    public ReturnT<String> start(WrkMast wrkMast) {
        // 14.入库完成
        // 9.入库完成
        if (wrkMast.getWrkSts() == 9) {
            return doIn(wrkMast);
            // 34.出库完成
            // 29.出库完成
        } else  if (wrkMast.getWrkSts() == 29) {
            return doOut(wrkMast);
        }
@@ -206,8 +206,21 @@
                    if (wrkDetls57.isEmpty()) {
                        exceptionHandle("盘点入库 ===>> 工作明细档为空;[workNo={0}]", wrkMast.getWrkNo());
                    }
                    // 修改库位状态 Q ====>> F
                    if (locMast.getLocSts().equals("Q")) {
                    // 遍历工作明细,更新库存明细和入库通知档
                    for (WrkDetl wrkDetl : wrkDetls57) {
                        LocDetl locDetl = new LocDetl();
                        locDetl.sync(wrkDetl);
                        locDetl.setLocNo(wrkMast.getLocNo()); // 库位号
                        locDetl.setAnfme(wrkDetl.getAnfme()); // 数量
                        locDetl.setZpallet(wrkDetl.getZpallet()); // 托盘条码
                        locDetl.setModiTime(now);
                        locDetl.setAppeTime(now);
                        if (!locDetlService.insert(locDetl)) {
                            exceptionHandle("盘点入库 ===>> 添加库存明细失败;[workNo={0}],[locNo={1}]", wrkMast.getWrkNo(), wrkMast.getLocNo());
                        }
                    }
                    // 修改库位状态 S ====>> F
                    if (locMast.getLocSts().equals("S")) {
                        locMast.setLocSts(wrkMast.getFullPlt().equals("Y")?"F":"D");
                        locMast.setBarcode(wrkMast.getBarcode());
                        locMast.setIoTime(now);
@@ -253,7 +266,7 @@
                    break;
            }
            // 修改工作主档状态
            wrkMast.setWrkSts(10L);//15.库存更新完成
            wrkMast.setWrkSts(10L);//10.库存更新完成
            wrkMast.setModiTime(now);
            if (!wrkMastService.updateById(wrkMast)) {
                exceptionHandle("更新入库完成状态失败;[workNo={0}]", wrkMast.getWrkNo());
@@ -305,6 +318,19 @@
                        }
                    }
                    break;
                //盘点出库
                case 107:
                    // 修改库位状态 R ===>> O
                    if (locMast.getLocSts().equals("P")) {
                        locMast.setLocSts("O");
                        locMast.setBarcode("");
                        locMast.setModiTime(now);
                        locMast.setIoTime(now);
                        if (!locMastService.updateById(locMast)) {
                            exceptionHandle("盘点出库 ===>> 修改源库位状态失败;[workNo={0}],[sourceLocNo={1}]", wrkMast.getWrkNo(), wrkMast.getSourceLocNo());
                        }
                    }
                    return SUCCESS;//盘点只处理库存数据不改变工作档状态
                // 空板出库
                case 110:
                    // 修改库位状态 R ===>> O
src/main/java/com/zy/common/web/WcsController.java
@@ -302,7 +302,24 @@
        }
        // 检索库位
        List<String> matnrList = wrkDetls.stream().map(WrkDetl::getMatnr).distinct().collect(Collectors.toList());
        return commonService.getLocNo(1, ioType - 50, devpNo, matnrList, locTypeDto,0); // 库位号, 堆垛机,目标站
        if (ioType == 107) {//盘点回库任务
            if (devpNo == 325 || devpNo == 331 || devpNo == 333 || devpNo == 339) {
                devpNo = 341;
            }
        }
        StartupDto dto = commonService.getLocNo(1, ioType - 50, devpNo, matnrList, locTypeDto,0); // 库位号, 堆垛机,目标站
        // 更新目标库位状态
        LocMast locMast = locMastService.selectById(dto.getLocNo());
        if (locMast.getLocSts().equals("O")){
            locMast.setLocSts("S"); // S.入库预约
            locMast.setModiTime(new Date());
            if (!locMastService.updateById(locMast)){
                throw new CoolException("改变库位状态失败");
            }
        } else {
            throw new CoolException(dto.getLocNo()+"目标库位已被占用");
        }
        return dto;
    }
    /*
src/main/resources/mapper/WrkMastMapper.xml
@@ -67,7 +67,7 @@
    </resultMap>
    <select id="selectToBeCompleteData" resultMap="BaseResultMap">
        select * from asr_wrk_mast where ((wrk_sts = 9 Or wrk_sts = 29) and io_type != 103 and io_type != 104 and io_type != 107 ) or (wrk_sts = 2 and io_type=6) order by upd_mk,io_time,wrk_no
        select * from asr_wrk_mast where ((wrk_sts = 9 Or wrk_sts = 29) and io_type != 103 and io_type != 104) or (wrk_sts = 2 and io_type=6) order by upd_mk,io_time,wrk_no
    </select>
    <select id="selectToBeHistoryData" resultMap="BaseResultMap">
src/main/webapp/static/js/wrkMast/wrkMast.js
@@ -30,8 +30,8 @@
            ,{field: 'ioType$', align: 'center',title: '入出库类型'}
            ,{field: 'ioPri', align: 'center',title: '优先级'}
            // ,{field: 'crnNo$', align: 'center',title: '堆垛机'}
            ,{field: 'sourceStaNo$', align: 'center',title: '源站'}
            ,{field: 'staNo$', align: 'center',title: '目标站'}
            ,{field: 'sourceStaNo', align: 'center',title: '源站'}
            ,{field: 'staNo', align: 'center',title: '目标站'}
            ,{field: 'sourceLocNo$', align: 'center',title: '源库位'}
            ,{field: 'locNo$', align: 'center',title: '目标库位'}
            ,{field: 'shuttleNo', align: 'center',title: '小车', width: 70}
@@ -657,6 +657,7 @@
            if (res.code === 403) {
                top.location.href = baseUrl+"/";
            }
            $(".layui-table-body, .layui-table-box, .layui-table-cell").css('overflow', 'visible');//解决layui数据表格中嵌套下拉框显示问题
            pageCurr=curr;
            if (res.data.length === 0 && count !== 0) {
                tableIns.reload({