自动化立体仓库 - WMS系统
#
LSH
2022-08-17 1e4fc6b112f7350735aa3666d46e4b1a926ffdf9
#
1个文件已修改
96 ■■■■ 已修改文件
src/main/java/com/zy/asrs/task/handler/StandingHandler.java 96 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/task/handler/StandingHandler.java
@@ -59,56 +59,54 @@
                    log.error("库位:"+locMast.getLocNo()+"modiTime为空");
                } else if (Cools.isEmpty(locMast.getBarcode())){
                    log.error("库位:"+locMast.getLocNo()+"Pack码为空");
                } else{
                    if ( now.getTime()-locMast.getModiTime().getTime() >= locDetl.getDeadWarn()*60 ){
                        // 生成工作号
                        int workNo = commonService.getWorkNo(WorkNoType.getWorkNoType(ioType));
                        // 生成工作档
                        WrkMast wrkMast = new WrkMast();
                        wrkMast.setWrkNo(workNo);
                        wrkMast.setIoTime(now);
                        wrkMast.setWrkSts(11L); // 工作状态:11.生成出库ID
                        wrkMast.setIoType(ioType); // 入出库状态
                        wrkMast.setIoPri(13D); // 优先级:13
                        wrkMast.setCrnNo(locMast.getCrnNo());
                        wrkMast.setSourceStaNo(107); // 源站
                        wrkMast.setStaNo(104); // 目标站
                        wrkMast.setSourceLocNo(locMast.getLocNo()); // 源库位
                        wrkMast.setFullPlt("Y"); // 满板:Y
                        wrkMast.setPicking("N"); // 拣料
                        wrkMast.setExitMk("N"); // 退出
                        wrkMast.setEmptyMk("N"); // 空板
                        wrkMast.setLinkMis("N");
                        wrkMast.setBarcode(locMast.getBarcode());
                        wrkMast.setAppeTime(now);
                        wrkMast.setModiTime(now);
                        if (!wrkMastService.insert(wrkMast)) {
                            throw new CoolException("保存工作档失败,出库库位号:"+locMast.getLocNo());
                        }
                        // 生成工作档明细
                        WrkDetl wrkDetl = new WrkDetl();
                        wrkDetl.sync(locDetl);
                        wrkDetl.setWrkNo(workNo);
                        wrkDetl.setIoTime(now);
                        wrkDetl.setAnfme(1.0); // 数量
                        wrkDetl.setAppeTime(now);
                        wrkDetl.setModiTime(now);
                        if (!wrkDetlService.insert(wrkDetl)) {
                            throw new CoolException("保存工作档明细失败");
                        }
                        // 修改库位状态:   F.在库 ====>>> R.出库预约
                        if (locMast.getLocSts().equals("F")) {
                            locMast.setLocSts("R");
                            locMast.setModiTime(now);
                            if (!locMastService.updateById(locMast)) {
                                throw new CoolException("预约库位状态失败,库位号:"+locMast.getLocNo());
                            }
                        } else {
                            throw new CoolException(locMast.getLocNo() + "库位不是在库状态");
                        }
                    }else {
                } else if (now.getTime()-locMast.getModiTime().getTime() >= locDetl.getDeadWarn()*60*1000){
                    // 生成工作号
                    int workNo = commonService.getWorkNo(WorkNoType.getWorkNoType(ioType));
                    // 生成工作档
                    WrkMast wrkMast = new WrkMast();
                    wrkMast.setWrkNo(workNo);
                    wrkMast.setIoTime(now);
                    wrkMast.setWrkSts(11L); // 工作状态:11.生成出库ID
                    wrkMast.setIoType(ioType); // 入出库状态
                    wrkMast.setIoPri(13D); // 优先级:13
                    wrkMast.setCrnNo(locMast.getCrnNo());
                    wrkMast.setSourceStaNo(107); // 源站
                    wrkMast.setStaNo(104); // 目标站
                    wrkMast.setSourceLocNo(locMast.getLocNo()); // 源库位
                    wrkMast.setFullPlt("Y"); // 满板:Y
                    wrkMast.setPicking("N"); // 拣料
                    wrkMast.setExitMk("N"); // 退出
                    wrkMast.setEmptyMk("N"); // 空板
                    wrkMast.setLinkMis("N");
                    wrkMast.setBarcode(locMast.getBarcode());
                    wrkMast.setAppeTime(now);
                    wrkMast.setModiTime(now);
                    if (!wrkMastService.insert(wrkMast)) {
                        throw new CoolException("保存工作档失败,出库库位号:"+locMast.getLocNo());
                    }
                    // 生成工作档明细
                    WrkDetl wrkDetl = new WrkDetl();
                    wrkDetl.sync(locDetl);
                    wrkDetl.setWrkNo(workNo);
                    wrkDetl.setIoTime(now);
                    wrkDetl.setAnfme(1.0); // 数量
                    wrkDetl.setAppeTime(now);
                    wrkDetl.setModiTime(now);
                    if (!wrkDetlService.insert(wrkDetl)) {
                        throw new CoolException("保存工作档明细失败");
                    }
                    // 修改库位状态:   F.在库 ====>>> R.出库预约
                    if (locMast.getLocSts().equals("F")) {
                        locMast.setLocSts("R");
                        locMast.setModiTime(now);
                        if (!locMastService.updateById(locMast)) {
                            throw new CoolException("预约库位状态失败,库位号:"+locMast.getLocNo());
                        }
                    } else {
                        throw new CoolException(locMast.getLocNo() + "库位不是在库状态");
                    }
                } else {
                }
            }