| | |
| | | |
| | | import com.baomidou.mybatisplus.mapper.EntityWrapper; |
| | | import com.baomidou.mybatisplus.mapper.Wrapper; |
| | | import com.core.common.Cools; |
| | | import com.zy.asrs.entity.*; |
| | | import com.zy.asrs.service.*; |
| | | import com.zy.asrs.task.AbstractHandler; |
| | |
| | | } |
| | | // 遍历工作明细,更新库存明细和入库通知档 |
| | | for (WrkDetl wrkDetl : wrkDetls) { |
| | | LocDetl locDetl = locDetlService.selectOne(new EntityWrapper<LocDetl>().eq("loc_no", wrkMast.getLocNo()).eq("mat_no", wrkDetl.getMatNo())); |
| | | LocDetl locDetl = locDetlService.selectOne(new EntityWrapper<LocDetl>().eq("loc_no", wrkMast.getLocNo()).eq("mat_no", wrkDetl.getMatNo()).eq("supplier", wrkDetl.getSupplier())); |
| | | if (null != locDetl) { |
| | | boolean res = locDetlService.updateAnfme(wrkDetl.getQty()+locDetl.getQty(), wrkMast.getLocNo(), wrkDetl.getMatNo()); |
| | | if (!res) { |
| | | exceptionHandle("全板入库 ===>> 更新库存明细失败;[workNo={0}],[locNo={1}]", wrkMast.getWrkNo(), wrkMast.getLocNo()); |
| | | } |
| | | } else { |
| | | WrkDetl wrk_no = wrkDetlService.selectOne(new EntityWrapper<WrkDetl>() |
| | | .eq("wrk_no", wrkMast.getWrkNo())); |
| | | |
| | | locDetl = new LocDetl(); |
| | | |
| | | locDetl.setLocNo(wrkMast.getLocNo()); // 库位号 |
| | | locDetl.setMemo(wrkMast.getMemo()); |
| | | VersionUtils.setLocDetl(locDetl, wrkDetl); // 版本控制 |
| | | locDetl.setModiTime(now); |
| | | locDetl.setAppeTime(now); |
| | | if (!Cools.isEmpty(wrk_no)){ |
| | | locDetl.setMemo(wrk_no.getMemo()); |
| | | locDetl.setSupplier(wrk_no.getSupplier()); |
| | | } |
| | | if (!locDetlService.insert(locDetl)) { |
| | | exceptionHandle("全板入库 ===>> 添加库存明细失败;[workNo={0}],[locNo={1}]", wrkMast.getWrkNo(), wrkMast.getLocNo()); |
| | | } |
| | | } |
| | | |
| | | //更新组托数据状态为入库完成 IoStatus ====>> 2 |
| | | Wrapper<PltBarcode> wrapper = new EntityWrapper<PltBarcode>().eq("barcode", wrkDetl.getZpallet()) |
| | | .eq("bill_no", wrkDetl.getBillNo()).eq("seq_no", wrkDetl.getSeqNo()).eq("mat_no", wrkDetl.getMatNo()); |
| | | PltBarcode pltBarcode = pltBarcodeService.selectOne(wrapper); |
| | | if(null != pltBarcode) { |
| | | pltBarcode.setIoStatus(2);//入库完成 |
| | | boolean res = pltBarcodeService.update(pltBarcode, wrapper); |
| | | if(!res){ |
| | | //更新组托数据状态为入库完成 IoStatus ====>> 2 |
| | | Wrapper<PltBarcode> wrapper = new EntityWrapper<PltBarcode>().eq("barcode", wrkDetl.getZpallet()) |
| | | .eq("bill_no", wrkDetl.getBillNo()).eq("seq_no", wrkDetl.getSeqNo()).eq("mat_no", wrkDetl.getMatNo()); |
| | | PltBarcode pltBarcode = pltBarcodeService.selectOne(wrapper); |
| | | if(null != pltBarcode) { |
| | | pltBarcode.setIoStatus(2);//入库完成 |
| | | boolean res = pltBarcodeService.update(pltBarcode, wrapper); |
| | | if(!res){ |
| | | // exceptionHandle("全板入库 ===>> 更新组托数据失败;[workNo={0}],[billNo={1}],[seqNo={2}]", wrkMast.getWrkNo(),wrkDetl.getBillNo(),wrkDetl.getSeqNo()); |
| | | } |
| | | } |
| | | } |
| | | |
| | | // 更新入库通知档 ioStatus ====>> 2 |
| | | WaitMatin waitMatin = waitMatinService.selectOne(new EntityWrapper<WaitMatin>().eq("bill_no",wrkDetl.getBillNo()).eq("seq_no",wrkDetl.getSeqNo())); |
| | | // 更新入库通知档 ioStatus ====>> 2 |
| | | WaitMatin waitMatin = waitMatinService.selectOne(new EntityWrapper<WaitMatin>().eq("bill_no",wrkDetl.getBillNo()).eq("seq_no",wrkDetl.getSeqNo())); |
| | | if(null != waitMatin && waitMatin.getInQty() >= waitMatin.getQty()){ |
| | | waitMatin.setIoStatus(2); |
| | | waitMatin.setModiTime(now); |