From 87976c4c8b4435ad896d94deae7d6640c1993ffa Mon Sep 17 00:00:00 2001
From: yujian <yujian@123.com>
Date: 星期一, 05 八月 2019 14:43:05 +0800
Subject: [PATCH] 过滤动态热销商品,3次重新加入数据

---
 fanli/src/main/java/com/yeshi/fanli/service/impl/dynamic/DynamicInfoServiceImpl.java |   71 ++++++++++++++++++++---------------
 1 files changed, 40 insertions(+), 31 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/service/impl/dynamic/DynamicInfoServiceImpl.java b/fanli/src/main/java/com/yeshi/fanli/service/impl/dynamic/DynamicInfoServiceImpl.java
index c876f43..59636a0 100644
--- a/fanli/src/main/java/com/yeshi/fanli/service/impl/dynamic/DynamicInfoServiceImpl.java
+++ b/fanli/src/main/java/com/yeshi/fanli/service/impl/dynamic/DynamicInfoServiceImpl.java
@@ -414,7 +414,12 @@
 	public void insertTimeHotSale() {
 		Long classId = 1L;
 		try {
-			saveHotSale(classId, 0L);
+			for (int i = 0; i < 3; i++) {
+				boolean addSuccess = saveHotSale(classId, 0L);
+				if (addSuccess) {
+					break;
+				}
+			}
 		} catch (Exception e) {
 			try {
 				LogHelper.errorDetailInfo(e);
@@ -427,7 +432,12 @@
 		List<GoodsClass> list = DaTaoKeUtil.goodsClasses;
 		for (GoodsClass goodsClass : list) {
 			try {
-				saveHotSale(classId, goodsClass.getId());
+				for (int i = 0; i < 3; i++) {
+					boolean addSuccess = saveHotSale(classId, goodsClass.getId());
+					if (addSuccess) {
+						break;
+					}
+				}
 			} catch (Exception e) {
 				try {
 					LogHelper.errorDetailInfo(e);
@@ -445,7 +455,8 @@
 	 * @param subclassId
 	 * @throws TaobaoGoodsDownException
 	 */
-	public void saveHotSale(Long classId, Long subclassId) throws TaobaoGoodsDownException {
+	public boolean saveHotSale(Long classId, Long subclassId) throws TaobaoGoodsDownException {
+		boolean addSuccess = false;
 		List<Long> listId = null;
 		List<DynamicInfo> listInfo = dynamicInfoDao.query(classId, subclassId);
 		if (listInfo != null && listInfo.size() > 0) {
@@ -459,6 +470,9 @@
 		}
 		// 澶ф窐瀹㈡暟鎹�
 		DaTaoKeDetail daTaoKe = daTaoKeGoodsService.getGoodsNotInList(subclassId, listId, 1).get(0);
+		if (daTaoKe == null) {
+			return addSuccess;
+		}
 
 		try {
 			daTaoKe = DaTaoKeUtil.filterDaTaoKe(TaoKeApiUtil.searchGoodsDetail(daTaoKe.getGoodsId()), daTaoKe);
@@ -466,41 +480,27 @@
 
 		}
 		
-		// 杩囨护涓虹┖鐨�
-		if (daTaoKe == null) {
-			return;
-		}
-
-		List<TaoBaoGoodsBrief> listGoods = new ArrayList<TaoBaoGoodsBrief>();
 		TaoBaoGoodsBrief taoBaoGoodsBrief = TaoBaoUtil.convert(daTaoKe);
-		listGoods.add(taoBaoGoodsBrief);
-
 		BigDecimal proportion = hongBaoManageService.getFanLiRate();
-		TaoBaoGoodsBriefExtra taoBaoGoodsBriefExtra = TaoBaoUtil.getTaoBaoGoodsBriefExtra(taoBaoGoodsBrief,
+		TaoBaoGoodsBriefExtra goodsExtra = TaoBaoUtil.getTaoBaoGoodsBriefExtra(taoBaoGoodsBrief,
 				proportion.toString(), null);
 		
-		// 鍟嗗搧鍥剧墖
-		GoodsPicture goodsPicture = getGoodsPicture(daTaoKe);
-		if (!taoBaoGoodsBriefExtra.isCoupon()) {
-			taoBaoGoodsBriefExtra.setState(1);
-			goodsPicture.setGoodState(1);
+		if (!goodsExtra.isCoupon() || (goodsExtra.getState() != null && goodsExtra.getState() == 1)) {
+			return addSuccess;  // 宸蹭笅鏋� 銆佹棤鍒� 涓嶅姞鍏�
 		}
-		taoBaoGoodsBriefExtra.setTkRate(taoBaoGoodsBrief.getTkRate());
-		taoBaoGoodsBriefExtra.setUpdatetime(new Date());
-		taoBaoGoodsBriefExtra.setCouponInfo(null);
-		goodsPicture.setGoods(taoBaoGoodsBriefExtra);
 		
+		List<TaoBaoGoodsBrief> listGoods = new ArrayList<TaoBaoGoodsBrief>();
+		listGoods.add(taoBaoGoodsBrief);
+		
+		goodsExtra.setTkRate(taoBaoGoodsBrief.getTkRate());
+		goodsExtra.setUpdatetime(new Date());
+		goodsExtra.setCouponInfo(null);
+		
+		GoodsPicture goodsPicture = getGoodsPicture(daTaoKe);
+		goodsPicture.setGoods(goodsExtra);
 		// 鍟嗗搧鍒楄〃
 		List<GoodsPicture> listPicture = new ArrayList<GoodsPicture>();
 		listPicture.add(goodsPicture);
-		
-		// 鍒嗕韩濂栭噾
-		BigDecimal shareMoney = taoBaoGoodsBriefService.getShareGoodsUserHongBao(taoBaoGoodsBrief);
-		ClientTextStyleVO shareMoneyDesc = new ClientTextStyleVO();
-		shareMoneyDesc.setColor("#FFFFFF");
-		shareMoneyDesc.setBottomColor("#E8AE48");
-		shareMoneyDesc.setContent("棰勪及鍒嗕韩濂栭噾锛毬�" + shareMoney);
-		
 
 		// 鑾峰彇鍟嗗搧鍒楄〃鍥剧墖
 		TaoBaoGoodsBrief taoBaoGoodsBrief2 = TaoKeApiUtil.getSimpleGoodsInfo(daTaoKe.getGoodsId());
@@ -526,8 +526,14 @@
 				listPicture.add(picture);
 			}
 		}
-
-		taoBaoGoodsBriefExtra.setImgList(imgList);
+		goodsExtra.setImgList(imgList);
+		
+		// 鍒嗕韩濂栭噾
+		BigDecimal shareMoney = taoBaoGoodsBriefService.getShareGoodsUserHongBao(taoBaoGoodsBrief);
+		ClientTextStyleVO shareMoneyDesc = new ClientTextStyleVO();
+		shareMoneyDesc.setColor("#FFFFFF");
+		shareMoneyDesc.setBottomColor("#E8AE48");
+		shareMoneyDesc.setContent("棰勪及鍒嗕韩濂栭噾锛毬�" + shareMoney);
 
 		// 缁勭粐鍔ㄦ�佷俊鎭�
 		DynamicInfo dynamicInfo = getDynamicInfo(daTaoKe, classId, subclassId);
@@ -550,6 +556,9 @@
 
 		// 淇濆瓨淇℃伅
 		dynamicInfoDao.insert(dynamicInfo);
+		
+		addSuccess = true;
+		return addSuccess;
 	}
 
 	/**

--
Gitblit v1.8.0