From b795e890ab9d1c4636b58eac238721aa738baf58 Mon Sep 17 00:00:00 2001
From: yj <Administrator@192>
Date: 星期四, 05 三月 2020 10:15:40 +0800
Subject: [PATCH] 发圈bug

---
 fanli/src/main/java/com/yeshi/fanli/service/impl/dynamic/GoodsEvaluateServiceImpl.java |   71 ++++++++++++++++++++++++++---------
 1 files changed, 52 insertions(+), 19 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/service/impl/dynamic/GoodsEvaluateServiceImpl.java b/fanli/src/main/java/com/yeshi/fanli/service/impl/dynamic/GoodsEvaluateServiceImpl.java
index 921095f..195ec61 100644
--- a/fanli/src/main/java/com/yeshi/fanli/service/impl/dynamic/GoodsEvaluateServiceImpl.java
+++ b/fanli/src/main/java/com/yeshi/fanli/service/impl/dynamic/GoodsEvaluateServiceImpl.java
@@ -57,6 +57,7 @@
 import com.yeshi.fanli.util.StringUtil;
 import com.yeshi.fanli.util.cache.JDGoodsCacheUtil;
 import com.yeshi.fanli.util.cache.PinDuoDuoCacheUtil;
+import com.yeshi.fanli.util.cache.TaoBaoGoodsCacheUtil;
 import com.yeshi.fanli.util.factory.goods.GoodsDetailVOFactory;
 import com.yeshi.fanli.util.jd.JDApiUtil;
 import com.yeshi.fanli.util.jd.JDUtil;
@@ -83,6 +84,7 @@
 
 	@Resource(name = "taskExecutor")
 	private TaskExecutor executor;
+
 
 	@Resource
 	private JDGoodsCacheUtil jdGoodsCacheUtil;
@@ -123,11 +125,10 @@
 		}
 
 		if (record.getEndTime() != null) {
-			if (record.getEndTime().getTime() <= java.lang.System.currentTimeMillis())
-				throw new GoodsEvaluateException(1, "鎴鏃堕棿蹇呴』澶т簬褰撳墠鏃堕棿");
-
 			if (record.getStartTime() != null && record.getEndTime().getTime() <= record.getStartTime().getTime())
 				throw new GoodsEvaluateException(1, "鎴鏃堕棿蹇呴』澶т簬寮�濮嬫椂闂�");
+		} else {
+			record.setEndTime(DateUtil.plusDayDate(3,new Date()));
 		}
 
 		Integer dynamicType = record.getDynamicType();
@@ -135,8 +136,9 @@
 			record.setDynamicType(1);
 		}
 
-		if (record.getShareNum() == null)
-			record.setShareNum(0);
+		if (record.getShareNum() == null || record.getShareNum() <=0 ) {
+			record.setShareNum((int)(Math.random()*5000)+1000);
+		}
 
 		if (record.getWeight() == null)
 			record.setWeight(0.0);
@@ -334,9 +336,10 @@
 			throw new GoodsEvaluateException(1, "璇ュ晢鍝佷俊鎭笉瀛樺湪");
 		}
 
+		List<ImgInfo> tempList = new ArrayList<ImgInfo>();
 		int totalImg = 0;
 		if (listpic != null && listpic.size() > 0) {
-			for (int i = 0; i < listpic.size(); i++) {
+			for (int i = 0; i < listpic.size() && i < 9; i++) {
 				ImgInfo imgInfo0 = new ImgInfo();
 				imgInfo0.setId(UUID.randomUUID().toString().replace("-", ""));
 				imgInfo0.setW(1);
@@ -361,12 +364,17 @@
 					}
 					imgInfo0.setGoods(simpleGoods);
 					imgInfo0.setGoodsVO(goodsDetailVO);
+					listImg.add(imgInfo0);
 				} else {
 					imgInfo0.setType(ImgEnum.img);
+					tempList.add(imgInfo0);
 				}
-				listImg.add(imgInfo0);
 				totalImg++;
 			}
