#
luxiaotao1123
2023-02-15 e3bf21cf9206197ab78ae1483af0fdad1f57fd38
#
1个文件已修改
60 ■■■■ 已修改文件
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java 60 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -952,36 +952,36 @@
                wrkMastMapper.updateById(wrkMast);
                // 双深库位且浅库位有货,则需先对浅库位进行库位移转
                if (Utils.isDeepLoc(slaveProperties, wrkMast.getSourceLocNo())) {
                    String shallowLocNo = Utils.getShallowLoc(slaveProperties, wrkMast.getSourceLocNo());
                    LocMast shallowLoc = locMastService.selectById(shallowLocNo);
                    // O.空库位、Q.拣料/盘点/并板再入库、S.入库预约、X.禁用 直接搬!
                    if (shallowLoc.getLocSts().equals("P") || shallowLoc.getLocSts().equals("R")) {
                        WrkMast waitWrkMast = wrkMastMapper.selectBySourceLocNo(shallowLocNo);
                        if (null == waitWrkMast) {
                            News.error("{}库位异常,未检索到相应工作档!", shallowLocNo);
                        } else {
                            if(waitWrkMast.getWrkSts() == 11) {
                                waitWrkMast.setIoPri(wrkMast.getIoPri() + 1);
                                waitWrkMast.setModiTime(new Date());
                                if (wrkMastMapper.updateById(waitWrkMast) == 0) {
                                    News.error("调整工作档优先级失败!工作号={}", waitWrkMast.getWrkNo());
                                }
                            }
                            continue;
                        }
                    } else if (shallowLoc.getLocSts().equals("F") || shallowLoc.getLocSts().equals("D")) {
                        // 此标记避免多次执行移库任务
                        if (Cools.isEmpty(wrkMast.getUpdMk()) || "N".equals(wrkMast.getUpdMk())) {
                            wrkMast.setUpdMk("Y");
                            wrkMastMapper.updateById(wrkMast);
                            // 生成工作档、改变浅库位的源库/目标库 库位状态、下发堆垛机命令(立马执行)
                            moveLocForDeepLoc(slave, shallowLoc);
                        }
                        News.error("{}任务出库失败,浅库位堵塞!", wrkMast.getWrkNo());
                        continue;
                    }
                }
//                if (Utils.isDeepLoc(slaveProperties, wrkMast.getSourceLocNo())) {
//                    String shallowLocNo = Utils.getShallowLoc(slaveProperties, wrkMast.getSourceLocNo());
//                    LocMast shallowLoc = locMastService.selectById(shallowLocNo);
//                    // O.空库位、Q.拣料/盘点/并板再入库、S.入库预约、X.禁用 直接搬!
//                    if (shallowLoc.getLocSts().equals("P") || shallowLoc.getLocSts().equals("R")) {
//                        WrkMast waitWrkMast = wrkMastMapper.selectBySourceLocNo(shallowLocNo);
//                        if (null == waitWrkMast) {
//                            News.error("{}库位异常,未检索到相应工作档!", shallowLocNo);
//                        } else {
//                            if(waitWrkMast.getWrkSts() == 11) {
//                                waitWrkMast.setIoPri(wrkMast.getIoPri() + 1);
//                                waitWrkMast.setModiTime(new Date());
//                                if (wrkMastMapper.updateById(waitWrkMast) == 0) {
//                                    News.error("调整工作档优先级失败!工作号={}", waitWrkMast.getWrkNo());
//                                }
//                            }
//                            continue;
//                        }
//                    } else if (shallowLoc.getLocSts().equals("F") || shallowLoc.getLocSts().equals("D")) {
//                        // 此标记避免多次执行移库任务
//                        if (Cools.isEmpty(wrkMast.getUpdMk()) || "N".equals(wrkMast.getUpdMk())) {
//                            wrkMast.setUpdMk("Y");
//                            wrkMastMapper.updateById(wrkMast);
//                            // 生成工作档、改变浅库位的源库/目标库 库位状态、下发堆垛机命令(立马执行)
//                            moveLocForDeepLoc(slave, shallowLoc);
//                        }
//                        News.error("{}任务出库失败,浅库位堵塞!", wrkMast.getWrkNo());
//                        continue;
//                    }
//                }
                // 已经存在吊车执行任务时,则过滤
                if (wrkMastMapper.selectWorking(slave.getId()) != null) {