自动化立体仓库 - WMS系统
#
whycq
2024-09-18 2025bc1fe84535219fd4bec24ad0985c5b482b78
#
3个文件已修改
30 ■■■■■ 已修改文件
src/main/java/com/zy/asrs/controller/OrderDetlController.java 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/service/impl/AgvMobileServiceImpl.java 11 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/controller/OrderDetlController.java
@@ -151,12 +151,15 @@
    }
    @RequestMapping(value = "/orderDetl/pakout/list/authV3")
    @Synchronized
    @ManagerAuth
    public R pakoutList3(@RequestParam(defaultValue = "1")Integer curr,
                         @RequestParam(defaultValue = "10")Integer limit,
                         @RequestParam(required = false)String orderByField,
                         @RequestParam(required = false)String orderByType,
                         @RequestParam Map<String, Object> param){
        StopWatch stopWatch = new StopWatch();
        stopWatch.start();
        EntityWrapper<OrderDetl> wrapper = new EntityWrapper<>();
        excludeTrash(param);
        convertLike(param, wrapper);
@@ -170,12 +173,14 @@
                docIds.add(pakin.getDocId());
            }
        }
        wrapper.in("source",docIds);
        wrapper.ne("source",19);
        Page<OrderDetl> page = orderDetlService.selectPage(new Page<>(curr, limit), wrapper);
        for (OrderDetl record : page.getRecords()) {
            Double sumAnfme = agvLocDetlService.getSumAnfme(record.getMatnr(), record.getThreeCode());
            record.setStock(sumAnfme == null ? 0 : sumAnfme);
        }
        stopWatch.stop();
        System.out.println(stopWatch.getTotalTimeSeconds());
        return R.ok(page);
    }
src/main/java/com/zy/asrs/service/impl/AgvMobileServiceImpl.java
@@ -517,7 +517,10 @@
        if (ioType == 12 && locMast.getFloor() == 1 && floor != 4 && agvLocMast.getFloor() != 1) {
            List<AgvLocDetl> agvLocDetls = agvLocDetlService.selectList(new EntityWrapper<AgvLocDetl>().eq("loc_no", agvLocMast.getLocNo()));
            for (AgvLocDetl agvLocDetl : agvLocDetls) {
                OrderDetl orderDetl = orderDetlService.selectOne(new EntityWrapper<OrderDetl>().eq("three_code", agvLocDetl.getThreeCode()).eq("matnr", agvLocDetl.getMatnr()).eq("order_no", "DB" + agvLocDetl.getOrderNo()));
                OrderDetl orderDetl = orderDetlService.selectOne(new EntityWrapper<OrderDetl>().eq("three_code", agvLocDetl.getThreeCode()).eq("matnr", agvLocDetl.getMatnr()).eq("source", 33));
                if (Cools.isEmpty(orderDetl)) {
                    throw new CoolException("当前物料的调拨单不存在!");
                }
                orderDetl.setQty(orderDetl.getQty() - agvLocDetl.getAnfme());
                if (!orderDetlService.updateById(orderDetl)) {
                    throw new CoolException("保存工作明细失败");
@@ -571,8 +574,6 @@
                //更新目标库位明细 101.出库 删除源库位库存明细
                agvLocDetlService.delete(new EntityWrapper<AgvLocDetl>().eq("loc_no",agvWrkMast.getSourceLocNo()));
            }
            agvWrkMast.setSourceLocNo("");
        }
        //生成AGV工作历史档 + 生成AGV工作明细历史档
@@ -595,9 +596,9 @@
            }
        }
        // 更新站点状态
        agvLocMastService.updateLocStsByLocNo(agvWrkMast.getSourceLocNo(),"O","",null);
//        agvLocMastService.updateLocStsByLocNo(agvWrkMast.getSourceLocNo(),"O","",null);
        // 更新源库位状态
//        agvBasDevpService.updateLocStsAndBarcodeByDevNo(agvWrkMast.getLocNo(),"O","",agvWrkMast.getWhsType().shortValue());
        agvBasDevpService.updateLocStsAndBarcodeByDevNo(agvWrkMast.getLocNo(),"O","",agvWrkMast.getWhsType().shortValue());
        //删除AGV工作明细档
        agvWrkDetlService.delete(new EntityWrapper<AgvWrkDetl>().eq("wrk_no",oldWrkNo));
src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java
@@ -78,11 +78,6 @@
                agvWrkMastLogService.save(agvWrkMast);
                //生成AGV工作明细历史档
                agvWrkDetlLogService.save(wrkNo);
            } else {
                if (!agvWrkMast.getSourceLocNo().substring(0,2).equals("DB")) {
                    agvWrkMast.setSourceLocNo("");
                }
                agvWrkMastService.updateById(agvWrkMast);
            }
            switch (agvWrkMast.getIoType()){
@@ -235,6 +230,13 @@
                //删除AGV工作明细档
                agvWrkDetlService.delete(new EntityWrapper<AgvWrkDetl>().eq("wrk_no",wrkNo));
            }
//            else {
//                agvBasDevpService.updateLocStsAndBarcodeByDevNo(agvWrkMast.getLocNo(),"O","",agvWrkMast.getWhsType().shortValue());
//                if (!agvWrkMast.getSourceLocNo().substring(0,2).equals("DB")) {
//                    agvWrkMast.setSourceLocNo("");
//                }
//                agvWrkMastService.updateById(agvWrkMast);
//            }
            if(!isJSON(orderNo)){
                //检查订单是否已完成