diff --git a/src/main/java/com/glxp/api/service/inout/impl/IoOrderServiceImpl.java b/src/main/java/com/glxp/api/service/inout/impl/IoOrderServiceImpl.java index 8b4c0bb26..36ad1104b 100644 --- a/src/main/java/com/glxp/api/service/inout/impl/IoOrderServiceImpl.java +++ b/src/main/java/com/glxp/api/service/inout/impl/IoOrderServiceImpl.java @@ -318,21 +318,30 @@ public class IoOrderServiceImpl implements IoOrderService { //更新扫码单据详情 IoOrderDetailCodeEntity ioOrderDetailCodeEntity = ioOrderDetailCodeService.findByUnique(ioCodeEntity.getOrderId(), ioCodeEntity.getRelId(), ioCodeEntity.getBatchNo()); - ioOrderDetailCodeEntity.setReCount(ioOrderDetailCodeEntity.getReCount() - reCount); - ioOrderDetailCodeService.update(ioOrderDetailCodeEntity); + + if (ioOrderDetailCodeEntity != null) { + ioOrderDetailCodeEntity.setReCount(ioOrderDetailCodeEntity.getReCount() - reCount); + ioOrderDetailCodeService.update(ioOrderDetailCodeEntity); + } //更新结果详情 IoOrderDetailResultEntity ioOrderDetailResultEntity = ioOrderDetailResultService.findByUnique(ioCodeEntity.getOrderId(), ioCodeEntity.getRelId(), ioCodeEntity.getBatchNo()); - ioOrderDetailResultEntity.setReCount(ioOrderDetailResultEntity.getReCount() - reCount); - ioOrderDetailResultService.update(ioOrderDetailResultEntity); + if (ioOrderDetailResultEntity != null) { + ioOrderDetailResultEntity.setReCount(ioOrderDetailResultEntity.getReCount() - reCount); + ioOrderDetailResultService.update(ioOrderDetailResultEntity); + } + } else { int reCount = udiCalCountUtil.getActCount(ioCodeEntity.getNameCode()); //如果数量扣减之后为0,直接删除此条码 codeService.deleteById(ioCodeEntity.getId()); //更新扫码单据详情 IoOrderDetailCodeEntity ioOrderDetailCodeEntity = ioOrderDetailCodeService.findByUnique(ioCodeEntity.getOrderId(), ioCodeEntity.getRelId(), ioCodeEntity.getBatchNo()); - ioOrderDetailCodeEntity.setReCount(ioOrderDetailCodeEntity.getReCount() - reCount); - ioOrderDetailCodeService.update(ioOrderDetailCodeEntity); + if (ioOrderDetailCodeEntity != null) { + ioOrderDetailCodeEntity.setReCount(ioOrderDetailCodeEntity.getReCount() - reCount); + ioOrderDetailCodeService.update(ioOrderDetailCodeEntity); + } + //更新结果详情 IoOrderDetailResultEntity ioOrderDetailResultEntity = ioOrderDetailResultService.findByUnique(ioCodeEntity.getOrderId(), ioCodeEntity.getRelId(), ioCodeEntity.getBatchNo()); @@ -754,7 +763,7 @@ public class IoOrderServiceImpl implements IoOrderService { @Override public List filterOrderTrace(String billNo) { - IoOrderEntity order = orderDao.selectOne(new QueryWrapper().eq("billNo", billNo).in("status",5,7,10).in("dealStatus",2,3,4)); + IoOrderEntity order = orderDao.selectOne(new QueryWrapper().eq("billNo", billNo).in("status", 5, 7, 10).in("dealStatus", 2, 3, 4)); if (null == order) { return Collections.emptyList();