自动化立体仓库 - WMS系统
123
zhang
4 天以前 21d0e7ab9d5c7316225a3e9eecf465cd37c9bd85
src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java
@@ -86,7 +86,7 @@
                    }
                    // 遍历工作明细,更新库存明细和入库通知档
                    for (WrkDetl wrkDetl : wrkDetls) {
                        wrkDetl.setBatch("");
                        LocDetl locDetl = locDetlService.selectItem(locMast.getLocNo(), wrkDetl.getMatnr(), wrkDetl.getBatch());
                        if (null != locDetl) {
                            if (!locDetlService.updateAnfme(wrkDetl.getAnfme(), wrkMast.getLocNo(), wrkDetl.getMatnr(), wrkDetl.getBatch())) {
@@ -130,6 +130,7 @@
                        locMast.setFrozen(wrkMast.getFrozen());
                        locMast.setIoTime(now);
                        locMast.setModiTime(now);
                        locMast.setFrozenMemo(wrkMast.getMemo());
                        if (!locMastService.updateById(locMast)) {
                            exceptionHandle("全板入库 ===>> 修改库位状态失败;[workNo={0}],[locNo={1}]", wrkMast.getWrkNo(), wrkMast.getLocNo());
                        }
@@ -146,7 +147,7 @@
                        LocDetl locDetl = locDetlService.selectItem(locMast.getLocNo(), wrkDetl.getMatnr(), wrkDetl.getBatch());
                        if (null != locDetl) {
                            if (!locDetlService.updateAnfme(locDetl.getAnfme() - wrkDetl.getAnfme(), locMast.getLocNo(), wrkDetl.getMatnr(), wrkDetl.getBatch())) {
                            if (!locDetlService.updateAnfme(locDetl.getAnfme() - wrkDetl.getAnfme(), locMast.getLocNo(), wrkDetl.getMatnr(), wrkDetl.getBatch(), wrkDetl.getManu(),wrkDetl.getMemo())) {
                                exceptionHandle("拣料入库 ===>> 修改库存明细数量失败;[workNo={0}],[locNo={1}]", wrkMast.getWrkNo(), wrkMast.getLocNo());
                            }
                        }
@@ -208,6 +209,24 @@
                    if (wrkDetls57.isEmpty()) {
                        exceptionHandle("盘点入库 ===>> 工作明细档为空;[workNo={0}]", wrkMast.getWrkNo());
                    }
                    if(!Cools.isEmpty(locDetlService.selectByLocNo(wrkMast.getLocNo()))){
                        locDetlService.delete(new EntityWrapper<LocDetl>().eq("loc_no", wrkMast.getLocNo()));
                    }
                    if (Cools.isEmpty(locDetlService.selectByLocNo(wrkMast.getLocNo()))){
                        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}],[matnr={1}]", wrkMast.getWrkNo(), wrkDetl.getMatnr());
                            }
                        }
                    }
                    // 修改库位状态 Q ====>> F
                    if (locMast.getLocSts().equals("Q")) {
                        locMast.setLocSts(wrkMast.getFullPlt().equals("Y")?"F":"D");
@@ -219,8 +238,8 @@
                        }
                    }
                    break;
                // 库位移转
                case 11:
                case 11:// 库位移转
                case 111:// 库位移转(高频区域)
                    // 默认目标库位是空板
                    String locSts = "D";
                    // 库位移转判断是否为空板移转
@@ -333,6 +352,7 @@
                        locMast.setFrozen(0);
                        locMast.setModiTime(now);
                        locMast.setIoTime(now);
                        locMast.setFrozenMemo("");
                        if (!locMastService.updateById(locMast)) {
                            exceptionHandle("全板出库 ===>> 修改源库位状态失败;[workNo={0}],[sourceLocNo={1}]", wrkMast.getWrkNo(), wrkMast.getSourceLocNo());
                        }