自动化立体仓库 - WMS系统
#
1
昨天 b0dffb07a0a099245f80a86ba2c68a49b6f0feca
src/main/java/com/zy/asrs/task/handler/WrkMastAgvHandler.java
@@ -56,27 +56,15 @@
                    basAgvWrkDetlService.delete(new EntityWrapper<BasAgvWrkDetl>().eq("wrk_no", basAgvMast.getTaskNo()));
                    basAgvMast.setStatus(3);
                    basAgvMastService.updateById(basAgvMast);
                    // ✅ 事务提交后执行
                    TransactionSynchronizationManager.registerSynchronization(
                            new TransactionSynchronizationAdapter() {
                                @Override
                                public void afterCommit() {
                                    openService.agvBindAndBin(String.valueOf(basAgvMast.getTaskNo()));
                                }
                            }
                    );
                    openService.agvBindAndBin(String.valueOf(basAgvMast.getTaskNo()));
                    break;
                case 1:
                    LocMast sourceLoc1 = locMastService.selectById(basAgvMast.getSourceLocNo());
                    LocMast locMast1 = locMastService.selectById(basAgvMast.getLocNo());
                    List<LocDetl> locDetls1 = locDetlService.selectList(new EntityWrapper<LocDetl>().eq("loc_no", basAgvMast.getLocNo()));
                    if (!locDetls1.isEmpty()) {
                        locDetlService.delete(new EntityWrapper<LocDetl>().eq("loc_no", basAgvMast.getLocNo()));
                    }
                    // 修改目标库位状态 ==> .locSts
                    locMast1.setLocSts("F");
                    locMast1.setIoTime(now);
@@ -118,6 +106,7 @@
                    basAgvLocDetlService.delete(new EntityWrapper<BasAgvLocDetl>().eq("loc_no", basAgvMast.getLocNo()));
                    basAgvMast.setStatus(3);
                    basAgvMastService.updateById(basAgvMast);
                    openService.agvBindAndBin(String.valueOf(basAgvMast.getTaskNo()));
                    break;
                case 2:
                    List<LocDetl> locDetls2 = locDetlService.selectList(new EntityWrapper<LocDetl>().eq("loc_no", basAgvMast.getLocNo()));
@@ -200,11 +189,16 @@
                    basAgvLocDetlService.delete(new EntityWrapper<BasAgvLocDetl>().eq("loc_no", basAgvMast.getLocNo()));
                    basAgvWrkDetlService.delete(new EntityWrapper<BasAgvWrkDetl>().eq("wrk_no", basAgvMast.getTaskNo()));
                    basAgvMast.setStatus(3);
                    if(basAgvMast.getIoType() == 2 && basAgvMast.getFloorNo() == 2){
                        basAgvMast.setStatus(4);
                    }
                    basAgvMastService.updateById(basAgvMast);
                    openService.agvBindAndBin(String.valueOf(basAgvMast.getTaskNo()));
                    break;
                case 3:
                    basAgvMast.setStatus(3);
                    basAgvMastService.updateById(basAgvMast);
                    openService.agvBindAndBin(String.valueOf(basAgvMast.getTaskNo()));
                    break;
                default:
                    return FAIL.setMsg("暂不支持该类型");