自动化立体仓库 - WMS系统
Junjie
2023-06-03 f5cf872f989485bc52151c6a36661cb594f3b9b9
2023.5.31兼容代码增加被强制出库的库位插入一条入库通知档
1个文件已修改
26 ■■■■■ 已修改文件
src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java 26 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
@@ -74,6 +74,8 @@
    @Autowired
    private WcsController wcsController;
    @Autowired
    private WaitPakinService waitPakinService;
    @Autowired
    private RowLastnoService rowLastnoService;
    @Autowired
    private SlaveProperties slaveProperties;
@@ -159,7 +161,6 @@
    @Override
    @Transactional
    public void startupFullTakeStore(StockOutParam param, Long userId) {
        ArrayList<String> locNos = new ArrayList<>();
        List<StockOutParam.LocDetl> locDetls = new ArrayList<>();
        //出库时,如果当前库位组有相同的物料,则先出外侧物料
@@ -526,6 +527,29 @@
                        if (!wrkDetlService.insert(wrkDetl)) {
                            throw new CoolException("保存工作档明细失败");
                        }
                        Mat mat = matService.selectByMatnr(locDetl.getMatnr());
                        if (Cools.isEmpty(mat)) {
                            throw new CoolException(locDetl.getMatnr() + "商品档案不存在");
                        }
                        WaitPakin waitPakin = new WaitPakin();
                        waitPakin.sync(mat);
                        waitPakin.setBatch("");
                        waitPakin.setZpallet(locMast.getBarcode());   // 托盘码
                        waitPakin.setIoStatus("N");     // 入出状态
                        waitPakin.setAnfme(locDetl.getAnfme());  // 数量
                        waitPakin.setStatus("Y");    // 状态
                        waitPakin.setAppeUser(userId);
                        waitPakin.setAppeTime(now);
                        waitPakin.setModiUser(userId);
                        waitPakin.setModiTime(now);
                        waitPakin.setMemo(locDetl.getMemo());
                        waitPakin.setFrozen(0); // 是否冻结
                        waitPakin.setManu(locDetl.getManu());
                        waitPakin.setMatType(mat.getMatType());//物料类型
                        if (!waitPakinService.insert(waitPakin)) {
                            throw new CoolException("保存入库通知档失败");
                        }
                    }
                    // 修改库位状态:   F.在库 ====>>> R.出库预约
                    if (locMast.getLocSts().equals("F")) {