+		}
+		
+		if (tempList.size() > 0) {
+			listImg.addAll(tempList);
 		}
 
 		if (listOld != null && listOld.size() > 0) {
@@ -403,7 +411,7 @@
 		boolean addComment = true;
 		List<CommentInfo> commentsNew = new ArrayList<>();
 		List<CommentInfo> comments = resultObj.getComments();
-		if (comments != null) {
+		if (comments != null && comments.size() > 0) {
 			for (CommentInfo commentInfo: comments) {
 				if (commentInfo.getTypeEnum() == CommentInfoEnum.goodsCoupon) {
 					if (oldGoodsVO != null && oldGoodsVO.getGoodsId().longValue() == goodsId.longValue() 
@@ -416,7 +424,7 @@
 			}
 		} 
 		
-		
+		// 鏃犲埜涓嶈兘鑷姩 鐢熸垚璇勮
 		CouponInfoVO couponInfo1 = goodsDetailVO.getCouponInfo();
 		if (couponInfo1 == null) {
 			addComment = false;
@@ -484,6 +492,10 @@
 		if (goodsType == Constant.SOURCE_TYPE_TAOBAO) {
 			try {
 				TaoBaoGoodsBrief goodsBrief = redisManager.getTaoBaoGoodsBrief(goodsId);
+				String pictUrlWhite = goodsBrief.getPictUrlWhite();
+				if (!StringUtil.isNullOrEmpty(pictUrlWhite)) {
+					goodsBrief.setPictUrl(pictUrlWhite);
+				}
 				goodsDetail = GoodsDetailVOFactory.convertTaoBao(goodsBrief, params);
 			} catch (TaobaoGoodsDownException e) {
 				throw new GoodsEvaluateException(1, "鍟嗗搧宸蹭笅鏋�");
@@ -592,6 +604,7 @@
 					}
 
 					String picUrl = goodsDetailVO.getPicUrl();
+						
 					if (fileRequest != null) {
 						MultipartFile file = fileRequest.getFile("file" + i);
 						if (file != null) {
@@ -719,6 +732,15 @@
 
 		List<CommentInfo> comments = new ArrayList<>();
 		if (!StringUtil.isNullOrEmpty(content)) {
+			
+			if(!StringUtil.isNullOrEmpty(content)) {
+				try {
+					convertLinkManager.convertLinkFromText(content, 1L, true);
+				} catch (Exception e) {
+					throw new GoodsEvaluateException(1, "涓嶅寘鍚彲杞摼鐨勫彛浠や笌閾炬帴");
+				}
+			}
+			
 			CommentInfo commentInfo = new CommentInfo();
 			if (goodsCoupon != null) {
 				commentInfo.setId(goodsCoupon.getId());
@@ -776,7 +798,7 @@
 			try {
 				convertLinkManager.convertLinkFromText(content, 1L, true);
 			} catch (Exception e) {
-				throw new GoodsEvaluateException(1, "杞摼澶辫触");
+				throw new GoodsEvaluateException(1, "涓嶅寘鍚彲杞摼鐨勫彛浠や笌閾炬帴");
 			}
 		}
 		
@@ -1320,12 +1342,15 @@
 		Date now = new Date();
 		SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
 		for (GoodsEvaluate goodsEvaluate: list) {
+			
+			int comment = 0;
 			List<CommentInfo> comments = goodsEvaluate.getComments();
-			if (comments != null) {
+			if (comments != null && comments.size() > 0) {
 				EvaluateEnum typeEnum = goodsEvaluate.getType();
 				List<CommentInfo> commentNew = new ArrayList<>();
 				
 				for (CommentInfo commentInfo: comments) {
+					comment ++;
 					String typeCoupon = commentInfo.getType();
 					if (StringUtil.isNullOrEmpty(typeCoupon)) {
 						if (commentInfo.getTypeEnum() == null) {
@@ -1348,6 +1373,7 @@
 						}
 					}
 					
+					
 					String coupon = commentInfo.getCoupon();
 					String endTime = commentInfo.getEndTime();
 					if (!StringUtil.isNullOrEmpty(coupon) && !StringUtil.isNullOrEmpty(endTime)) {
@@ -1362,13 +1388,9 @@
 								
 								List<ClientTextStyleVO> tagList = commentInfo.getTagList();
 								tagList.add(styleVO);
-								
 								commentInfo.setTagList(tagList);
 								
-								if (typeEnum != null && typeEnum == EvaluateEnum.single) {
-									//鏂板
-									commentNew.add(commentInfo);
-								}
+								commentNew.add(commentInfo);
 							}
 						}
 					}
@@ -1376,10 +1398,11 @@
 				goodsEvaluate.setComments(commentNew);
 				
 				if (typeEnum != null && typeEnum == EvaluateEnum.single) {
-					 if (commentNew.size() == 0) {
+					if (comment > 0 && commentNew.size() == 0) { // 鎵�鏈夊埜璇勮涓嬫灦
 						 GoodsDetailVO goods = goodsEvaluate.getGoods();
 						 if (goods != null) {
 							 goods.setState(1); // 璇勮涓嶅瓨鍦� 涓嬫灦
+							 LogHelper.test("鑾峰彇鍒楄〃鍟嗗搧涓嬫灦1");
 						 }
 						 
 						 List<ImgInfo> imgList = goodsEvaluate.getImgList();
@@ -1388,6 +1411,7 @@
 								SimpleGoods simpleGoods = imgInfo.getGoods();
 								if (simpleGoods != null) {
 									simpleGoods.setState(1);
+									 LogHelper.test("鑾峰彇鍒楄〃鍟嗗搧涓嬫灦2");
 								}
 							}
 							
@@ -1450,7 +1474,7 @@
 								if (!StringUtil.isNullOrEmpty(endTime)) {
 									Date endDay = sdf.parse(endTime);
 									if (endDay.getTime() < now.getTime()) {
-										goodsEvaluate.setState(1); // 娲诲姩杩囨湡
+										goodsEvaluate.setState(0); // 娲诲姩杩囨湡
 									}
 								}
 							}
@@ -1518,7 +1542,16 @@
 	private GoodsDetailVO getGoodsNewInfo(Long goodsId, int goodsType, ConfigParamsDTO paramsDTO) {
 		GoodsDetailVO vo = null;
 		if (goodsType == Constant.SOURCE_TYPE_TAOBAO) {
-
+			TaoBaoGoodsBrief goods;
+			try {
+				goods = redisManager.getTaoBaoGoodsBrief(goodsId);
+				if (goods != null) {
+					vo = GoodsDetailVOFactory.convertTaoBao(goods, paramsDTO);
+				}
+			} catch (TaobaoGoodsDownException e) {
+				e.printStackTrace();
+			}
+			
 		} else if (goodsType == Constant.SOURCE_TYPE_JD) {
 			JDGoods goodsInfo = jdGoodsCacheUtil.getGoodsInfo(goodsId);
 			if (goodsInfo != null) {

--
Gitblit v1.8.0