自动化立体仓库 - WMS系统
luxiaotao1123
2020-07-06 bbec050a48fbf8156be31cd6fcd3c0f2bca7d638
#任务中心————拣料入库
1个文件已修改
39 ■■■■■ 已修改文件
src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java 39 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java
@@ -50,12 +50,13 @@
        LocMast locMast = locMastService.selectById(wrkMast.getLocNo());
        if (null == locMast) {
            exceptionHandle(""); // todo
            return;
        }
        switch (wrkMast.getIoType()) {
            // 空板入库
            case 10:
                // 修改库位状态=D
                if (null != locMast && (locMast.getLocType().equals("S") || locMast.getLocType().equals("Q"))) {
                if (locMast.getLocType().equals("S") || locMast.getLocType().equals("Q")) {
                    locMast.setLocType("D");
                    locMast.setIoTime(now);
                    locMast.setModiTime(now);
@@ -71,7 +72,7 @@
                if (!locDetls.isEmpty()) {
                    locDetlService.delete(new EntityWrapper<LocDetl>().eq("loc_no", wrkMast.getLocNo()));
                }
                // 根据工作号,查询工作明细档
                List<WrkDetl> wrkDetls = wrkDetlService.selectList(new EntityWrapper<WrkDetl>().eq("wrk_no", wrkMast.getWrkNo()));
                if (wrkDetls.isEmpty()) {
                    exceptionHandle(""); // todo
@@ -131,7 +132,41 @@
                    }
                }
                break;
            // 拣料入库
            case 53:
                // 根据工作号,查询工作明细档
                List<WrkDetl> wrkDetls53 = wrkDetlService.selectList(new EntityWrapper<WrkDetl>().eq("wrk_no", wrkMast.getWrkNo()));
                if (wrkDetls53.isEmpty()) {
                    exceptionHandle(""); // todo
                }
                for (WrkDetl wrkDetl:wrkDetls53) {
                    // 修改库存明细数量,如果工作明细数量为0时,删除库存明细
                    LocDetl locDetl = locDetlService.selectOne(new EntityWrapper<LocDetl>().eq("loc_no", locMast.getLocNo()).eq("matnr", wrkDetl.getMatnr()));
                    if (null != locDetl) {
                        if (wrkDetl.getAnfme() == 0) {
                            if (!locDetlService.deleteById(locDetl)) {
                                exceptionHandle(""); // todo
                            }
                        } else {
                            locDetl.setAnfme(wrkDetl.getAnfme());
                            locDetl.setModiTime(now);
                            if (!locDetlService.updateById(locDetl)) {
                                exceptionHandle(""); // todo
                            }
                        }
                        // todo:luxiaotao 3)修改出库通知档 status ==> Y
                    }
                }
                // 修改库位状态 S ====>> F
                if (locMast.getLocType().equals("Q")) {
                    locMast.setLocType("F");
                    locMast.setBarcode(wrkMast.getBarcode());
                    locMast.setIoTime(now);
                    locMast.setModiTime(now);
                    if (!locMastService.updateById(locMast)) {
                        exceptionHandle(""); // todo
                    }
                }
                break;
            case 54:
                break;