自动化立体仓库 - WMS系统
zwl
2025-07-30 35553f1448463dcf4664de7afa3da70054e52fab
src/main/java/com/zy/common/web/WcsController.java
@@ -49,7 +49,7 @@
    @PostMapping("/pakin/loc/v1")
    @ResponseBody
    public R getLocNo(@RequestBody SearchLocParam param) {
    public synchronized R getLocNo(@RequestBody SearchLocParam param) {
        log.info("收到WCS入库接口请求====>>入参:{}", param);
        if (Cools.isEmpty(param.getIoType())) {
            return R.error("入出库类型不能为空");
@@ -123,11 +123,14 @@
            throw new CoolException("物料类别获取失败");
        }
        StartupDto dto;
        StartupDto dto=new  StartupDto();
        if (devpNo == 304) {
            dto = commonService.getLocNoBy304(str5.get(0));
        }if(devpNo == 311){
            dto = commonService.getLocNoBy311(str5.get(0));
        } else {
            dto = commonService.getLocNo(1, 1, devpNo, false, matNos, locTypeDto,0);
//            dto = commonService.getLocNo(1, 1, devpNo, false, matNos, locTypeDto,0);
            dto = commonService.getLocNoNew(1, devpNo,barcode);
        }
        int workNo = dto.getWorkNo();
@@ -158,6 +161,7 @@
        }
        // 生成工作档明细
        List<MatCodeCountDto> matDtos = new ArrayList<>();
        StartupDto finalDto = dto;
        pltBarcodes.forEach(elem -> {
            matDtos.add(new MatCodeCountDto(elem.getBillNo(), elem.getSeqNo(), elem.getMatNo(), elem.getSupplier(), elem.getQty(),elem.getSource(),elem.getVendor(),elem.getMemo()));
@@ -165,7 +169,7 @@
            Wrapper<PltBarcode> wrapper = new EntityWrapper<PltBarcode>().eq("barcode", elem.getBarcode())
                    .eq("bill_no", elem.getBillNo()).eq("seq_no", elem.getSeqNo()).eq("mat_no", elem.getMatNo());
            PltBarcode pltBarcode = pltBarcodeService.selectOne(wrapper);
            pltBarcode.setLocNo(dto.getLocNo());
            pltBarcode.setLocNo(finalDto.getLocNo());
            pltBarcode.setIoStatus(1);//入库中
            pltBarcodeService.update(pltBarcode,wrapper);
        });
@@ -197,11 +201,11 @@
        BasDevp sourceStaNo = basDevpService.checkSiteStatus(devpNo, true);
        // 检索库位
        StartupDto dto;
        if (devpNo >= 300) {
//        if (devpNo >= 300) {
            dto = commonService.emptyIngetLocNo(devpNo);
        } else {
            dto = commonService.getLocNo(1, 10, devpNo, true, null, locTypeDto, 0);
        }
//        } else {
//            dto = commonService.getLocNo(1, 10, devpNo, true, null, locTypeDto, 0);
//        }
        int workNo = dto.getWorkNo();
        // 生成工作档
        WrkMast wrkMast = new WrkMast();