自动化立体仓库 - WMS系统
whycq
2024-11-04 d84ed060312f3e7fd5f53dd47d3a1729706a880b
src/main/java/com/zy/asrs/service/impl/AgvWorkServiceImpl.java
@@ -1061,6 +1061,27 @@
//                        throw new CoolException("同步半成品调拨单流水记录失败");
//                    }
                }
                // 回流单取消
            } else if (wrkMast.getIoType() == 114) {
                //源库位
                String locNo = wrkMast.getSourceLocNo();
                // 目标库位
                String targetLocNo = wrkMast.getLocNo();
                agvLocMastService.updateLocStsByLocNo(locNo,"F",wrkMast.getBarcode(),(short)getContainerTypeByloc(locNo));
                agvLocMastService.updateLocStsByLocNo(targetLocNo,"O","",null);
                // 源库位 库位主档
                AgvLocMast sourceLocMast = agvLocMastService.selectOne(new EntityWrapper<AgvLocMast>().eq("loc_no", locNo));
                AgvLocMast locMast = agvLocMastService.selectOne(new EntityWrapper<AgvLocMast>().eq("loc_no", targetLocNo));
                // 当前任务是跨层移库  且目标楼层是1楼的 回滚调拨单
                List<AgvLocDetl> agvLocDetls = agvLocDetlService.selectList(new EntityWrapper<AgvLocDetl>().eq("loc_no", locNo));
                for (AgvLocDetl agvLocDetl : agvLocDetls) {
                    OrderDetl orderDetl = orderDetlService.selectOne(new EntityWrapper<OrderDetl>().eq("three_code", agvLocDetl.getThreeCode()).eq("matnr", agvLocDetl.getMatnr()).eq("source", 17));
                    orderDetl.setQty(orderDetl.getQty() - agvLocDetl.getAnfme());
                    if (!orderDetlService.updateById(orderDetl)) {
                        throw new CoolException("更新订单明细失败");
                    }
                }
                //出库取消
            } else {
                //源库位
@@ -1104,7 +1125,7 @@
            }
            if(wrkMast.getIoType() != 1 && wrkMast.getIoType() != 10 && wrkMast.getIoType()!=111 && wrkMast.getIoType()!=108 && wrkMast.getIoType() != 12 && wrkMast.getIoType() != 11){
            if(wrkMast.getIoType() != 114 && wrkMast.getIoType() != 1 && wrkMast.getIoType() != 10 && wrkMast.getIoType()!=111 && wrkMast.getIoType()!=108 && wrkMast.getIoType() != 12 && wrkMast.getIoType() != 11){
                //订单回滚
                //List<AgvWrkDetl> agvWrkDetlList = agvWrkDetlService.selectByWrkNo(wrkMast.getWrkNo());
                List<AgvWrkDetl> agvWrkDetlList1 = agvWrkDetlService.selectList(new EntityWrapper<AgvWrkDetl>().eq("wrk_no", wrkMast.getWrkNo()));