| 
					
				 | 
			
			
				@@ -1,9 +1,7 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 package com.yonge.cooleshow.portal.service.impl; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-import com.yonge.cooleshow.mbg.model.OmsCartItem; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-import com.yonge.cooleshow.mbg.model.PmsProductFullReduction; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-import com.yonge.cooleshow.mbg.model.PmsProductLadder; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-import com.yonge.cooleshow.mbg.model.PmsSkuStock; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import com.yonge.cooleshow.mbg.mapper.PmsSkuStockMapper; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import com.yonge.cooleshow.mbg.model.*; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.yonge.cooleshow.portal.dao.PortalProductDao; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.yonge.cooleshow.portal.domain.CartPromotionItem; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.yonge.cooleshow.portal.domain.PromotionProduct; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -16,6 +14,7 @@ import org.springframework.stereotype.Service; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import java.math.BigDecimal; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import java.math.RoundingMode; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import java.util.*; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import java.util.stream.Collectors; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  * Created by macro on 2018/8/27. 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -29,6 +28,9 @@ public class OmsPromotionServiceImpl implements OmsPromotionService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     @Autowired 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     private PmsPortalProductService portalProductService; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    @Autowired 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    private PmsSkuStockMapper skuStockMapper; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     @Override 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     public List<CartPromotionItem> calcCartPromotion(List<OmsCartItem> cartItemList) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         //1.先根据productId对CartItem进行分组,以spu为单位进行计算优惠 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -142,7 +144,14 @@ public class OmsPromotionServiceImpl implements OmsPromotionService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         List<PromotionProduct> promotionProductList = portalProductDao.getPromotionProductList(productIdList); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         for (PromotionProduct promotionProduct : promotionProductList) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            List<PmsSkuStock> pmsSkuStocks = portalProductService.updateProductSkuStock(promotionProduct.getSkuStockList()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            List<PmsSkuStock> skuStockList = promotionProduct.getSkuStockList(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            // id 集合 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            List<Long> skuIds = skuStockList.stream().map(PmsSkuStock::getId).collect(Collectors.toList()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            PmsSkuStockExample example = new PmsSkuStockExample(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            example.createCriteria().andIdIn(skuIds); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            List<PmsSkuStock> pmsSkuStocks = skuStockMapper.selectByExample(example); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            pmsSkuStocks = portalProductService.updateProductSkuStock(pmsSkuStocks); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             promotionProduct.setSkuStockList(pmsSkuStocks); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 |