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 e12d8bb59..ce68c067f 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 @@ -983,7 +983,7 @@ public class IoOrderServiceImpl implements IoOrderService { if (ioOrderEntity != null && invWarehouseEntity != null) { //判断是哪个类型的库存 if (invWarehouseEntity.getAdvanceType() == ConstantStatus.ACTION_TYPE_NORMAL) { - setInvProductEntityList(ioOrderDetailResultEntityList, ioOrderEntity.getMainAction(), status); + setInvProductEntityList(ioOrderDetailResultEntityList, ioOrderEntity); } } } @@ -1091,11 +1091,12 @@ public class IoOrderServiceImpl implements IoOrderService { return orderDao.getfilterOrderList(filterOrderRequest); } - public Boolean setInvProductEntityList(List ioOrderDetailResultEntityList, String mainAction, Integer status) { + public Boolean setInvProductEntityList(List ioOrderDetailResultEntityList,IoOrderEntity ioOrderEntity) { for (IoOrderDetailResultEntity ioOrderDetailResultEntity : ioOrderDetailResultEntityList) { //查询该产品是不是存在 - InvProductEntity invProductEntity = invProductService.selectByUnique(ioOrderDetailResultEntity.getBindRlFk(), ioOrderDetailResultEntity.getBatchNo(), ioOrderDetailResultEntity.getSupId()); + InvProductEntity invProductEntity = invProductService.selectByUnique(ioOrderDetailResultEntity.getBindRlFk(), ioOrderDetailResultEntity.getBatchNo(), + ioOrderDetailResultEntity.getSupId(),ioOrderEntity.getDeptCode(),ioOrderEntity.getInvCode()); if (invProductEntity == null) { //没有该产品就填充数据 invProductEntity = new InvProductEntity(); @@ -1107,7 +1108,8 @@ public class IoOrderServiceImpl implements IoOrderService { invProductEntity.setInCount(0); invProductEntity.setOutCount(0); invProductEntity.setSupId(ioOrderDetailResultEntity.getSupId()); - invProductEntity.setDeptCode(ioOrderDetailResultEntity.getDeptCode()); + invProductEntity.setDeptCode(ioOrderEntity.getDeptCode()); + invProductEntity.setInvCode(ioOrderEntity.getInvCode()); invProductEntity.setCreateTime(new Date()); invProductEntity.setUpdateTime(new Date()); invProductEntity.setNowStock(0); //现存量 @@ -1117,20 +1119,20 @@ public class IoOrderServiceImpl implements IoOrderService { invProductEntity.setOnWayCount(0);//在途库存 invProductEntity.setAvailableStock(0);//可用库存 } - if (mainAction.equals(ConstantType.TYPE_PUT)) { + if (ioOrderEntity.getMainAction().equals(ConstantType.TYPE_PUT)) { //出库 - if (status == ConstantStatus.ORDER_STATUS_CHECK_SUCCESS) { + if (ioOrderEntity.getStatus() == ConstantStatus.ORDER_STATUS_CHECK_SUCCESS) { invProductEntity.setPlanOutCount((invProductEntity.getPlanOutCount() != null ? invProductEntity.getPlanOutCount() : 0) + ioOrderDetailResultEntity.getReCount());//预计出库量 invProductEntity.setFrozenCount((invProductEntity.getFrozenCount() != null ? invProductEntity.getFrozenCount() : 0) + ioOrderDetailResultEntity.getReCount());//预计出库量 - } else if (status == ConstantStatus.ORDER_STATUS_AUDITED) { + } else if (ioOrderEntity.getStatus() == ConstantStatus.ORDER_STATUS_AUDITED) { invProductEntity.setPlanOutCount((invProductEntity.getPlanOutCount() != null ? invProductEntity.getPlanOutCount() : 0) - ioOrderDetailResultEntity.getReCount());//预计出库量 invProductEntity.setFrozenCount((invProductEntity.getFrozenCount() != null ? invProductEntity.getFrozenCount() : 0) - ioOrderDetailResultEntity.getReCount());//预计出库量 } - } else if (mainAction.equals(ConstantType.TYPE_OUT)) { + } else if (ioOrderEntity.getMainAction().equals(ConstantType.TYPE_OUT)) { //入库 - if (status == ConstantStatus.ORDER_STATUS_CHECK_SUCCESS) { + if (ioOrderEntity.getStatus() == ConstantStatus.ORDER_STATUS_CHECK_SUCCESS) { invProductEntity.setPlanInCount((invProductEntity.getInCount() != null ? invProductEntity.getInCount() : 0) + ioOrderDetailResultEntity.getReCount());//预计出库量 - } else if (status == ConstantStatus.ORDER_STATUS_AUDITED) { + } else if (ioOrderEntity.getStatus() == ConstantStatus.ORDER_STATUS_AUDITED) { invProductEntity.setPlanInCount((invProductEntity.getInCount() != null ? invProductEntity.getInCount() : 0) - ioOrderDetailResultEntity.getReCount());//预计出库量 } } diff --git a/src/main/java/com/glxp/api/service/inv/impl/InvProductServiceImpl.java b/src/main/java/com/glxp/api/service/inv/impl/InvProductServiceImpl.java index 111ef36a7..33a20bab9 100644 --- a/src/main/java/com/glxp/api/service/inv/impl/InvProductServiceImpl.java +++ b/src/main/java/com/glxp/api/service/inv/impl/InvProductServiceImpl.java @@ -50,7 +50,7 @@ public class InvProductServiceImpl implements InvProductService { @Override public InvProductEntity selectByUnique(Long relId, String batchNo, String supId) { return invProductDao.selectOne(new QueryWrapper().eq("relIdFk", relId).eq(StrUtil.isNotEmpty(batchNo), "batchNo", batchNo) - .isNull(StrUtil.isEmpty(batchNo), "batchNo").eq("supId", supId)); + .isNull(StrUtil.isEmpty(batchNo), "batchNo").eq("supId", supId).last("limit 1")); } @Override