|  |  |  | @ -9,6 +9,7 @@ import com.glxp.api.admin.constant.Constant; | 
			
		
	
		
			
				
					|  |  |  |  | import com.glxp.api.admin.constant.ConstantStatus; | 
			
		
	
		
			
				
					|  |  |  |  | import com.glxp.api.admin.constant.ConstantType; | 
			
		
	
		
			
				
					|  |  |  |  | import com.glxp.api.admin.dao.basic.BasicThirdSysBusApiDao; | 
			
		
	
		
			
				
					|  |  |  |  | import com.glxp.api.admin.dao.basic.BussinessLocalTypeDao; | 
			
		
	
		
			
				
					|  |  |  |  | import com.glxp.api.admin.dao.basic.BussinessTypeDao; | 
			
		
	
		
			
				
					|  |  |  |  | import com.glxp.api.admin.dao.business.StockOrderDao; | 
			
		
	
		
			
				
					|  |  |  |  | import com.glxp.api.admin.dao.business.StockOrderDetailDao; | 
			
		
	
	
		
			
				
					|  |  |  | @ -16,10 +17,7 @@ import com.glxp.api.admin.dao.inout.CodesDao; | 
			
		
	
		
			
				
					|  |  |  |  | import com.glxp.api.admin.dao.inout.CodesTempDao; | 
			
		
	
		
			
				
					|  |  |  |  | import com.glxp.api.admin.dao.inout.OrderDao; | 
			
		
	
		
			
				
					|  |  |  |  | import com.glxp.api.admin.dao.inout.OrderDetailDao; | 
			
		
	
		
			
				
					|  |  |  |  | import com.glxp.api.admin.dao.inventory.InvProductDao; | 
			
		
	
		
			
				
					|  |  |  |  | import com.glxp.api.admin.dao.inventory.InvProductDetailDao; | 
			
		
	
		
			
				
					|  |  |  |  | import com.glxp.api.admin.dao.inventory.InvSubWarehouseDao; | 
			
		
	
		
			
				
					|  |  |  |  | import com.glxp.api.admin.dao.inventory.InvWarehouseDao; | 
			
		
	
		
			
				
					|  |  |  |  | import com.glxp.api.admin.dao.inventory.*; | 
			
		
	
		
			
				
					|  |  |  |  | import com.glxp.api.admin.entity.basic.BasicThirdSysBusApiEntity; | 
			
		
	
		
			
				
					|  |  |  |  | import com.glxp.api.admin.entity.basic.BussinessTypeEntity; | 
			
		
	
		
			
				
					|  |  |  |  | import com.glxp.api.admin.entity.business.StockOrderEntity; | 
			
		
	
	
		
			
				
					|  |  |  | @ -65,15 +63,15 @@ public class OrderServiceImpl implements OrderService { | 
			
		
	
		
			
				
					|  |  |  |  |     @Resource | 
			
		
	
		
			
				
					|  |  |  |  |     InvWarehouseDao invWarehouseDao; | 
			
		
	
		
			
				
					|  |  |  |  |     @Resource | 
			
		
	
		
			
				
					|  |  |  |  |     InvSubWarehouseService invSubWarehouseService; | 
			
		
	
		
			
				
					|  |  |  |  |     private InvSubWarehouseService invSubWarehouseService; | 
			
		
	
		
			
				
					|  |  |  |  |     @Resource | 
			
		
	
		
			
				
					|  |  |  |  |     CodesDao codesDao; | 
			
		
	
		
			
				
					|  |  |  |  |     private CodesDao codesDao; | 
			
		
	
		
			
				
					|  |  |  |  |     @Resource | 
			
		
	
		
			
				
					|  |  |  |  |     CodesTempDao codesTempDao; | 
			
		
	
		
			
				
					|  |  |  |  |     private CodesTempDao codesTempDao; | 
			
		
	
		
			
				
					|  |  |  |  |     @Resource | 
			
		
	
		
			
				
					|  |  |  |  |     SystemParamConfigService systemParamConfigService; | 
			
		
	
		
			
				
					|  |  |  |  |     private SystemParamConfigService systemParamConfigService; | 
			
		
	
		
			
				
					|  |  |  |  |     @Resource | 
			
		
	
		
			
				
					|  |  |  |  |     GennerOrderUtils gennerOrderUtils; | 
			
		
	
		
			
				
					|  |  |  |  |     private GennerOrderUtils gennerOrderUtils; | 
			
		
	
		
			
				
					|  |  |  |  |     @Resource | 
			
		
	
		
			
				
					|  |  |  |  |     private BasicThirdSysBusApiDao basicThirdSysBusApiDao; | 
			
		
	
		
			
				
					|  |  |  |  |     @Resource | 
			
		
	
	
		
			
				
					|  |  |  | @ -86,6 +84,12 @@ public class OrderServiceImpl implements OrderService { | 
			
		
	
		
			
				
					|  |  |  |  |     private OrderDetailDao orderDetailDao; | 
			
		
	
		
			
				
					|  |  |  |  |     @Resource | 
			
		
	
		
			
				
					|  |  |  |  |     private InvSubWarehouseDao invSubWarehouseDao; | 
			
		
	
		
			
				
					|  |  |  |  |     @Resource | 
			
		
	
		
			
				
					|  |  |  |  |     private BussinessLocalTypeDao bussinessLocalTypeDao; | 
			
		
	
		
			
				
					|  |  |  |  |     @Resource | 
			
		
	
		
			
				
					|  |  |  |  |     private InvPreInProductDao invPreInProductDao; | 
			
		
	
		
			
				
					|  |  |  |  |     @Resource | 
			
		
	
		
			
				
					|  |  |  |  |     private InvPreInProductDetailDao invPreInProductDetailDao; | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |     @Override | 
			
		
	
		
			
				
					|  |  |  |  |     public List<OrderEntity> listOrders(OrderQueryRequest orderQueryRequest) { | 
			
		
	
	
		
			
				
					|  |  |  | @ -275,7 +279,7 @@ public class OrderServiceImpl implements OrderService { | 
			
		
	
		
			
				
					|  |  |  |  |             supplementOrder.setInvWarehouseCode(order.getFromSubInvCode()); | 
			
		
	
		
			
				
					|  |  |  |  |         } else { | 
			
		
	
		
			
				
					|  |  |  |  |             List<InvSubWarehouseEntity> invSubWarehouseEntities = invSubWarehouseService.findByParentId(supplementOrder.getLocStorageCode()); | 
			
		
	
		
			
				
					|  |  |  |  |             if (CollUtil.isNotEmpty(invSubWarehouseEntities) && invSubWarehouseEntities.size() > 0)  { | 
			
		
	
		
			
				
					|  |  |  |  |             if (CollUtil.isNotEmpty(invSubWarehouseEntities) && invSubWarehouseEntities.size() > 0) { | 
			
		
	
		
			
				
					|  |  |  |  |                 supplementOrder.setInvWarehouseCode(invSubWarehouseEntities.get(0).getCode()); | 
			
		
	
		
			
				
					|  |  |  |  |             } | 
			
		
	
		
			
				
					|  |  |  |  |         } | 
			
		
	
	
		
			
				
					|  |  |  | @ -487,59 +491,115 @@ public class OrderServiceImpl implements OrderService { | 
			
		
	
		
			
				
					|  |  |  |  |             orderFilterRequest.setId(id); | 
			
		
	
		
			
				
					|  |  |  |  |             OrderEntity orderEntity = orderDao.findOne(orderFilterRequest); | 
			
		
	
		
			
				
					|  |  |  |  |             if (orderEntity.getStatus().equals(ConstantStatus.ORDER_STATUS_SUCCESS)) { | 
			
		
	
		
			
				
					|  |  |  |  |                 //查询库存详情
 | 
			
		
	
		
			
				
					|  |  |  |  |                 FilterInvProductDetailRequest filterInvProductDetailRequest = new FilterInvProductDetailRequest(); | 
			
		
	
		
			
				
					|  |  |  |  |                 filterInvProductDetailRequest.setOrderIdFk(id); | 
			
		
	
		
			
				
					|  |  |  |  |                 List<InvProductDetailEntity> invProductDetailEntities = invProductDetailDao.filterInvProductDetail(filterInvProductDetailRequest); | 
			
		
	
		
			
				
					|  |  |  |  |                 Map<String, List<InvProductDetailEntity>> invProductDetailMap = invProductDetailEntities.stream().collect(Collectors.groupingBy(InvProductDetailEntity::getProductIdFk)); | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |                 List<InvProductEntity> invProductList = new ArrayList<>(invProductDetailMap.keySet().size()); | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |                 for (InvProductDetailEntity invProductDetailEntity : invProductDetailEntities) { | 
			
		
	
		
			
				
					|  |  |  |  |                     FilterInvProductRequest filterInvProductRequest = new FilterInvProductRequest(); | 
			
		
	
		
			
				
					|  |  |  |  |                     filterInvProductRequest.setRelIdFk(invProductDetailEntity.getProductIdFk()); | 
			
		
	
		
			
				
					|  |  |  |  |                     filterInvProductRequest.setSupId(invProductDetailEntity.getSupId()); | 
			
		
	
		
			
				
					|  |  |  |  |                     filterInvProductRequest.setInvStorageCode(invProductDetailEntity.getInvStorageCode()); | 
			
		
	
		
			
				
					|  |  |  |  |                     filterInvProductRequest.setInvWarehouseCode(invProductDetailEntity.getInvWarehouseCode()); | 
			
		
	
		
			
				
					|  |  |  |  |                     if (StrUtil.isBlank(invProductDetailEntity.getBatchNo())) { | 
			
		
	
		
			
				
					|  |  |  |  |                         filterInvProductRequest.setBatchNo("empty"); | 
			
		
	
		
			
				
					|  |  |  |  |                     } else { | 
			
		
	
		
			
				
					|  |  |  |  |                         filterInvProductRequest.setBatchNo(invProductDetailEntity.getBatchNo()); | 
			
		
	
		
			
				
					|  |  |  |  |                     } | 
			
		
	
		
			
				
					|  |  |  |  |                     List<InvProductEntity> invProductEntities = invProductDao.filterInvProduct(filterInvProductRequest); | 
			
		
	
		
			
				
					|  |  |  |  |                     InvProductEntity productEntity = invProductEntities.get(0); | 
			
		
	
		
			
				
					|  |  |  |  |                     if (ConstantType.TYPE_PUT.equals(invProductDetailEntity.getMainAction())) { | 
			
		
	
		
			
				
					|  |  |  |  |                         //入库,在原有库存基础上减库存
 | 
			
		
	
		
			
				
					|  |  |  |  |                         int count = productEntity.getInCount() - invProductDetailEntity.getCount(); | 
			
		
	
		
			
				
					|  |  |  |  |                         productEntity.setInCount(count); | 
			
		
	
		
			
				
					|  |  |  |  |                     } else if (ConstantType.TYPE_OUT.equals(invProductDetailEntity.getMainAction())) { | 
			
		
	
		
			
				
					|  |  |  |  |                         //出库,在原有库存上增加库存
 | 
			
		
	
		
			
				
					|  |  |  |  |                         int count = productEntity.getOutCount() - invProductDetailEntity.getCount(); | 
			
		
	
		
			
				
					|  |  |  |  |                         productEntity.setOutCount(count); | 
			
		
	
		
			
				
					|  |  |  |  |                     } | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |                     invProductList.add(productEntity); | 
			
		
	
		
			
				
					|  |  |  |  |                 } | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |                 //删除单据相关数据,更新库存
 | 
			
		
	
		
			
				
					|  |  |  |  |                 try { | 
			
		
	
		
			
				
					|  |  |  |  |                     //删除库存详情
 | 
			
		
	
		
			
				
					|  |  |  |  |                     invProductDetailDao.deleteByOrderId(id); | 
			
		
	
		
			
				
					|  |  |  |  |                     //更新库存
 | 
			
		
	
		
			
				
					|  |  |  |  |                     for (InvProductEntity invProductEntity : invProductList) { | 
			
		
	
		
			
				
					|  |  |  |  |                         //查询库存码详情,如果库存码详情为空,则删除此库存
 | 
			
		
	
		
			
				
					|  |  |  |  |                         FilterInvProductDetailRequest detailParams = new FilterInvProductDetailRequest(); | 
			
		
	
		
			
				
					|  |  |  |  |                         detailParams.setBatchNo(invProductEntity.getBatchNo()); | 
			
		
	
		
			
				
					|  |  |  |  |                         detailParams.setInvCodes(Collections.singletonList(invProductEntity.getInvStorageCode())); | 
			
		
	
		
			
				
					|  |  |  |  |                         detailParams.setProductIdFk(invProductEntity.getRelIdFk()); | 
			
		
	
		
			
				
					|  |  |  |  |                         int count = invProductDetailDao.statCount(detailParams); | 
			
		
	
		
			
				
					|  |  |  |  |                         if (count == 0) { | 
			
		
	
		
			
				
					|  |  |  |  |                             //如果库存码详情为空,则删除此库存
 | 
			
		
	
		
			
				
					|  |  |  |  |                             invProductDao.deleteById(String.valueOf(invProductEntity.getId())); | 
			
		
	
		
			
				
					|  |  |  |  |                         } else { | 
			
		
	
		
			
				
					|  |  |  |  |                             invProductDao.updateInvProduct(invProductEntity); | 
			
		
	
		
			
				
					|  |  |  |  |                     //判断单据是否是预验收单据,如果是预验收单据,则删除预验收库库存
 | 
			
		
	
		
			
				
					|  |  |  |  |                     if (isPreInOrder(orderEntity)) { | 
			
		
	
		
			
				
					|  |  |  |  |                         //查询预验收库详情
 | 
			
		
	
		
			
				
					|  |  |  |  |                         FilterInvProductDetailRequest filterInvProductDetailRequest = new FilterInvProductDetailRequest(); | 
			
		
	
		
			
				
					|  |  |  |  |                         filterInvProductDetailRequest.setOrderIdFk(id); | 
			
		
	
		
			
				
					|  |  |  |  |                         List<InvProductDetailEntity> invProductDetailEntities = invPreInProductDetailDao.filterInvProductDetail(filterInvProductDetailRequest); | 
			
		
	
		
			
				
					|  |  |  |  |                         Map<String, List<InvProductDetailEntity>> invPreInProductDetailMap = invProductDetailEntities.stream().collect(Collectors.groupingBy(InvProductDetailEntity::getProductIdFk)); | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |                         List<InvProductEntity> invPreInProductList = new ArrayList<>(invPreInProductDetailMap.keySet().size()); | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |                         for (InvProductDetailEntity invProductDetailEntity : invProductDetailEntities) { | 
			
		
	
		
			
				
					|  |  |  |  |                             FilterInvProductRequest filterInvProductRequest = new FilterInvProductRequest(); | 
			
		
	
		
			
				
					|  |  |  |  |                             filterInvProductRequest.setRelIdFk(invProductDetailEntity.getProductIdFk()); | 
			
		
	
		
			
				
					|  |  |  |  |                             filterInvProductRequest.setSupId(invProductDetailEntity.getSupId()); | 
			
		
	
		
			
				
					|  |  |  |  |                             filterInvProductRequest.setInvStorageCode(invProductDetailEntity.getInvStorageCode()); | 
			
		
	
		
			
				
					|  |  |  |  |                             filterInvProductRequest.setInvWarehouseCode(invProductDetailEntity.getInvWarehouseCode()); | 
			
		
	
		
			
				
					|  |  |  |  |                             if (StrUtil.isBlank(invProductDetailEntity.getBatchNo())) { | 
			
		
	
		
			
				
					|  |  |  |  |                                 filterInvProductRequest.setBatchNo("empty"); | 
			
		
	
		
			
				
					|  |  |  |  |                             } else { | 
			
		
	
		
			
				
					|  |  |  |  |                                 filterInvProductRequest.setBatchNo(invProductDetailEntity.getBatchNo()); | 
			
		
	
		
			
				
					|  |  |  |  |                             } | 
			
		
	
		
			
				
					|  |  |  |  |                             List<InvProductEntity> invPerInProductEntities = invPreInProductDao.filterInvProduct(filterInvProductRequest); | 
			
		
	
		
			
				
					|  |  |  |  |                             InvProductEntity invProductEntity = invPerInProductEntities.get(0); | 
			
		
	
		
			
				
					|  |  |  |  |                             if (ConstantType.TYPE_PUT.equals(invProductDetailEntity.getMainAction())) { | 
			
		
	
		
			
				
					|  |  |  |  |                                 //入库,在原有库存基础上减库存
 | 
			
		
	
		
			
				
					|  |  |  |  |                                 int count = invProductEntity.getInCount() - invProductDetailEntity.getCount(); | 
			
		
	
		
			
				
					|  |  |  |  |                                 invProductEntity.setInCount(count); | 
			
		
	
		
			
				
					|  |  |  |  |                             } else if (ConstantType.TYPE_OUT.equals(invProductDetailEntity.getMainAction())) { | 
			
		
	
		
			
				
					|  |  |  |  |                                 //出库,在原有库存上增加库存
 | 
			
		
	
		
			
				
					|  |  |  |  |                                 int count = invProductEntity.getOutCount() - invProductDetailEntity.getCount(); | 
			
		
	
		
			
				
					|  |  |  |  |                                 invProductEntity.setOutCount(count); | 
			
		
	
		
			
				
					|  |  |  |  |                             } | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |                             invPreInProductList.add(invProductEntity); | 
			
		
	
		
			
				
					|  |  |  |  |                         } | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |                         //删除库存详情
 | 
			
		
	
		
			
				
					|  |  |  |  |                         invPreInProductDetailDao.deleteByOrderId(id); | 
			
		
	
		
			
				
					|  |  |  |  |                         //更新库存
 | 
			
		
	
		
			
				
					|  |  |  |  |                         for (InvProductEntity invProductEntity : invPreInProductList) { | 
			
		
	
		
			
				
					|  |  |  |  |                             //查询库存码详情,如果库存码详情为空,则删除此库存
 | 
			
		
	
		
			
				
					|  |  |  |  |                             FilterInvProductDetailRequest detailParams = new FilterInvProductDetailRequest(); | 
			
		
	
		
			
				
					|  |  |  |  |                             detailParams.setBatchNo(invProductEntity.getBatchNo()); | 
			
		
	
		
			
				
					|  |  |  |  |                             detailParams.setInvCodes(Collections.singletonList(invProductEntity.getInvStorageCode())); | 
			
		
	
		
			
				
					|  |  |  |  |                             detailParams.setProductIdFk(invProductEntity.getRelIdFk()); | 
			
		
	
		
			
				
					|  |  |  |  |                             int count = invPreInProductDetailDao.statCount(detailParams); | 
			
		
	
		
			
				
					|  |  |  |  |                             if (count == 0) { | 
			
		
	
		
			
				
					|  |  |  |  |                                 //如果库存码详情为空,则删除此库存
 | 
			
		
	
		
			
				
					|  |  |  |  |                                 invPreInProductDao.deleteById(String.valueOf(invProductEntity.getId())); | 
			
		
	
		
			
				
					|  |  |  |  |                             } else { | 
			
		
	
		
			
				
					|  |  |  |  |                                 invProductDao.updateInvProduct(invProductEntity); | 
			
		
	
		
			
				
					|  |  |  |  |                             } | 
			
		
	
		
			
				
					|  |  |  |  |                         } | 
			
		
	
		
			
				
					|  |  |  |  |                     } else { | 
			
		
	
		
			
				
					|  |  |  |  |                         //查询库存详情
 | 
			
		
	
		
			
				
					|  |  |  |  |                         FilterInvProductDetailRequest filterInvProductDetailRequest = new FilterInvProductDetailRequest(); | 
			
		
	
		
			
				
					|  |  |  |  |                         filterInvProductDetailRequest.setOrderIdFk(id); | 
			
		
	
		
			
				
					|  |  |  |  |                         List<InvProductDetailEntity> invProductDetailEntities = invProductDetailDao.filterInvProductDetail(filterInvProductDetailRequest); | 
			
		
	
		
			
				
					|  |  |  |  |                         Map<String, List<InvProductDetailEntity>> invProductDetailMap = invProductDetailEntities.stream().collect(Collectors.groupingBy(InvProductDetailEntity::getProductIdFk)); | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |                         List<InvProductEntity> invProductList = new ArrayList<>(invProductDetailMap.keySet().size()); | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |                         for (InvProductDetailEntity invProductDetailEntity : invProductDetailEntities) { | 
			
		
	
		
			
				
					|  |  |  |  |                             FilterInvProductRequest filterInvProductRequest = new FilterInvProductRequest(); | 
			
		
	
		
			
				
					|  |  |  |  |                             filterInvProductRequest.setRelIdFk(invProductDetailEntity.getProductIdFk()); | 
			
		
	
		
			
				
					|  |  |  |  |                             filterInvProductRequest.setSupId(invProductDetailEntity.getSupId()); | 
			
		
	
		
			
				
					|  |  |  |  |                             filterInvProductRequest.setInvStorageCode(invProductDetailEntity.getInvStorageCode()); | 
			
		
	
		
			
				
					|  |  |  |  |                             filterInvProductRequest.setInvWarehouseCode(invProductDetailEntity.getInvWarehouseCode()); | 
			
		
	
		
			
				
					|  |  |  |  |                             if (StrUtil.isBlank(invProductDetailEntity.getBatchNo())) { | 
			
		
	
		
			
				
					|  |  |  |  |                                 filterInvProductRequest.setBatchNo("empty"); | 
			
		
	
		
			
				
					|  |  |  |  |                             } else { | 
			
		
	
		
			
				
					|  |  |  |  |                                 filterInvProductRequest.setBatchNo(invProductDetailEntity.getBatchNo()); | 
			
		
	
		
			
				
					|  |  |  |  |                             } | 
			
		
	
		
			
				
					|  |  |  |  |                             List<InvProductEntity> invProductEntities = invProductDao.filterInvProduct(filterInvProductRequest); | 
			
		
	
		
			
				
					|  |  |  |  |                             InvProductEntity productEntity = invProductEntities.get(0); | 
			
		
	
		
			
				
					|  |  |  |  |                             if (ConstantType.TYPE_PUT.equals(invProductDetailEntity.getMainAction())) { | 
			
		
	
		
			
				
					|  |  |  |  |                                 //入库,在原有库存基础上减库存
 | 
			
		
	
		
			
				
					|  |  |  |  |                                 int count = productEntity.getInCount() - invProductDetailEntity.getCount(); | 
			
		
	
		
			
				
					|  |  |  |  |                                 productEntity.setInCount(count); | 
			
		
	
		
			
				
					|  |  |  |  |                             } else if (ConstantType.TYPE_OUT.equals(invProductDetailEntity.getMainAction())) { | 
			
		
	
		
			
				
					|  |  |  |  |                                 //出库,在原有库存上增加库存
 | 
			
		
	
		
			
				
					|  |  |  |  |                                 int count = productEntity.getOutCount() - invProductDetailEntity.getCount(); | 
			
		
	
		
			
				
					|  |  |  |  |                                 productEntity.setOutCount(count); | 
			
		
	
		
			
				
					|  |  |  |  |                             } | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |                             invProductList.add(productEntity); | 
			
		
	
		
			
				
					|  |  |  |  |                         } | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |                         //删除库存详情
 | 
			
		
	
		
			
				
					|  |  |  |  |                         invProductDetailDao.deleteByOrderId(id); | 
			
		
	
		
			
				
					|  |  |  |  |                         //更新库存
 | 
			
		
	
		
			
				
					|  |  |  |  |                         for (InvProductEntity invProductEntity : invProductList) { | 
			
		
	
		
			
				
					|  |  |  |  |                             //查询库存码详情,如果库存码详情为空,则删除此库存
 | 
			
		
	
		
			
				
					|  |  |  |  |                             FilterInvProductDetailRequest detailParams = new FilterInvProductDetailRequest(); | 
			
		
	
		
			
				
					|  |  |  |  |                             detailParams.setBatchNo(invProductEntity.getBatchNo()); | 
			
		
	
		
			
				
					|  |  |  |  |                             detailParams.setInvCodes(Collections.singletonList(invProductEntity.getInvStorageCode())); | 
			
		
	
		
			
				
					|  |  |  |  |                             detailParams.setProductIdFk(invProductEntity.getRelIdFk()); | 
			
		
	
		
			
				
					|  |  |  |  |                             int count = invProductDetailDao.statCount(detailParams); | 
			
		
	
		
			
				
					|  |  |  |  |                             if (count == 0) { | 
			
		
	
		
			
				
					|  |  |  |  |                                 //如果库存码详情为空,则删除此库存
 | 
			
		
	
		
			
				
					|  |  |  |  |                                 invProductDao.deleteById(String.valueOf(invProductEntity.getId())); | 
			
		
	
		
			
				
					|  |  |  |  |                             } else { | 
			
		
	
		
			
				
					|  |  |  |  |                                 invProductDao.updateInvProduct(invProductEntity); | 
			
		
	
		
			
				
					|  |  |  |  |                             } | 
			
		
	
		
			
				
					|  |  |  |  |                         } | 
			
		
	
		
			
				
					|  |  |  |  |                     } | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |                     //删除码详情
 | 
			
		
	
		
			
				
					|  |  |  |  |                     codesDao.deleteByOrderId(id); | 
			
		
	
		
			
				
					|  |  |  |  |                     //查询业务单据
 | 
			
		
	
	
		
			
				
					|  |  |  | @ -590,6 +650,16 @@ public class OrderServiceImpl implements OrderService { | 
			
		
	
		
			
				
					|  |  |  |  |         } | 
			
		
	
		
			
				
					|  |  |  |  |     } | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |     /** | 
			
		
	
		
			
				
					|  |  |  |  |      * 判断单据是否是预验收单据 | 
			
		
	
		
			
				
					|  |  |  |  |      * | 
			
		
	
		
			
				
					|  |  |  |  |      * @param orderEntity | 
			
		
	
		
			
				
					|  |  |  |  |      * @return | 
			
		
	
		
			
				
					|  |  |  |  |      */ | 
			
		
	
		
			
				
					|  |  |  |  |     private boolean isPreInOrder(OrderEntity orderEntity) { | 
			
		
	
		
			
				
					|  |  |  |  |         return bussinessLocalTypeDao.selectPreInByOrderType(orderEntity.getAction()); | 
			
		
	
		
			
				
					|  |  |  |  |     } | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |     @Override | 
			
		
	
		
			
				
					|  |  |  |  |     public boolean updateOrderInfo(String actDate, String auditTime, List<String> orderIds) { | 
			
		
	
		
			
				
					|  |  |  |  |         return orderDao.updateOrderTime(actDate, auditTime, DateUtil.getDateTime(), orderIds); | 
			
		
	
	
		
			
				
					|  |  |  | 
 |