自动化立体仓库 - WMS系统
LSH
2022-11-01 4eaadac02cade735b3b211cce8924a4879037ea6
#盘点功能更新
4个文件已修改
78 ■■■■■ 已修改文件
src/main/java/com/zy/asrs/controller/MobileController.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/entity/param/MobileAdjustParam.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/service/MobileService.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java 68 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/controller/MobileController.java
@@ -345,5 +345,12 @@
        return R.ok("盘点成功");
    }
    @RequestMapping("/adjustNew/auth")
    @ManagerAuth(memo = "盘点")
    public R adjustNew(@RequestBody MobileAdjustParam combParam){
        mobileService.adjustNew(combParam, getUserId());
        return R.ok("盘点成功");
    }
}
src/main/java/com/zy/asrs/entity/param/MobileAdjustParam.java
@@ -15,6 +15,8 @@
    private Integer wrkNo;
    private String barcode;
    private List<WrkDetl> wrkDetls;
}
src/main/java/com/zy/asrs/service/MobileService.java
@@ -14,6 +14,7 @@
     * 盘点
     */
    void adjust(MobileAdjustParam param, Long userId);
    void adjustNew(MobileAdjustParam param, Long userId);
    void packComb(CombParam param, Long userId);
src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
@@ -63,6 +63,10 @@
    private ApiLogService apiLogService;
    @Autowired
    private WorkLogHandler workLogHandler;
    @Autowired
    private AdjDetlService adjDetlService;
    @Autowired
    private CheckRecordService checkRecordService;
    @Override
    @Transactional
@@ -180,6 +184,70 @@
        }
    }
    @Override
    @Transactional
    public void adjustNew(MobileAdjustParam param, Long userId) {
        WrkMast wrkMast = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("barcode", param.getBarcode()));
        if (Cools.isEmpty(wrkMast)){
            throw new CoolException("托盘码:"+param.getBarcode()+" 无有效工作档");
        }else if (wrkMast.getIoType()!=107){
            throw new CoolException("托盘码:"+param.getBarcode()+" 所属工作档非盘点任务");
        }/*else if (barcode.getWrkSts()!=17){
            throw new CoolException("托盘码:"+param.getBarcode()+" 所属工作档工作状态不是出库完成");
        }*/else { }
        List<WrkDetl> wrkDetls = param.getWrkDetls();
        String recordRecordLog="托盘码"+param.getBarcode()+"盘点记录:";
        AdjDetl adjDetl=new AdjDetl();
        adjDetl.setAppeTime(new Date());
        adjDetl.setAppeUser(userId);
        adjDetl.setModiTime(new Date());
        adjDetl.setModiUser(userId);
        adjDetl.setLocNo(wrkMast.getLocNo());
        CheckRecord checkRecord=new CheckRecord();
        checkRecord.setLocNo(wrkMast.getLocNo());
        checkRecord.setBarcode(param.getBarcode());
        checkRecord.setCreateTime(new Date());
        for (WrkDetl wrkDetl:wrkDetls){
            WrkDetl wrkDetlOld = wrkDetlService.selectOne(new EntityWrapper<WrkDetl>()
                    .eq("wrk_no", wrkMast.getWrkNo())
                    .eq("matnr",wrkDetl.getMatnr())
                    .eq("batch",wrkDetl.getBatch())
            );
            adjDetl.setMatnr(wrkDetl.getMatnr());
            adjDetl.setBatch(wrkDetl.getBatch());
            adjDetl.setAdjQty(wrkDetl.getAnfme());
            checkRecord.setMatnr(wrkDetl.getMatnr());
            checkRecord.setMaktx(wrkDetl.getMaktx());
            checkRecord.setSpecs(wrkDetl.getSpecs());
            checkRecord.setBatch(wrkDetl.getBatch());
            checkRecord.setConfirmQty(wrkDetl.getAnfme());
            if (Cools.isEmpty(wrkDetlOld)){
                wrkDetl.setWrkNo(wrkMast.getWrkNo());
                wrkDetlService.insert(wrkDetl);
                recordRecordLog=recordRecordLog+"\n"+"新增一条明细:"+"\t商品编号:"+wrkDetl.getMatnr()+"\t批号:"+wrkDetl.getBatch()+"\t数量:"+wrkDetl.getAnfme();
                adjDetl.setOriQty(0.0);
                adjDetlService.insert(adjDetl);
                checkRecord.setAnfme(0.0);
                checkRecordService.insert(checkRecord);
            }else if (wrkDetlOld.getAnfme()!=wrkDetl.getAnfme()){
                wrkDetlService.updateAnfme(wrkDetl.getAnfme(),wrkMast.getWrkNo(),wrkDetl.getMatnr(),wrkDetl.getBatch());
                recordRecordLog=recordRecordLog+"\n"+"更新一条明细:"+"\t商品编号:"+wrkDetl.getMatnr()+"\t批号:"+wrkDetl.getBatch()+"\t原数量:"+wrkDetlOld.getAnfme()+"\t新数量:"+wrkDetl.getAnfme();
                adjDetl.setOriQty(wrkDetlOld.getAnfme());
                adjDetlService.insert(adjDetl);
                checkRecord.setAnfme(wrkDetlOld.getAnfme());
                checkRecordService.insert(checkRecord);
            }else if (wrkDetlOld.getAnfme()==wrkDetl.getAnfme()){
                recordRecordLog=recordRecordLog+"\n"+"一条明细保持不变:"+"\t商品编号:"+wrkDetl.getMatnr()+"\t批号:"+wrkDetl.getBatch()+"\t数量:"+wrkDetlOld.getAnfme();
                continue;
            }else {
                throw new CoolException("托盘码:"+param.getBarcode()+" 未知异常,请联系管理员");
            }
        }
        log.info(recordRecordLog);
    }
    @Override
    @Transactional