From 0ec22dcf4fd9c4496e6f681e7fab89f56c6e4e8a Mon Sep 17 00:00:00 2001
From: yujian <yujian@163.com>
Date: 星期四, 02 四月 2020 14:45:20 +0800
Subject: [PATCH] vip 消息

---
 fanli/src/main/java/com/yeshi/fanli/service/impl/dynamic/GoodsEvaluateServiceImpl.java |  510 ++++++++++++++++++++++++++++----------------------------
 1 files changed, 255 insertions(+), 255 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 39a473c..45a984c 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
@@ -339,8 +339,7 @@
 				}
 			}
 		}
-		
-		
+
 		// 涓婁紶鏂囦欢鏇挎崲
 		if (fileRequest != null) {
 			for (int i = 0; i < 9; i++) {
@@ -476,8 +475,9 @@
 		}
 
 		/*
-		 * // 鏃犲埜涓嶈兘鑷姩 鐢熸垚璇勮 CouponInfoVO couponInfo1 = goodsDetailVO.getCouponInfo(); if
-		 * (couponInfo1 == null) { addComment = false; }
+		 * // 鏃犲埜涓嶈兘鑷姩 鐢熸垚璇勮 CouponInfoVO couponInfo1 =
+		 * goodsDetailVO.getCouponInfo(); if (couponInfo1 == null) { addComment
+		 * = false; }
 		 */
 
 		String commentText = "";
@@ -509,16 +509,19 @@
 				commentText = template.replace("[閾炬帴]", jumpLink);
 			}
 
-//			commentText = commentText.replace("[鍘熶环]", MoneyBigDecimalUtil.getWithNoZera(goodsDetailVO.getZkPrice())+"");
-//			if (!goodsDetailVO.isHasCoupon()) {
-//				commentText = commentText.replace("棰嗗埜鎶㈣喘", "鎶㈣喘");
-//				commentText = commentText.replace("銆愬埜鍚庝环銆慬鍒稿悗浠穄鍏�", "");
-//			} else {
-//				commentText = commentText.replace("[鍒稿悗浠穄",  MoneyBigDecimalUtil.getWithNoZera(goodsDetailVO.getCouponPrice())+"");
-//			}
-//
-//			commentText = commentText.replace("\r\n\r\n", "\r\n").replace("\r\n\r\n", "\r\n").replace("\r\n\r\n",
-//					"\r\n");
+			// commentText = commentText.replace("[鍘熶环]",
+			// MoneyBigDecimalUtil.getWithNoZera(goodsDetailVO.getZkPrice())+"");
+			// if (!goodsDetailVO.isHasCoupon()) {
+			// commentText = commentText.replace("棰嗗埜鎶㈣喘", "鎶㈣喘");
+			// commentText = commentText.replace("銆愬埜鍚庝环銆慬鍒稿悗浠穄鍏�", "");
+			// } else {
+			// commentText = commentText.replace("[鍒稿悗浠穄",
+			// MoneyBigDecimalUtil.getWithNoZera(goodsDetailVO.getCouponPrice())+"");
+			// }
+			//
+			// commentText = commentText.replace("\r\n\r\n",
+			// "\r\n").replace("\r\n\r\n", "\r\n").replace("\r\n\r\n",
+			// "\r\n");
 
 			CommentInfo commentInfo = new CommentInfo();
 			commentInfo.setId(UUID.randomUUID().toString().replace("-", ""));
@@ -952,17 +955,15 @@
 			throw new GoodsEvaluateException(1, "璇峰~鍐欏埜鎴鏃堕棿");
 		}
 
-		if (!StringUtil.isNullOrEmpty(content) && kind != 3) { // 娲诲姩涓嶉獙璇�
-			try {
-				convertLinkManager.convertLinkFromText(content, Constant.LINK_TOKEN_VERIFY_UID, true);
-			} catch (ConvertLinkExceptionException e) {
-				if (ConvertLinkExceptionException.CODE_NONE != e.getCode()) {
-					throw new GoodsEvaluateException(1, "鍖呭惈涓嶅彲杞摼鐨勫彛浠や笌閾炬帴");
-				}
-			} catch (Exception e) {
-				throw new GoodsEvaluateException(1, "鍖呭惈涓嶅彲杞摼鐨勫彛浠や笌閾炬帴");
-			}
-		}
+		 // 鍧囦笉楠岃瘉
+		/*
+		 * if (!StringUtil.isNullOrEmpty(content) && kind != 3) { try {
+		 * convertLinkManager.convertLinkFromText(content,
+		 * Constant.LINK_TOKEN_VERIFY_UID, true); } catch (ConvertLinkExceptionException
+		 * e) { if (ConvertLinkExceptionException.CODE_NONE != e.getCode()) { throw new
+		 * GoodsEvaluateException(1, "鍖呭惈涓嶅彲杞摼鐨勫彛浠や笌閾炬帴"); } } catch (Exception e) { throw
+		 * new GoodsEvaluateException(1, "鍖呭惈涓嶅彲杞摼鐨勫彛浠や笌閾炬帴"); } }
+		 */
 
 		GoodsEvaluate resultObj = goodsEvaluateDao.getById(pid);
 		if (resultObj == null)
