From 554de444b87aab5f93cb1593a8095612cf9479a7 Mon Sep 17 00:00:00 2001
From: yujian <yujian@163.com>
Date: 星期二, 09 六月 2020 17:34:30 +0800
Subject: [PATCH] 订单

---
 fanli/src/main/java/com/yeshi/fanli/service/impl/taobao/TaoBaoGoodsUpdateServiceImpl.java |  105 +++++++++++++++++++++++++++++++++-------------------
 1 files changed, 66 insertions(+), 39 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/service/impl/taobao/TaoBaoGoodsUpdateServiceImpl.java b/fanli/src/main/java/com/yeshi/fanli/service/impl/taobao/TaoBaoGoodsUpdateServiceImpl.java
index 73f70b7..1228075 100644
--- a/fanli/src/main/java/com/yeshi/fanli/service/impl/taobao/TaoBaoGoodsUpdateServiceImpl.java
+++ b/fanli/src/main/java/com/yeshi/fanli/service/impl/taobao/TaoBaoGoodsUpdateServiceImpl.java
@@ -9,6 +9,7 @@
 
 import javax.annotation.Resource;
 
+import org.springframework.context.annotation.Lazy;
 import org.springframework.scheduling.annotation.Async;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
@@ -23,10 +24,12 @@
 import com.yeshi.fanli.exception.taobao.TaobaoGoodsUpdateException;
 import com.yeshi.fanli.log.LogHelper;
 import com.yeshi.fanli.service.inter.activity.ActivityGoodsUpdateService;
+import com.yeshi.fanli.service.inter.dynamic.GoodsEvaluateService;
 import com.yeshi.fanli.service.inter.goods.CommonGoodsService;
 import com.yeshi.fanli.service.inter.lable.QualityFactoryGoodsUpdateService;
 import com.yeshi.fanli.service.inter.taobao.ShareHotGoodsService;
 import com.yeshi.fanli.service.inter.taobao.TLJBuyGoodsUpdateService;
+import com.yeshi.fanli.service.inter.taobao.TLJFreeBuyGoodsUpdateService;
 import com.yeshi.fanli.service.inter.taobao.TaoBaoGoodsUpdateService;
 import com.yeshi.fanli.util.CMQManager;
 import com.yeshi.fanli.util.StringUtil;
@@ -49,6 +52,7 @@
 	@Resource
 	private CommonGoodsService commonGoodsService;
 
+	@Lazy
 	@Resource
 	private ShareHotGoodsService shareHotGoodsService;
 
@@ -60,6 +64,12 @@
 
 	@Resource
 	private TaoBaoGoodsUpdateDao taoBaoGoodsUpdateDao;
+
+	@Resource
+	private TLJFreeBuyGoodsUpdateService tljFreeBuyGoodsUpdateService;
+	
+	@Resource
+	private GoodsEvaluateService goodsEvaluateService;
 
 	@Override
 	public void startUpdate() {
@@ -112,9 +122,11 @@
 
 		// 鍒嗕韩鐖嗘鏁版嵁鍒犻櫎
 		shareHotGoodsService.deleteByGoodsId(auctionId);
+		
+		goodsEvaluateService.offlineTaoBaoGoods(auctionId+"");
 	}
 
-	@Transactional
+	@Transactional(rollbackFor = Exception.class)
 	@Override
 	public void updateTaoBaoGoods(TaoBaoGoodsBrief goods) throws TaobaoGoodsUpdateException {
 		if (goods == null)
@@ -149,6 +161,11 @@
 		// 鏇存柊鑷喘绔嬪噺搴撳晢鍝�
 		tljBuyGoodsUpdateService.updateGoods(goods);
 
+		// 鏇存柊鏂颁汉鍏嶅崟搴撳晢鍝�
+		tljFreeBuyGoodsUpdateService.updateGoods(goods);
+
+		goodsEvaluateService.updateTaoBaoGoods(goods);
+		
 		// 鎬昏鍟嗗搧鏇存柊
 		updateImplTBGoods(goods);
 	}
@@ -285,12 +302,14 @@
 	 * @param goods
 	 */
 	public void updateImplTBGoods(TaoBaoGoodsBrief goods) {
-		if (goods == null)
+		if (goods == null || goods.getAuctionId() == null)
 			return;
 		if (!taoBaoGoodsCacheUtil.needUpdate(goods.getAuctionId())) {
 			return;
 		}
 		goods.setUpdatetime(new Date());
+		if (goods.getId() == null)
+			goods.setId(goods.getAuctionId());
 		taoBaoGoodsUpdateDao.save(goods);
 		taoBaoGoodsCacheUtil.addUpdateHistory(goods.getAuctionId());
 	}
