自动化立体仓库 - WMS系统
#
whycq
2024-05-30 78cbf1ad667be5373e3a50ab0f500555ba8c5634
#
4个文件已修改
47 ■■■■ 已修改文件
src/main/java/com/zy/asrs/service/impl/AgvMobileServiceImpl.java 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/task/AgvWrkMastScheduler.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/task/AutoMoveScheduler.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java 37 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/service/impl/AgvMobileServiceImpl.java
@@ -525,6 +525,9 @@
    public String allocationIn(AgvMobileStartPakin param, Long userId) {
        Date now = new Date();
        AgvWrkMast agvWrkMast = agvWrkMastService.selectOne(new EntityWrapper<AgvWrkMast>().eq("barcode", param.getBarcode()));
        if (agvWrkMast.getIoType() != 111) {
            throw new CoolException("非手动调拨任务,不支持次功能");
        }
        AgvBasDevp agvBasDevp = agvBasDevpService.selectByDevNo(param.getDevNo());
        if (Cools.isEmpty(agvWrkMast)) {
            throw new CoolException("工作档中没有此货架任务");
@@ -543,8 +546,10 @@
        if (!agvWrkMastService.update(agvWrkMast,new EntityWrapper<AgvWrkMast>().eq("wrk_no",agvWrkMast.getWrkNo()))) {
            throw new CoolException("更新工作档失败");
        }
        //
        agvLocMastService.updateLocStsByLocNo(locNo.getLocNo(),"S",agvWrkMast.getBarcode(),agvWrkMast.getWhsType().shortValue());
        // 更新源库位状态
        agvBasDevpService.updateLocStsAndBarcodeByDevNo(param.getDevNo(),"F",agvWrkMast.getBarcode(),agvWrkMast.getWhsType().shortValue());
        agvBasDevpService.updateLocStsAndBarcodeByDevNo(param.getDevNo(),"R",agvWrkMast.getBarcode(),agvWrkMast.getWhsType().shortValue());
        //删除AGV工作档
        return "ok";
    }
src/main/java/com/zy/asrs/task/AgvWrkMastScheduler.java
@@ -56,6 +56,7 @@
                .or().eq("io_type",12)
                .or().eq("io_type",108)
                .or().eq("io_type",109)
                .or().eq("io_type",111)
                .or().eq("io_type",112)
                .or().eq("io_type",113));
        if(!Cools.isEmpty(agvWrkMastList)){
src/main/java/com/zy/asrs/task/AutoMoveScheduler.java
@@ -31,7 +31,7 @@
    private AgvBasDevpService agvBasDevpService;
    // 调拨出库
    @Scheduled(cron = "0/2 * * * * ? ")
//    @Scheduled(cron = "0/2 * * * * ? ")
    private void execute(){
        List<AgvLocMast> agvLocMasts = agvLocMastService.selectList(
                new EntityWrapper<AgvLocMast>()
src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java
@@ -70,11 +70,11 @@
        agvWrkMastService.updateById(agvWrkMast);
        // 空板入库 设置库位状态为D.空桶/空栈板
        String locSts = agvWrkMast.getIoType() == 10 ? "D" : "F";
        if (agvWrkMast.getIoType() == 10 || agvWrkMast.getIoType() == 109 ) {
        if (agvWrkMast.getIoType() == 10 || agvWrkMast.getIoType() == 109 || agvWrkMast.getIoType() == 111 ) {
            // 库位 -- 接驳位 / 库位
            if (agvWrkMast.getIoType() == 109 && agvWrkMast.getLocNo().substring(0,2).equals("DB")) {
            if ((agvWrkMast.getIoType() == 109 || agvWrkMast.getIoType() == 111) && agvWrkMast.getLocNo().substring(0,2).equals("DB")) {
                agvBasDevpService.updateLocStsAndBarcodeByDevNo(agvWrkMast.getLocNo(),"F",agvWrkMast.getBarcode(),agvWrkMast.getWhsType().shortValue());
                // 接驳位 -- 库位
            // 接驳位 -- 库位
            } else {
                agvLocMastService.updateLocStsByLocNo(agvWrkMast.getLocNo(),"D",agvWrkMast.getBarcode(),agvWrkMast.getWhsType().shortValue());
            }
@@ -82,10 +82,13 @@
            agvLocMastService.updateLocStsByLocNo(agvWrkMast.getLocNo(),"F",agvWrkMast.getBarcode(),agvWrkMast.getWhsType().shortValue());
        }
        //生成AGV工作历史档
        agvWrkMastLogService.save(agvWrkMast);
        //生成AGV工作明细历史档
        agvWrkDetlLogService.save(wrkNo);
        if (agvWrkMast.getIoType() != 111) {
            //生成AGV工作历史档
            agvWrkMastLogService.save(agvWrkMast);
            //生成AGV工作明细历史档
            agvWrkDetlLogService.save(wrkNo);
        }
        //类型为入库时
        if(agvWrkMast.getIoType() == 1){
            //更新目标库位明细
@@ -113,7 +116,7 @@
            agvLocMastService.updateLocStsByLocNo(agvWrkMast.getSourceLocNo(),"O","",agvWrkMast.getWhsType().shortValue(),"",(short)0);
        }
        if(agvWrkMast.getIoType() == 109){
        if(agvWrkMast.getIoType() == 109 || agvWrkMast.getIoType() == 111 || agvWrkMast.getIoType() == 112){
            // 接驳位 -- 库位
            if (agvWrkMast.getSourceLocNo().substring(0,2).equals("DB")) {
                agvBasDevpService.updateLocStsAndBarcodeByDevNo(agvWrkMast.getSourceLocNo(),"O","",(short)0);
@@ -123,16 +126,26 @@
                agvLocMastService.updateLocStsByLocNo(agvWrkMast.getSourceLocNo(),"O","",agvWrkMast.getWhsType().shortValue(),"",(short)0);
            }
        }
        if(agvWrkMast.getIoType() == 113){
            // 接驳位 -- 库位
            if (agvWrkMast.getSourceLocNo().substring(0,2).equals("DB")) {
                agvBasDevpService.updateLocStsAndBarcodeByDevNo(agvWrkMast.getSourceLocNo(),"O","",(short)0);
            }
        }
        if (agvWrkMast.getIoType() == 58) {
            agvBasDevpService.updateLocStsAndBarcodeByDevNo(agvWrkMast.getSourceLocNo(),"O","",agvWrkMast.getWhsType().shortValue());
        }
        //删除AGV工作档
        agvWrkMastService.deleteById(wrkNo);
        //删除AGV工作明细档
        agvWrkDetlService.delete(new EntityWrapper<AgvWrkDetl>().eq("wrk_no",wrkNo));
        if (agvWrkMast.getIoType() != 111) {
            //删除AGV工作档
            agvWrkMastService.deleteById(wrkNo);
            //删除AGV工作明细档
            agvWrkDetlService.delete(new EntityWrapper<AgvWrkDetl>().eq("wrk_no",wrkNo));
        }
        if(!isJSON(orderNo)){
            //检查订单是否已完成