自动化立体仓库 - WMS系统
skyouc
2 天以前 053bd1cc2693589840bfad523c954960db654f54
no message
5个文件已修改
95 ■■■■ 已修改文件
src/main/java/com/zy/asrs/task/WorkMastScheduler.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/task/handler/AutoLocMoveHandler.java 80 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/task/handler/WorkLogHandler.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java 5 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/common/constant/MesConstant.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/task/WorkMastScheduler.java
@@ -100,7 +100,8 @@
//            } else {
                params.setType("out")
                        .setTaskNo(wrkMast.getWrkNo() + "")
                        .setLocNo(wrkMast.getLocNo())
                        .setLocNo(wrkMast.getSourceLocNo())
                        .setBarcode(wrkMast.getBarcode())
                        .setStaNo(wrkMast.getStaNo())
                        .setTaskPri(wrkMast.getIoPri().intValue());
                wcsApiService.pubWrkToWcs(params);
src/main/java/com/zy/asrs/task/handler/AutoLocMoveHandler.java
@@ -40,46 +40,46 @@
    @Transactional(isolation = Isolation.REPEATABLE_READ)
    public ReturnT<String> start(Integer crnNo, Integer ioType) {
        try {
            //11  穿梭移单边
            if (ioType==11){
                for (int bay = 1;bay < 27;bay++){
                    for (int lev = 1 ; lev <6 ; lev++){
                        List<LocMast> locMasts = locMastService.selectLocMastShuttleMoveUnilateral(bay,lev,crnNo);
                        if (!Cools.isEmpty(locMasts) && locMasts.size()<4){
                            for (LocMast locMast:locMasts){
                                LocDetl locDetl = locDetlService.selectOne(new EntityWrapper<LocDetl>().eq("loc_no", locMast.getLocNo()));
//                                StartupDto startupDto = commonService.getLocNo(crnNo == 1 ? 6 : 5, ioType, crnNo == 1 ? 917 : 918, locDetl.getMatnr(), locDetl.getBatch(),locDetl.getBrand(), null);
                                FindLocNoAttributeVo findLocNoAttributeVo = new FindLocNoAttributeVo(locDetl);
                                StartupDto startupDto = commonService.getLocNo( ioType, crnNo == 1 ? 917 : 918, findLocNoAttributeVo, null);
                                workService.locMove(locMast.getLocNo(), startupDto.getLocNo(),9527L);
                            }
                            return SUCCESS;
                        }
                    }
                }
            }else {//11  单边移穿梭
                List<Map<String, Object>> list = locDetlService.selectLocDetlUnilateralMoveShuttleMap(crnNo);//111   单边移穿梭
                for (Map<String, Object> map : list) {
                    String matnr = map.getOrDefault("matnr","").toString();//物料号
                    String batch = map.getOrDefault("batch","").toString();//批号
                    String grade = map.getOrDefault("brand","").toString();//等级
                    int count = Integer.parseInt(map.get("count").toString());//单边库数量
                    if (count < 4) {
                        continue;
                    }
                    List<LocDetl> locDetlList = locDetlService.selectLocDetlUnilateralMoveShuttle(matnr, batch, grade, crnNo);
                    for (LocDetl locDetl : locDetlList) {
//                        StartupDto startupDto = commonService.getLocNo(crnNo == 1 ? 4 : 3, ioType, crnNo == 1 ? 901 : 932, locDetl.getMatnr(), locDetl.getBatch(), locDetl.getBrand(), null);
                        FindLocNoAttributeVo findLocNoAttributeVo = new FindLocNoAttributeVo(locDetl);
                        StartupDto startupDto = commonService.getLocNo( ioType, crnNo == 1 ? 901 : 932, findLocNoAttributeVo, null);
                        workService.locMove(locDetl.getLocNo(), startupDto.getLocNo(), 9527L);
                    }
                }
                return SUCCESS;
            }
//            //11  穿梭移单边
//            if (ioType==11){
//                for (int bay = 1;bay < 27;bay++){
//                    for (int lev = 1 ; lev <6 ; lev++){
//                        List<LocMast> locMasts = locMastService.selectLocMastShuttleMoveUnilateral(bay,lev,crnNo);
//                        if (!Cools.isEmpty(locMasts) && locMasts.size()<4){
//                            for (LocMast locMast:locMasts){
//                                LocDetl locDetl = locDetlService.selectOne(new EntityWrapper<LocDetl>().eq("loc_no", locMast.getLocNo()));
////                                StartupDto startupDto = commonService.getLocNo(crnNo == 1 ? 6 : 5, ioType, crnNo == 1 ? 917 : 918, locDetl.getMatnr(), locDetl.getBatch(),locDetl.getBrand(), null);
//                                FindLocNoAttributeVo findLocNoAttributeVo = new FindLocNoAttributeVo(locDetl);
//
//                                StartupDto startupDto = commonService.getLocNo( ioType, crnNo == 1 ? 917 : 918, sourceStaNo.getDevNo(), findLocNoAttributeVo, null);
//                                workService.locMove(locMast.getLocNo(), startupDto.getLocNo(),9527L);
//                            }
//                            return SUCCESS;
//                        }
//                    }
//                }
//            }else {//11  单边移穿梭
//                List<Map<String, Object>> list = locDetlService.selectLocDetlUnilateralMoveShuttleMap(crnNo);//111   单边移穿梭
//                for (Map<String, Object> map : list) {
//                    String matnr = map.getOrDefault("matnr","").toString();//物料号
//                    String batch = map.getOrDefault("batch","").toString();//批号
//                    String grade = map.getOrDefault("brand","").toString();//等级
//                    int count = Integer.parseInt(map.get("count").toString());//单边库数量
//                    if (count < 4) {
//                        continue;
//                    }
//
//                    List<LocDetl> locDetlList = locDetlService.selectLocDetlUnilateralMoveShuttle(matnr, batch, grade, crnNo);
//                    for (LocDetl locDetl : locDetlList) {
////                        StartupDto startupDto = commonService.getLocNo(crnNo == 1 ? 4 : 3, ioType, crnNo == 1 ? 901 : 932, locDetl.getMatnr(), locDetl.getBatch(), locDetl.getBrand(), null);
//                        FindLocNoAttributeVo findLocNoAttributeVo = new FindLocNoAttributeVo(locDetl);
//
//                        StartupDto startupDto = commonService.getLocNo( ioType, crnNo == 1 ? 901 : 932, sourceStaNo.getDevNo(), findLocNoAttributeVo, null);
//                        workService.locMove(locDetl.getLocNo(), startupDto.getLocNo(), 9527L);
//                    }
//                }
//                return SUCCESS;
//            }
        }catch (Exception e){
            log.error("自动移库出错,堆垛机号{},工作类型{}",crnNo,ioType);
        }
src/main/java/com/zy/asrs/task/handler/WorkLogHandler.java
@@ -48,7 +48,7 @@
    @Autowired
    private TaskDetlLogService taskDetlLogService;
    @Transactional
    @Transactional(rollbackFor = Exception.class)
    public ReturnT<String> start(WrkMast wrkMast) {
        try {
            List<WrkDetl> wrkDetls = wrkDetlService.selectByWrkNo(wrkMast.getWrkNo());
@@ -72,7 +72,7 @@
            // 入库 --------------------------------------------------------------------------------
            if (wrkMast.getWrkSts() == 5) {
                // 全板入库
                if (wrkMast.getIoType() == 1) {
                if (wrkMast.getIoType() == 1 || wrkMast.getIoType() == 10) {
                    // 入库通知单
                    if (!Cools.isEmpty(wrkMast.getBarcode())) {
                        // 保存入库通知档历史档
src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java
@@ -88,8 +88,6 @@
        locMast.setAreaName(basAreas.getName());
        try {
            if (null == locMast) {
                // exceptionHandle("工作档[workNo={0}]库位号错误[locNo={1}]", wrkMast.getWrkNo(),
                // wrkMast.getLocNo());
                TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
                return FAIL.setMsg("工作档[workNo=" + wrkMast.getWrkNo() + "]库位号错误[locNo=" + wrkMast.getLocNo() + "]");
            }
@@ -104,10 +102,9 @@
                        }
                        locMast.setLocSts("D");
                        locMast.setIoTime(now);
                        locMast.setBarcode(wrkMast.getBarcode());
                        locMast.setModiTime(now);
                        if (!locMastService.updateById(locMast)) {
                            // exceptionHandle("空板入库 ===>> 修改库位状态失败;[workNo={0}],[locNo={1}]",
                            // wrkMast.getWrkNo(), wrkMast.getLocNo());
                            TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
                            return FAIL.setMsg("空板入库 ===>> 修改库位状态失败; [workNo=" + wrkMast.getWrkNo() + "],[locNo="
                                    + wrkMast.getLocNo() + "]");
src/main/java/com/zy/common/constant/MesConstant.java
@@ -10,8 +10,9 @@
    public static final String URL = "http://10.143.23.26:1482/kc-api/api/wms/ ";
    //WCS系统接口地址
    public static final String WCS_URL = "http://192.168.238.244:9090/wcs";
//    public static final String WCS_URL = "http://192.168.238.32:9090/wcs";
    public static final String WCS_URL = "http://192.168.238.241:9090/wcs";
    //上架派工单反馈
    public static final String IN_DISPATCH_RESULT = "getInDispatchResult";