自动化立体仓库 - WMS系统
野心家
2024-12-25 0cac4ab2975a4dd01c937aa4f33ffa88c45b604b
src/main/java/com/zy/common/web/WcsController.java
@@ -49,6 +49,8 @@
    private RowLastnoService rowLastnoService;
    @Autowired
    private WorkService workService;
    @Autowired
    private BasCrnpService basCrnpService;
    @PostMapping("/pakin/loc/v1")
    @ResponseBody
@@ -111,7 +113,7 @@
        BasDevp sourceStaNo = basDevpService.checkSiteStatus(12, true);
        // 检索库位
        StartupDto dto = commonService.getLocNo(rowLastnoService.selectNextWhsType(), 10, 12, null,null,null, locTypeDto);
        StartupDto dto = commonService.getLocNo(rowLastnoService.selectNextWhsType(), 10, 12, null, null, locTypeDto, 0);
        Date now = new Date();
        // 生成工作档
        WrkMast wrkMast = new WrkMast();
@@ -147,7 +149,9 @@
        }
        EmptyPlateOutParam emptyPlateOutParam = new EmptyPlateOutParam();
        emptyPlateOutParam.setOutSite(12);
        emptyPlateOutParam.setLocNos(new ArrayList<String>(){{add(locMast.getLocNo()+"");}});
        emptyPlateOutParam.setLocNos(new ArrayList<String>() {{
            add(locMast.getLocNo() + "");
        }});
        WrkMast wrkMast = workService.emptyPlateOut(emptyPlateOutParam);
        return R.ok(!Cools.isEmpty(wrkMast)? R.ok("自动空托出库成功,工作号:" + wrkMast.getWrkNo()) : R.error("生成自动空托出库失败"));
    }
@@ -162,7 +166,20 @@
        // 检索库位
        List<String> matnrs = waitPakins.stream().map(WaitPakin::getMatnr).distinct().collect(Collectors.toList());
        List<String> batchs = waitPakins.stream().map(WaitPakin::getBatch).distinct().collect(Collectors.toList());
        StartupDto dto = commonService.getLocNo(1, 1, devpNo, matnrs.get(0),batchs.get(0),null, locTypeDto);
        int rowCount = rowLastnoService.selectCount(null);
        Integer integer = 1;
        for (int i = 1; i <= rowCount; i++) {
            integer = rowLastnoService.selectNextWhsType();
            BasCrnp crn_no = basCrnpService.selectOne(new EntityWrapper<BasCrnp>()
                    .eq("crn_no", integer));
            List<LocMast> locMastList = locMastService.selectList(new EntityWrapper<LocMast>()
                    .eq("crn_no", integer)
                    .eq("loc_sts", "O"));
            if (locMastList.size() >= 5 && crn_no.getInEnable().equals("Y") && crn_no.getCrnSts() == 1) {
                break;
            }
        }
        StartupDto dto = commonService.getLocNo(integer, 1, devpNo, matnrs, batchs, locTypeDto, 0);
        int workNo = dto.getWorkNo();
        Date now = new Date();
        // 生成工作档
@@ -236,8 +253,21 @@
    public StartupDto emptyPlateIn(Integer devpNo, LocTypeDto locTypeDto, String barcode) {
        // 源站点状态检测
        BasDevp sourceStaNo = basDevpService.checkSiteStatus(devpNo, true);
        // 检索库位
        StartupDto dto = commonService.getLocNo(1, 10, devpNo, null,null,null, locTypeDto);
        int rowCount = rowLastnoService.selectCount(null);
        Integer integer = 1;
        for (int i = 1; i <= rowCount; i++) {
            integer = rowLastnoService.selectNextWhsType();
            BasCrnp crn_no = basCrnpService.selectOne(new EntityWrapper<BasCrnp>()
                    .eq("crn_no", integer));
            List<LocMast> locMastList = locMastService.selectList(new EntityWrapper<LocMast>()
                    .eq("crn_no", integer)
                    .eq("loc_sts", "O"));
            if (locMastList.size() >= 5 && crn_no.getInEnable().equals("Y") && crn_no.getCrnSts() == 1) {
                break;
            }
        }
        StartupDto dto = commonService.getLocNo(integer, 1, devpNo, null, null, locTypeDto, 0);
        int workNo = dto.getWorkNo();
        // 生成工作档
        WrkMast wrkMast = new WrkMast();