自动化立体仓库 - WMS系统
#
whycq
2024-06-02 7c4565df1d655c703f6d8269040ecd9eaec8ea4a
src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java
@@ -233,13 +233,16 @@
    @Transactional
    public ReturnT<String> completedCarryWrk(AgvWrkMast agvWrkMast) {
        try{
            Date now = new Date();
            int wrkNo = agvWrkMast.getWrkNo();
            String orderNo = getOrderNoByWrkNo(wrkNo);
            //修改工作档状态为207.库存更新完成
            agvWrkMast.setWrkSts(207L);
            agvWrkMastService.updateById(agvWrkMast);
            //修改源库位状态为O
            if (agvWrkMast.getIoType() == 110) {
            agvLocMastService.updateLocStsByLocNo(agvWrkMast.getSourceLocNo(),"O","",null);
            }
            if(agvWrkMast.getIoType() == 101){
                //更新目标库位明细 101.出库 删除源库位库存明细
                agvLocDetlService.delete(new EntityWrapper<AgvLocDetl>().eq("loc_no",agvWrkMast.getSourceLocNo()));
@@ -252,7 +255,7 @@
                    wrkMast.setWrkSts(201L);
                    //入出库类型
                    wrkMast.setIoType(10);
                    wrkMast.setIoTime(new Date());
                    wrkMast.setIoTime(now);
                    //优先级
                    wrkMast.setIoPri(300.0);
                    //源站点
@@ -265,14 +268,22 @@
                    wrkMast.setWhsType(Integer.valueOf(agvWrkMast.getBarcode().substring(0, 2)));
                    wrkMast.setAppeUser(9527L);
                    wrkMast.setAppeTime(new Date());
                    wrkMast.setAppeTime(now);
                    wrkMast.setModiUser(9527L);
                    wrkMast.setModiTime(new Date());
                    wrkMast.setModiTime(now);
                    if (!agvWrkMastService.insertByIncrease(wrkMast)) {
                        throw new CoolException("保存工作档失败");
                    }
                    AgvLocMast agvLocMast = agvLocMastService.selectById(agvWrkMast.getSourceLocNo());
                    agvLocMast.setLocSts("S");
                    agvLocMast.setModiTime(now);
                    agvLocMastService.updateById(agvLocMast);
                    AgvBasDevp agvBasDevp = agvBasDevpService.selectById(agvWrkMast.getLocNo());
                    agvBasDevp.setLocSts("R");
                    agvBasDevp.setLocType2(Short.valueOf(agvWrkMast.getBarcode().substring(0, 2)));
                    agvBasDevpService.updateById(agvBasDevp);
                }catch (Exception e){
                    e.printStackTrace();
                    log.error(e.getMessage());