自动化立体仓库 - WMS系统
yxFwq
2024-08-22 4c83ee8845d2e8701d09903ea7ab14b9eeff4831
#logo
1个文件已修改
54 ■■■■■ 已修改文件
src/main/java/com/zy/common/web/WcsController.java 54 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/common/web/WcsController.java
@@ -169,6 +169,60 @@
        }
        return R.ok();
    }
    @PostMapping("/pakin/yx/loc/v464")
    @ResponseBody
    public synchronized R getLocNo464(@RequestBody SearchLocParam param) {
        if (Cools.isEmpty(param.getBarcode(), param.getSourceStaNo())) {
            throw new CoolException(BaseRes.PARAM);
        }
        // 判断是否有相同条码的数据
        if (waitPakinService.selectCount(new EntityWrapper<WaitPakin>().
                eq("zpallet", param.getBarcode()).eq("io_status", "N")) > 0) {
            throw new CoolException(param.getBarcode() + "数据正在进行入库");
        }
        if(param.getBarcode().length()!=8){
            throw new CoolException("条码长度不是8位===>>" + param.getBarcode());
        }
        int countLoc = locDetlService.selectCount(new EntityWrapper<LocDetl>().eq("zpallet",param.getBarcode()));
        int countWrk = wrkDetlService.selectCount(new EntityWrapper<WrkDetl>().eq("zpallet",param.getBarcode()));
        int countwait = waitPakinService.selectCount(new EntityWrapper<WaitPakin>().eq("zpallet",param.getBarcode()));
        if (countLoc > 0 || countWrk > 0 || countwait > 0) {
            throw new CoolException("组托档/工作档/库存条码数据已存在===>>" + param.getBarcode());
        }
        BasDevp basDevp = basDevpService.selectById(param.getSourceStaNo());
        if (Cools.isEmpty(basDevp)){
            throw new CoolException("参数:站点号 devNo不存在");
        }
        if (Cools.isEmpty(basDevp.getGrossWt())){
            throw new CoolException("参数:站点号 "+param.getSourceStaNo()+"重量信息不存在");
        }
        Date now = new Date();
        // 生成入库通知档
        Mat mat = matService.selectByMatnr("111111");
        if (Cools.isEmpty(mat)) {
            throw new CoolException("111111商品档案不存在");
        }
        WaitPakin waitPakin = new WaitPakin();
        waitPakin.sync(mat);
        waitPakin.setBatch("");
//        waitPakin.setWeight(basDevp.getGrossWt());
        waitPakin.setWeight(450.0);
        waitPakin.setZpallet(param.getBarcode());   // 托盘码
        waitPakin.setIoStatus("N");     // 入出状态
        waitPakin.setAnfme(1.0);  // 数量
        waitPakin.setStatus("Y");    // 状态
        waitPakin.setAppeUser(8888L);
        waitPakin.setAppeTime(now);
        waitPakin.setModiUser(8888L);
        waitPakin.setModiTime(now);
        if (!waitPakinService.insert(waitPakin)) {
            throw new CoolException("保存入库通知档失败");
        }
        return R.ok();
    }
    /*
    * 双工位单伸堆垛机,初始不分配库位