@@ -1270,7 +1271,7 @@
 				}
 			}
 		}
-				
+
 		// 涓婁紶鏂囦欢鏇挎崲
 		if (fileRequest != null) {
 			for (int i = 0; i < 9; i++) {
@@ -1285,7 +1286,7 @@
 				}
 			}
 		}
-		
+
 		int totalImg = 0;
 		for (String pic : listpic) {
 			ImgInfo imgInfo0 = new ImgInfo();
@@ -1485,14 +1486,13 @@
 		return goodsEvaluateDao.count(key, state, dynamicType);
 	}
 
-	
 	@Override
 	public void addRanDomShareCount() {
 		// 鍙戝湀
 		try {
 			List<GoodsEvaluate> list = goodsEvaluateDao.queryValid(0, Integer.MAX_VALUE, 1);
 			if (list != null) {
-				for (GoodsEvaluate goodsEvaluate: list) {
+				for (GoodsEvaluate goodsEvaluate : list) {
 					Integer shareNum = goodsEvaluate.getShareNum();
 					if (shareNum == null) {
 						shareNum = 0;
@@ -1504,12 +1504,12 @@
 		} catch (Exception e) {
 			LogHelper.errorDetailInfo(e);
 		}
-		
+
 		// 绱犳潗
 		try {
 			List<GoodsEvaluate> list = goodsEvaluateDao.queryValid(0, Integer.MAX_VALUE, 2);
 			if (list != null) {
-				for (GoodsEvaluate goodsEvaluate: list) {
+				for (GoodsEvaluate goodsEvaluate : list) {
 					Integer shareNum = goodsEvaluate.getShareNum();
 					if (shareNum == null) {
 						shareNum = 0;
@@ -1522,8 +1522,7 @@
 			LogHelper.errorDetailInfo(e);
 		}
 	}
-	
-	
+
 	@Override
 	@Cacheable(value = "dynamicCache", key = "'queryValidEvaluateCache-'+#start")
 	public List<GoodsEvaluate> queryValidEvaluateCache(int start, int count) {
@@ -1535,7 +1534,7 @@
 			public void run() {
 				// 鏇存柊淇℃伅
 				updateGoodInfo(list);
-				
+
 				// 鍒犻櫎宸茶繃鏈�
 				removeOverdue();
 			}
@@ -1568,7 +1567,10 @@
 				e.printStackTrace();
 				continue;
 			}
-
+			
+			// 鎸夌収鍙戝竷鏄剧ず鏃堕棿娈佃捣濮嬫椂闂翠负鍑嗐��
+			goodsEvaluate.setPublishTime(goodsEvaluate.getStartTime());
+						
 			List<CommentInfo> comments = evaluateNew.getComments();
 			if (comments != null && comments.size() > 0) {
 				EvaluateEnum typeEnum = evaluateNew.getType();
@@ -1595,20 +1597,35 @@
 						if (goods != null) {
 							String content = commentInfoNew.getContent();
 							if (!StringUtil.isNullOrEmpty(content)) {
-								content = content.replace("[鍘熶环]", MoneyBigDecimalUtil.getWithNoZera(goods.getZkPrice())+"");
+								content = content.replace("[鍘熶环]",
+										MoneyBigDecimalUtil.getWithNoZera(goods.getZkPrice()) + "");
 								if (goods.isHasCoupon()) {
-									content = content.replace("[鍒稿悗浠穄",MoneyBigDecimalUtil.getWithNoZera(goods.getCouponPrice())+"");
+									content = content.replace("[鍒稿悗浠穄",
+											MoneyBigDecimalUtil.getWithNoZera(goods.getCouponPrice()) + "");
 								} else {
 									singleCoupn = false;
 									content = content.replace("棰嗗埜鎶㈣喘", "鎶㈣喘");
 									content = content.replace("銆愬埜鍚庝环銆慬鍒稿悗浠穄鍏�", "");
 								}
 								content = content.replace("\r\n\r\n", "\r\n").replace("\r\n\r\n", "\r\n");
+								// 鏇挎崲娣樺疂瀹樻柟娲诲姩
+								List<String> activityIdList = convertLinkManager.getTaoBaoOfficialActivityId(content);
+								for (String st : activityIdList)
+									content = content.replace(st, "");
+
 								commentInfoNew.setContent(content);
 							}
 						}
 					}
-					
+					if (typeEnum != null && typeEnum == EvaluateEnum.activity) {
+						// 鏇挎崲娣樺疂瀹樻柟娲诲姩
+						String content = commentInfoNew.getContent();
+						List<String> activityIdList = convertLinkManager.getTaoBaoOfficialActivityId(content);
+						for (String st : activityIdList)
+							content = content.replace(st, "");
+						commentInfoNew.setContent(content);
+					}
+
 					CommentInfoEnum typeComment = commentInfoNew.getTypeEnum();
 					if (typeComment != null && typeComment == CommentInfoEnum.goodsCoupon) {
 						GoodsDetailVO goods = evaluateNew.getGoods();
@@ -1684,7 +1701,7 @@
 			@Override
 			public void run() {
 				updateGoodInfo(listOBJ);
-				
+
 				// 鍒犻櫎宸茶繃鏈�
 				removeOverdue();
 			}
@@ -1834,105 +1851,140 @@
 	}
 
 	@Override
-	public void addGoodsEvaluateByDynamicInfo(DynamicInfo info) {
-		if (1 > 0) {
-			return; // 鏆備笉鍚敤鑷姩鐢熸垚
+	public void addGoodsEvaluate(Long goodsId, Integer cid, String title, String comment) throws GoodsEvaluateException{
+		if (goodsId == null || cid == null || StringUtil.isNullOrEmpty(title)) {
+			throw new GoodsEvaluateException(1, "鐩稿叧鍙傛暟涓嶈兘涓虹┖");
 		}
-
-		if (info == null) {
-			return;
-		}
-
+		
+		TaoBaoGoodsBrief goodsBrief = null;
 		try {
-			GoodsEvaluate goodsEvaluate = new GoodsEvaluate();
-			goodsEvaluate.setId(UUID.randomUUID().toString().replace("-", ""));
-			ActivityUser user = info.getUser();
-			goodsEvaluate.setUser(user);
-			goodsEvaluate.setState(1);
-			goodsEvaluate.setDynamicType(1);
-			goodsEvaluate.setType(EvaluateEnum.single);
-			goodsEvaluate.setLineNum(2);
-			goodsEvaluate.setShareNum(info.getShareCount());
-			goodsEvaluate.setShareNumReal(0);
-			goodsEvaluate.setPublishTime(info.getCreateTime());
-			goodsEvaluate.setCreateTime(new Date());
-			goodsEvaluate.setUpdateTime(new Date());
-			goodsEvaluate.setWeight(0.0);
-			goodsEvaluate.setStartTime(new Date());
-			goodsEvaluate.setEndTime(DateUtil.plusDayDate(3, new Date()));
-
-			List<ClientTextStyleVO> titles = info.getTitle();
-			if (titles != null) {
-				goodsEvaluate.setTitle(info.getTitle().get(0).getContent());
-			} else {
-				goodsEvaluate.setTitle("");
-			}
-
-			List<ImgInfo> imgList = new ArrayList<>();
-
-			List<GoodsPicture> imgs = info.getImgs();
-			for (GoodsPicture goodsPicture : imgs) {
-				ImgInfo imgInfo = new ImgInfo();
-				imgInfo.setH(1);
-				imgInfo.setW(1);
-				imgInfo.setLarge(false);
-				imgInfo.setUrl(goodsPicture.getUrl());
-				imgInfo.setUrlHD(goodsPicture.getUrl());
-
-				GoodsDetailVO goodsVO = goodsPicture.getGoodsVO();
-				if (goodsVO == null) {
-					imgInfo.setType(ImgEnum.img);
-				} else {
-					imgInfo.setType(ImgEnum.goods);
-					SimpleGoods simpleGoods = new SimpleGoods();
-					simpleGoods.setGoodsId(goodsVO.getGoodsId());
-					simpleGoods.setGoodsType(goodsVO.getGoodsType());
-					simpleGoods.setState(goodsVO.getState());
-					CouponInfoVO couponInfo = goodsVO.getCouponInfo();
-					if (couponInfo == null) {
-						simpleGoods.setPrice(goodsVO.getZkPrice());
-					} else {
-						simpleGoods.setPrice(goodsVO.getCouponPrice());
-						simpleGoods.setAmount(couponInfo.getAmount());
-					}
-					imgInfo.setGoods(simpleGoods);
-
-					TaoBaoLink taoBaoLink = shareGoodsService.getTaoBaoLinkForShare(1L, goodsVO.getGoodsId(), "0");
-
-//					TaoBaoLink taoBaoLink = shareGoodsService.getTaoBaoLinkForShare(Constant.LINK_TOKEN_VERIFY_UID, goodsVO.getGoodsId(), null);
-					String template = configService.get(ConfigKeyEnum.quickShareTBCommentText.getKey());
-					String commentText = template.replace("[娣樺彛浠", TaoBaoUtil.filterTaoToken(taoBaoLink.getTaoToken()));
-
-					commentText = commentText.replace("[鍘熶环]", goodsVO.getZkPrice().toString());
-					if (!goodsVO.isHasCoupon()) {
-						commentText = commentText.replace("棰嗗埜鎶㈣喘", "鎶㈣喘");
-						commentText = commentText.replace("銆愬埜鍚庝环銆慬鍒稿悗浠穄鍏�", "");
-					} else {
-						commentText = commentText.replace("[鍒稿悗浠穄", goodsVO.getCouponPrice().toString());
-					}
-					commentText = commentText.replace("\r\n\r\n", "\r\n").replace("\r\n\r\n", "\r\n")
-							.replace("\r\n\r\n", "\r\n");
-
-					CommentInfo commentInfo = new CommentInfo();
-					commentInfo.setId(UUID.randomUUID().toString().replace("-", ""));
-					commentInfo.setContent(commentText);
-					commentInfo.setTypeEnum(CommentInfoEnum.goodsCoupon);
-					commentInfo.setType(CommentInfoEnum.goodsCoupon.getDesc());
-
-					List<CommentInfo> commentsNew = new ArrayList<>();
-					commentsNew.add(commentInfo);
-					goodsEvaluate.setComments(commentsNew);
-
-					goodsEvaluate.setGoods(goodsVO);
-
-				}
-				imgList.add(imgInfo);
-			}
-			goodsEvaluate.setImgList(imgList);
-			goodsEvaluateDao.save(goodsEvaluate);
-		} catch (Exception e) {
-			LogHelper.errorDetailInfo(e);
+			goodsBrief = redisManager.getTaoBaoGoodsBrief(goodsId);
+		} catch (TaobaoGoodsDownException e) {
+			throw new GoodsEvaluateException(1, "鍟嗗搧宸蹭笅鏋�");
 		}
+
+		if (goodsBrief == null) {
+			throw new GoodsEvaluateException(1, "鏈壘鍒板晢鍝佷俊鎭�");
+		}
+
+		BigDecimal couponAmount = goodsBrief.getCouponAmount();
+		if (couponAmount == null || couponAmount.compareTo(new BigDecimal(0)) < 1) {
+			throw new GoodsEvaluateException(1, "璇ュ晢鍝佹棤鍒�");
+		}
+
+		// 鍙戝竷鐢ㄦ埛
+		ActivityUser user = activityUserService.getRandomByDaTaoKeCid(cid);
+		if (user == null) {
+			throw new GoodsEvaluateException(1, "鏈壘鍒板彂甯冪敤鎴�");
+		}
+
+		
+		// 鐧藉簳鍥�
+		List<String> imgs = new ArrayList<>();
+		if (!StringUtil.isNullOrEmpty(goodsBrief.getPictUrlWhite())) {
+			imgs.add(goodsBrief.getPictUrlWhite());
+		}
+		imgs.addAll(goodsBrief.getImgList());
+
+		// 鍟嗗搧VO
+		ConfigParamsDTO paramsDTO = hongBaoManageService.getShowComputeRate("android", "55");
+		paramsDTO.setBaseFanliRate(hongBaoManageService.getBaseFanliRate());
+		GoodsDetailVO goodsVO = GoodsDetailVOFactory.convertTaoBao(goodsBrief, paramsDTO);
+
+		// 鍟嗗搧鍥剧墖淇℃伅
+		int i = 0;
+		List<ImgInfo> imgList = new ArrayList<>();
+		for (String img : imgs) {
+			ImgInfo imgInfo = new ImgInfo();
+			imgInfo.setH(1);
+			imgInfo.setW(1);
+			imgInfo.setLarge(false);
+			imgInfo.setUrl(img);
+			imgInfo.setUrlHD(img);
+			if (i != 0) {
+				imgInfo.setType(ImgEnum.img);
+			} else {
+				imgInfo.setType(ImgEnum.goods);
+				SimpleGoods simpleGoods = new SimpleGoods();
+				simpleGoods.setGoodsId(goodsVO.getGoodsId());
+				simpleGoods.setGoodsType(goodsVO.getGoodsType());
+				simpleGoods.setState(goodsVO.getState());
+				CouponInfoVO couponInfo = goodsVO.getCouponInfo();
+				if (couponInfo == null) {
+					simpleGoods.setPrice(goodsVO.getZkPrice());
+				} else {
+					simpleGoods.setPrice(goodsVO.getCouponPrice());
+					simpleGoods.setAmount(couponInfo.getAmount());
+				}
+				imgInfo.setGoods(simpleGoods);
+				imgInfo.setGoodsVO(goodsVO);
+			}
+			imgList.add(imgInfo);
+			i++;
+		}
+		
+		// 璇勮鍐呭
+		CommentInfo commentInfo = new CommentInfo();
+		commentInfo.setId(UUID.randomUUID().toString().replace("-", ""));
+		commentInfo.setTypeEnum(CommentInfoEnum.goodsCoupon);
+		if (!StringUtil.isNullOrEmpty(comment)) {
+			commentInfo.setContent(comment);
+			commentInfo.setType("");
+		} else {
+			String token = shareGoodsService.createTaoBaoToken(Constant.LINK_TOKEN_VERIFY_UID, goodsBrief);
+			String template = configService.get(ConfigKeyEnum.quickShareTBCommentText.getKey());
+			String commentText = template.replace("[娣樺彛浠", TaoBaoUtil.filterTaoToken(token));
+			commentText = commentText.replace("[鍘熶环]", MoneyBigDecimalUtil.getWithNoZera(goodsVO.getZkPrice()) + "");
+			if (!goodsVO.isHasCoupon()) {
+				commentText = commentText.replace("棰嗗埜鎶㈣喘", "鎶㈣喘");
+				commentText = commentText.replace("銆愬埜鍚庝环銆慬鍒稿悗浠穄鍏�", "");
+			} else {
+				commentText = commentText.replace("[鍒稿悗浠穄",
+						MoneyBigDecimalUtil.getWithNoZera(goodsVO.getCouponPrice()) + "");
+			}
+			commentText = commentText.replace("\r\n\r\n", "\r\n").replace("\r\n\r\n", "\r\n").replace("\r\n\r\n","\r\n");
+			commentInfo.setContent(commentText);
+			commentInfo.setType(CommentInfoEnum.goodsCoupon.getDesc());
+		}
+
+		List<CommentInfo> commentsNew = new ArrayList<>();
+		commentsNew.add(commentInfo);
+		
+		// 涓�琛屾樉绀哄灏戜釜鍥剧墖
+		int lineNum = 0;
+		if (imgs.size() > 0) {
+			if (imgs.size() == 1) {
+				lineNum = 1;
+			} else if (imgs.size() == 3) {
+				lineNum = 3;
+			} else if (imgs.size() <= 4) {
+				lineNum = 2;
+			} else {
+				lineNum = 3;
+			}
+		}
+		
+
+		GoodsEvaluate goodsEvaluate = new GoodsEvaluate();
+		goodsEvaluate.setId(UUID.randomUUID().toString().replace("-", ""));
+		goodsEvaluate.setUser(user);
+		goodsEvaluate.setTitle(getDescNew(title));
+		goodsEvaluate.setState(1);
+		goodsEvaluate.setDynamicType(1);
+		goodsEvaluate.setType(EvaluateEnum.single);
+		goodsEvaluate.setShareNum((int) (Math.random() * 5000) + 1000);
+		goodsEvaluate.setShareNumReal(0);
+		goodsEvaluate.setWeight(0.0);
+		goodsEvaluate.setStartTime(new Date());
+		goodsEvaluate.setEndTime(DateUtil.plusDayDate(3, new Date()));
+		goodsEvaluate.setPublishTime(new Date());
+		goodsEvaluate.setCreateTime(new Date());
+		goodsEvaluate.setUpdateTime(new Date());
+		goodsEvaluate.setGoods(goodsVO);
+		goodsEvaluate.setLineNum(lineNum);
+		goodsEvaluate.setImgList(imgList);
+		goodsEvaluate.setComments(commentsNew);
+		goodsEvaluateDao.save(goodsEvaluate);
 	}
 
 	@Override
@@ -2092,12 +2144,14 @@
 					String template = configService.get(ConfigKeyEnum.quickShareTBCommentText.getKey());
 					String commentText = template.replace("[娣樺彛浠", TaoBaoUtil.filterTaoToken(token));
 
-					commentText = commentText.replace("[鍘熶环]", MoneyBigDecimalUtil.getWithNoZera(goodsVO.getZkPrice())+"");
+					commentText = commentText.replace("[鍘熶环]",
+							MoneyBigDecimalUtil.getWithNoZera(goodsVO.getZkPrice()) + "");
 					if (!goodsVO.isHasCoupon()) {
 						commentText = commentText.replace("棰嗗埜鎶㈣喘", "鎶㈣喘");
 						commentText = commentText.replace("銆愬埜鍚庝环銆慬鍒稿悗浠穄鍏�", "");
 					} else {
-						commentText = commentText.replace("[鍒稿悗浠穄", MoneyBigDecimalUtil.getWithNoZera(goodsVO.getCouponPrice())+"");
+						commentText = commentText.replace("[鍒稿悗浠穄",
+								MoneyBigDecimalUtil.getWithNoZera(goodsVO.getCouponPrice()) + "");
 					}
 					commentText = commentText.replace("\r\n\r\n", "\r\n").replace("\r\n\r\n", "\r\n")
 							.replace("\r\n\r\n", "\r\n");
@@ -2118,32 +2172,31 @@
 					if (!StringUtil.isNullOrEmpty(evaluateText)) {
 						text2 += evaluateText;
 					}
-					
+
 					String dtitle = daTaoKe.getDtitle();
 					if (!StringUtil.isNullOrEmpty(dtitle)) {
-						text2 = text2 + dtitle +"\n";
+						text2 = text2 + dtitle + "\n";
 					} else if (!StringUtil.isNullOrEmpty(evaluateText)) {
 						text2 += "\n";
 					}
-					text2 += "鍏堥銆�"+ couponAmount +"鍏冧紭鎯犲埜銆戜笅鍗�";
-							
+					text2 += "鍏堥銆�" + couponAmount + "鍏冧紭鎯犲埜銆戜笅鍗�";
+
 					CommentInfo commentInfo2 = new CommentInfo();
 					commentInfo2.setId(UUID.randomUUID().toString().replace("-", ""));
 					commentInfo2.setContent(text2);
 					commentInfo2.setTypeEnum(CommentInfoEnum.goodsCoupon);
 					commentInfo2.setType("");
-					
-					
+
 					List<CommentInfo> commentsNew = new ArrayList<>();
 					commentsNew.add(commentInfo);
 					commentsNew.add(commentInfo2);
 					goodsEvaluate.setComments(commentsNew);
-					
-					goodsEvaluate.setGoods(goodsVO);
 				}
 				imgList.add(imgInfo);
 				i++;
 			}
+			
+			goodsEvaluate.setGoods(goodsVO);
 			goodsEvaluate.setImgList(imgList);
 			goodsEvaluateDao.save(goodsEvaluate);
 		} catch (Exception e) {
@@ -2154,122 +2207,69 @@
 		return true;
 	}
 
-	private String getDesc(String desc) {
-		System.out.println(desc);
-		String newDesc = "";
-		int emoji = 0;
-		String content = desc.replace("锛�", ",");
-		while (content.length() > 0) {
-			int length = 0;
-			boolean end = true;
-			for (int i = 0; i < content.length(); i++) {
-				if (content.substring(0, i).length() >= 18) {
-					length = i;
-					end = false;
-					break;
-				}
-			}
-
-			if (end) {
-				length = content.length();
-			}
-
-			String introduce = content.substring(0, length);
-			System.out.println(introduce);
-			if (verify(introduce)) {
-				if (emoji >= 4) {
-					introduce = introduce.replace(",", "\n"); // 闇�瑕佹崲琛�
+	/**
+	 * 鍙戝湀鏍囬 鍔犲叆琛ㄦ儏
+	 * @param desc
+	 * @return
+	 */
+	private String getDescNew(String desc) {
+		String[] split = desc.split("锛�");
+		int max = 1;
+		if (Math.random() > 0.5) {
+			max = 2;
+		}
+		int e = 0;
+		String emojis = "";
+		String descNew = "";
+		if (split.length > 0) {
+			for (int i = 0; i < split.length; i++) {
+				if (Math.random() > 0.5 && e < max) {
+					for (int j = 0; j < 10; j++) {
+						String emojisTemp = DaTaoKeUtil.getEvaluateEmojis();
+						if (!emojis.equals(emojisTemp)) {
+							emojis = emojisTemp;
+							break;
+						}
+					}
+					e++;
+					descNew += split[i] + emojis;
 				} else {
-					emoji++;
-					introduce = introduce.replace(",", DaTaoKeUtil.getRandomCommonEmoji() + "\n"); // 闇�瑕佹崲琛�
+					descNew += split[i] + "锛�";
 				}
 			}
-
-			// 闅忔満鏇挎崲emoji
-			if (emoji <= 4 && Math.random() > 0.5) {
-				introduce = introduce.replace(",", DaTaoKeUtil.getRandomCommonEmoji());
-				emoji++;
-			}
-			newDesc += introduce;
-			content = content.substring(length);
+		} else {
+			descNew = desc;
 		}
-		return newDesc;
+
+		if (descNew.endsWith("锛�")) {
+			descNew = descNew.substring(0, descNew.length() - 1);
+		}
+		return descNew;
 	}
 
-	private boolean verify(String content) {
-		// 18涓瓧绗﹀唴锛堝寘鍚爣鐐逛篃绠椾竴涓瓧绗︼級鏈夊涓�楀彿锛屽垯涓嶆崲琛�
-		char d = ',';
-		int count = 0;
-		char chs[] = content.toCharArray();// 杞崲鎴恈har鏁扮粍
-		for (int i = 0; i < chs.length; i++) {
-			if (d == chs[i]) {
-				count++;
-			}
-		}
-		if (count > 1) {
-			return false;
-		}
 
-		// 涔﹀悕鍙凤紝澶ф嫭鍙凤紝灏忔嫭鍙烽噷闈㈢殑鍐呭涓嶆崲琛�
-		if (content.contains("[") && content.contains("]")) {
-			return false;
-		} else if (content.contains("銆�") && content.contains("銆�")) {
-			return false;
-		} else if (content.contains("{") && content.contains("}")) {
-			return false;
-		} else if (content.contains("(") && content.contains(")")) {
-			return false;
-		}
-
-		int index = content.lastIndexOf(",");
-		// (闄ゅ紑閫楀彿浠ュ鐨勭鍙凤級鎰熷徆鍙�/鍙ュ彿/闂彿鍓嶉潰鏈夐�楀彿锛屼笉鎹㈣
-		if (content.contains("!") && index < content.lastIndexOf("!")) {
-			return false;
-		}
-
-		if (content.contains("锛�") && index < content.lastIndexOf("锛�")) {
-			return false;
-		}
-
-		if (content.contains("銆�") && index < content.lastIndexOf("銆�")) {
-			return false;
-		}
-
-		if (content.contains("?") && index < content.lastIndexOf("?")) {
-			return false;
-		}
-
-		if (content.contains("锛�") && index < content.lastIndexOf("锛�")) {
-			return false;
-		}
-
-		if (content.contains("锛�")) {
-			return false;
-		}
-		return true;
-	}
-	
 	@Override
 	public void updateTaoBaoGoods(TaoBaoGoodsBrief goods) {
 		try {
 			if (goods == null) {
 				return;
 			}
-			List<GoodsEvaluate> queryExist = goodsEvaluateDao.queryExist(Constant.SOURCE_TYPE_TAOBAO, goods.getAuctionId());
+			List<GoodsEvaluate> queryExist = goodsEvaluateDao.queryExist(Constant.SOURCE_TYPE_TAOBAO,
+					goods.getAuctionId());
 			if (queryExist == null || queryExist.size() == 0) {
 				return;
 			}
-			
+
 			ConfigParamsDTO paramsDTO = hongBaoManageService.getShowComputeRate("android", "55");
 			paramsDTO.setBaseFanliRate(hongBaoManageService.getBaseFanliRate());
 			GoodsDetailVO goodsNew = GoodsDetailVOFactory.convertTaoBao(goods, paramsDTO);
 			updateGoods(queryExist, goodsNew);
-		
+
 		} catch (Exception e) {
 			e.printStackTrace();
 		}
 	}
-	
+
 	@Override
 	public void updateJDGoods(JDGoods jdGoods) {
 		if (jdGoods == null) {
@@ -2279,14 +2279,14 @@
 		if (queryExist == null || queryExist.size() == 0) {
 			return;
 		}
-		
+
 		ConfigParamsDTO paramsDTO = hongBaoManageService.getShowComputeRate("android", "55");
 		paramsDTO.setBaseFanliRate(hongBaoManageService.getBaseFanliRate());
 		GoodsDetailVO goodsNew = GoodsDetailVOFactory.convertJDGoods(jdGoods, paramsDTO);
-		
+
 		updateGoods(queryExist, goodsNew);
 	}
-	
+
 	@Override
 	public void updatePDDGoods(PDDGoodsDetail pddGoods) {
 		if (pddGoods == null) {
@@ -2296,23 +2296,23 @@
 		if (queryExist == null || queryExist.size() == 0) {
 			return;
 		}
-		
+
 		ConfigParamsDTO paramsDTO = hongBaoManageService.getShowComputeRate("android", "55");
 		paramsDTO.setBaseFanliRate(hongBaoManageService.getBaseFanliRate());
 		GoodsDetailVO goodsNew = GoodsDetailVOFactory.convertPDDGoods(pddGoods, paramsDTO);
 		updateGoods(queryExist, goodsNew);
 	}
-	
+
 	private void updateGoods(List<GoodsEvaluate> listExist, GoodsDetailVO goodsNew) {
 		long goodsId = goodsNew.getGoodsId();
 		int goodsType = goodsNew.getGoodsType();
-		for (GoodsEvaluate goodsEvaluate: listExist) {
+		for (GoodsEvaluate goodsEvaluate : listExist) {
 			GoodsDetailVO goodsDetailVO = goodsEvaluate.getGoods();
-			if (goodsDetailVO != null && goodsDetailVO.getGoodsId() != null 
-				&& goodsDetailVO.getGoodsId() == goodsId && goodsDetailVO.getGoodsType() == goodsType) {
+			if (goodsDetailVO != null && goodsDetailVO.getGoodsId() != null && goodsDetailVO.getGoodsId() == goodsId
+					&& goodsDetailVO.getGoodsType() == goodsType) {
 				goodsEvaluate.setGoods(goodsNew);
 			}
-			
+
 			// 鏇存柊鍟嗗搧淇℃伅
 			List<ImgInfo> imgList = goodsEvaluate.getImgList();
 			if (imgList == null || imgList.size() == 0) {
@@ -2321,12 +2321,11 @@
 
 			for (ImgInfo imgInfo : imgList) {
 				SimpleGoods simpleGoods = imgInfo.getGoods();
-				if (simpleGoods == null || simpleGoods.getGoodsId() != goodsId  
+				if (simpleGoods == null || simpleGoods.getGoodsId() != goodsId
 						|| goodsType != simpleGoods.getGoodsType()) {
 					continue;
 				}
 
-				
 				simpleGoods.setState(0);
 				simpleGoods.setPrice(goodsNew.getCouponPrice());
 				CouponInfoVO couponInfo = goodsNew.getCouponInfo();
@@ -2336,17 +2335,17 @@
 					simpleGoods.setPrice(goodsNew.getCouponPrice());
 					simpleGoods.setAmount(couponInfo.getAmount());
 				}
-				
+
 				imgInfo.setGoods(simpleGoods);
 				imgInfo.setGoodsVO(goodsNew);
 			}
-			
+
 			goodsEvaluate.setImgList(imgList);
 			goodsEvaluate.setUpdateTime(new Date());
 			goodsEvaluateDao.save(goodsEvaluate);
 		}
 	}
-	
+
 	private void removeOverdue() {
 		List<GoodsEvaluate> list = goodsEvaluateDao.queryOverdue();
 		if (list == null || list.size() == 0) {
@@ -2355,16 +2354,17 @@
 		long nm = 1000 * 60;// 涓�鍒嗛挓鐨勬绉掓暟
 		long nh = 1000 * 60 * 60;// 涓�灏忔椂鐨勬绉掓暟
 		long nd = 1000 * 24 * 60 * 60;// 涓�澶╃殑姣鏁�
-		
+
 		long time = java.lang.System.currentTimeMillis();
-		for (GoodsEvaluate goodsEvaluate: list) {
+		for (GoodsEvaluate goodsEvaluate : list) {
 			long diff = time - goodsEvaluate.getEndTime().getTime();
-			long min = diff % nd % nh / nm; 
-			
+			long min = diff % nd % nh / nm;
+
 			// 杩囨湡瓒呰繃10鍒嗛挓灏卞垹闄�
 			if (min > 10) {
 				goodsEvaluateDao.remove(goodsEvaluate);
 			}
 		}
 	}
+
 }

--
Gitblit v1.8.0