自动化立体仓库 - WMS系统
dubin
2026-01-20 67826a2c51bbc013db409dd1a5e29dd4ba52fd72
src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java
@@ -67,15 +67,6 @@
                            throw new CoolException("空板入库条码不能为空");
                        }
                        locMast.setBarcode(wrkMast.getBarcode());
                        if (Integer.parseInt(wrkMast.getBarcode().substring(0,1))==5){
                            locMast.setLocType2((short)5);
                        }else if (Integer.parseInt(wrkMast.getBarcode().substring(0,1))==6){
                            locMast.setLocType2((short)6);
                        }else if(Integer.parseInt(wrkMast.getBarcode().substring(0,1))==7){
                            locMast.setLocType2((short)7);
                        }else if(Integer.parseInt(wrkMast.getBarcode().substring(0,1))==8){
                            locMast.setLocType2((short)8);
                        }
                        locMast.setLocSts("D");
                        locMast.setIoTime(now);
                        locMast.setModiTime(now);
@@ -118,6 +109,7 @@
                            locDetl.setZpallet(wrkDetl.getZpallet()); // 托盘条码
                            locDetl.setModiTime(now);
                            locDetl.setAppeTime(now);
                            if (!locDetlService.insert(locDetl)) {
//                                exceptionHandle("全板入库 ===>> 添加库存明细失败;[workNo={0}],[locNo={1}]", wrkMast.getWrkNo(), wrkMast.getLocNo());
                                TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
@@ -143,6 +135,9 @@
                    }
                    // 修改库位状态 S ====>> F
                    if (locMast.getLocSts().equals("S")) {
                        if (Cools.isEmpty(wrkMast.getBarcode())) {
                            throw new CoolException("入库条码不能为空");
                        }
                        locMast.setLocSts("F");
                        locMast.setBarcode(wrkMast.getBarcode());
                        locMast.setIoTime(now);
@@ -232,6 +227,7 @@
                            locDetl.setZpallet(wrkDetl.getZpallet()); // 托盘条码
                            locDetl.setModiTime(now);
                            locDetl.setAppeTime(now);
                            if (!locDetlService.insert(locDetl)) {
//                                exceptionHandle("并板入库 ===>> 新增库存明细失败;[workNo={0}],[matnr={1}]", wrkMast.getWrkNo(), wrkDetl.getMatnr());
                                TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
@@ -260,6 +256,30 @@
//                        exceptionHandle("盘点入库 ===>> 工作明细档为空;[workNo={0}]", wrkMast.getWrkNo());
                        TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
                        return FAIL.setMsg("盘点入库 ===>> 工作明细档为空; [workNo=" + wrkMast.getWrkNo() + "],[locNo=" + wrkMast.getLocNo() + "]");
                    }
                    for (WrkDetl wrkDetl : wrkDetls57) {
                        LocDetl locDetl = locDetlService.selectItem(locMast.getLocNo(), wrkDetl);
                        if (null != locDetl) {
                            if (!locDetlService.updateAnfme(wrkDetl.getAnfme(), locMast.getLocNo(), wrkDetl)) {
//                                exceptionHandle("盘点入库 ===>> 更新库存明细失败;[workNo={0}],[locNo={1}]", wrkMast.getWrkNo(), wrkMast.getLocNo());
                                TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
                                return FAIL.setMsg("盘点入库 ===>> 更新库存明细失败; [workNo=" + wrkMast.getWrkNo() + "],[locNo=" + wrkMast.getLocNo() + "]");
                            }
                        } else {
                            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());
                                TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
                                return FAIL.setMsg("盘点入库 ===>> 添加库存明细失败; [workNo=" + wrkMast.getWrkNo() + "],[locNo=" + wrkMast.getLocNo() + "]");
                            }
                        }
                    }
                    // 修改库位状态 Q ====>> F
                    if (locMast.getLocSts().equals("Q")) {
@@ -381,9 +401,9 @@
                    // 修改源库位状态 R ===>> O
                    if (locMast.getLocSts().equals("R")) {
                        locMast.setLocSts("O");
                        locMast.setBarcode("");//托盘与库位绑定
                        locMast.setModiTime(now);
                        locMast.setIoTime(now);
                        locMast.setBarcode("");
                        if (!locMastService.updateById(locMast)) {
//                            exceptionHandle("全板出库 ===>> 修改源库位状态失败;[workNo={0}],[sourceLocNo={1}]", wrkMast.getWrkNo(), wrkMast.getSourceLocNo());
                            TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
@@ -396,9 +416,8 @@
                    // 修改库位状态 R ===>> O
                    if (locMast.getLocSts().equals("R")) {
                        locMast.setLocSts("O");
                        locMast.setBarcode("");//托盘与库位绑定
                        locMast.setLocType2((short)0);
                        locMast.setModiTime(now);
                        locMast.setBarcode("");
                        locMast.setIoTime(now);
                        if (!locMastService.updateById(locMast)) {
//                            exceptionHandle("空板出库 ===>> 修改源库位状态失败;[workNo={0}],[sourceLocNo={1}]", wrkMast.getWrkNo(), wrkMast.getSourceLocNo());