@@ -330,52 +349,60 @@
 
 	@Override
 	public List<TaoBaoGoodsBrief> filterImportantTaoBaoGoods(List<TaoBaoGoodsBrief> goodsList) {
-		Map<Long, TaoBaoGoodsBrief> finalMap = new HashMap<>();
-		// 鍘熷鏁版嵁鍏ㄨ鐩�
-		for (TaoBaoGoodsBrief goods : goodsList) {
-			finalMap.put(goods.getAuctionId(), goods);
-		}
 
-		List<TaoBaoGoodsBrief> tempGoodsList = new ArrayList<>();
-		tempGoodsList.addAll(goodsList);
-		// 鍏堜粠redis閲岄潰鍙栬鐩�
-		for (int i = 0; i < tempGoodsList.size(); i++) {
-			TaoBaoGoodsBrief goods = taoBaoGoodsCacheUtil.getCommonTaoBaoGoodsInfo(tempGoodsList.get(i).getAuctionId());
-			if (goods != null) {
+		// 鍟嗗搧杩囨护涓嶅厑璁稿嚭閿�
+		try {
+			Map<Long, TaoBaoGoodsBrief> finalMap = new HashMap<>();
+			// 鍘熷鏁版嵁鍏ㄨ鐩�
+			for (TaoBaoGoodsBrief goods : goodsList) {
 				finalMap.put(goods.getAuctionId(), goods);
-				tempGoodsList.remove(i--);
 			}
-		}
 
-		// 鍐嶄粠mongodb涓彇瑕嗙洊
-		List<Long> auctionIds = new ArrayList<>();
-		for (TaoBaoGoodsBrief goods : tempGoodsList) {
-			auctionIds.add(goods.getAuctionId());
-		}
-		List<TaoBaoGoodsBrief> mList = taoBaoGoodsUpdateDao.listByAuctionIds(auctionIds);
-		if (mList != null)
-			for (TaoBaoGoodsBrief goods : mList) {
-				if (goods.getUpdatetime().getTime() > System.currentTimeMillis() - 1000 * 60 * 60 * 24L)// 鍦�1澶╁唴鏇存柊鐨勬暟鎹墠鍙備笌杩囨护
+			List<TaoBaoGoodsBrief> tempGoodsList = new ArrayList<>();
+			tempGoodsList.addAll(goodsList);
+			// 鍏堜粠redis閲岄潰鍙栬鐩�
+			for (int i = 0; i < tempGoodsList.size(); i++) {
+				TaoBaoGoodsBrief goods = taoBaoGoodsCacheUtil
+						.getCommonTaoBaoGoodsInfo(tempGoodsList.get(i).getAuctionId());
+				if (goods != null) {
 					finalMap.put(goods.getAuctionId(), goods);
+					tempGoodsList.remove(i--);
+				}
 			}
 
-		List<TaoBaoGoodsBrief> finalList = new ArrayList<>();
-		for (TaoBaoGoodsBrief goods : goodsList) {
-			TaoBaoGoodsBrief newGoods = finalMap.get(goods.getAuctionId());
-			// 杩囨护浠锋牸锛岃繑鍒╂瘮渚嬶紝鍒镐俊鎭�
-			goods.setZkPrice(newGoods.getZkPrice());
-			goods.setTkRate(newGoods.getTkRate());
-			goods.setCouponAmount(goods.getCouponAmount());
-			goods.setCouponActivityId(newGoods.getCouponActivityId());
-			goods.setCouponEffectiveEndTime(newGoods.getCouponEffectiveEndTime());
-			goods.setCouponEffectiveStartTime(newGoods.getCouponEffectiveStartTime());
-			goods.setCouponStartFee(newGoods.getCouponStartFee());
-			goods.setCouponTotalCount(newGoods.getCouponTotalCount());
-			goods.setCouponLeftCount(newGoods.getCouponLeftCount());
+			// 鍐嶄粠mongodb涓彇瑕嗙洊
+			List<Long> auctionIds = new ArrayList<>();
+			for (TaoBaoGoodsBrief goods : tempGoodsList) {
+				auctionIds.add(goods.getAuctionId());
+			}
+			List<TaoBaoGoodsBrief> mList = taoBaoGoodsUpdateDao.listByAuctionIds(auctionIds);
+			if (mList != null)
+				for (TaoBaoGoodsBrief goods : mList) {
+					if (goods.getUpdatetime().getTime() > System.currentTimeMillis() - 1000 * 60 * 60 * 24L)// 鍦�1澶╁唴鏇存柊鐨勬暟鎹墠鍙備笌杩囨护
+						finalMap.put(goods.getAuctionId(), goods);
+				}
 
-			finalList.add(goods);
+			List<TaoBaoGoodsBrief> finalList = new ArrayList<>();
+			for (TaoBaoGoodsBrief goods : goodsList) {
+				TaoBaoGoodsBrief newGoods = finalMap.get(goods.getAuctionId());
+				// 杩囨护浠锋牸锛岃繑鍒╂瘮渚嬶紝鍒镐俊鎭�
+				goods.setZkPrice(newGoods.getZkPrice());
+				goods.setTkRate(newGoods.getTkRate());
+				goods.setCouponAmount(newGoods.getCouponAmount());
+				goods.setCouponActivityId(newGoods.getCouponActivityId());
+				goods.setCouponEffectiveEndTime(newGoods.getCouponEffectiveEndTime());
+				goods.setCouponEffectiveStartTime(newGoods.getCouponEffectiveStartTime());
+				goods.setCouponStartFee(newGoods.getCouponStartFee());
+				goods.setCouponTotalCount(newGoods.getCouponTotalCount());
+				goods.setCouponLeftCount(newGoods.getCouponLeftCount());
+
+				finalList.add(goods);
+			}
+			return finalList;
+		} catch (Exception e) {
+			LogHelper.errorDetailInfo(e);
 		}
-		return finalList;
+		return goodsList;
 	}
 
 	@Override

--
Gitblit v1.8.0