From c5f54810f60e036317562b1b42cfeafd18e984c5 Mon Sep 17 00:00:00 2001
From: admin <2780501319@qq.com>
Date: 星期日, 01 三月 2020 16:39:12 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/div' into div

---
 fanli/src/main/java/com/yeshi/fanli/service/impl/dynamic/GoodsEvaluateServiceImpl.java |   82 ++++++++++++++++++++++++++++++++++------
 1 files changed, 69 insertions(+), 13 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 124000f..4298a3a 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
@@ -3,6 +3,7 @@
 import java.awt.image.BufferedImage;
 import java.io.InputStream;
 import java.math.BigDecimal;
+import java.text.SimpleDateFormat;
 import java.util.ArrayList;
 import java.util.Collections;
 import java.util.Comparator;
@@ -400,7 +401,7 @@
 		List<CommentInfo> comments = resultObj.getComments();
 		if (comments != null) {
 			for (CommentInfo commentInfo: comments) {
-				if (commentInfo.getType() == CommentInfoEnum.goodsCoupon) {
+				if (commentInfo.getTypeEnum() == CommentInfoEnum.goodsCoupon) {
 					if (oldGoodsVO != null && oldGoodsVO.getGoodsId().longValue() == goodsId.longValue() 
 							&& oldGoodsVO.getGoodsType() == goodsType) {
 						addComment = true;
@@ -446,7 +447,7 @@
 			CommentInfo commentInfo = new CommentInfo();
 			commentInfo.setId(UUID.randomUUID().toString().replace("-", ""));
 			commentInfo.setContent(commentText);
-			commentInfo.setType(CommentInfoEnum.goodsCoupon);
+			commentInfo.setTypeEnum(CommentInfoEnum.goodsCoupon);
 			commentsNew.add(commentInfo);
 			resultObj.setComments(commentsNew);
 		}
@@ -681,7 +682,7 @@
 	}
 
 	@Override
-	public void saveGoodsCoupon(String pid, String tags, String content) throws GoodsEvaluateException, Exception {
+	public void saveGoodsCoupon(String pid, String content) throws GoodsEvaluateException, Exception {
 		if (StringUtil.isNullOrEmpty(pid)) {
 			throw new GoodsEvaluateException(1, "璇蜂繚瀛樼涓�閮ㄥ垎淇℃伅");
 		}
@@ -695,9 +696,9 @@
 		List<CommentInfo> oldComments = resultObj.getComments();
 		if (oldComments != null) {
 			for (CommentInfo info : oldComments) {
-				if (CommentInfoEnum.goodsCoupon == info.getType()) {
+				if (CommentInfoEnum.goodsCoupon == info.getTypeEnum()) {
 					goodsCoupon = info;
-				} else if (CommentInfoEnum.currencyCoupon == info.getType()) {
+				} else if (CommentInfoEnum.currencyCoupon == info.getTypeEnum()) {
 					currencyCoupon = info;
 				}
 			}
@@ -712,7 +713,8 @@
 				commentInfo.setId(UUID.randomUUID().toString().replace("-", ""));
 			}
 			commentInfo.setContent(content);
-			commentInfo.setType(CommentInfoEnum.goodsCoupon);
+			commentInfo.setType(CommentInfoEnum.goodsCoupon.getDesc());
+			commentInfo.setTypeEnum(CommentInfoEnum.goodsCoupon);
 			comments.add(commentInfo);
 		}
 
@@ -739,9 +741,9 @@
 		List<CommentInfo> oldComments = resultObj.getComments();
 		if (oldComments != null) {
 			for (CommentInfo info : oldComments) {
-				if (CommentInfoEnum.goodsCoupon == info.getType()) {
+				if (CommentInfoEnum.goodsCoupon == info.getTypeEnum()) {
 					goodsCoupon = info;
-				} else if (CommentInfoEnum.currencyCoupon == info.getType()) {
+				} else if (CommentInfoEnum.currencyCoupon == info.getTypeEnum()) {
 					currencyCoupon = info;
 				}
 			}
@@ -758,8 +760,16 @@
 			} else {
 				commentInfo.setId(UUID.randomUUID().toString().replace("-", ""));
 			}
-			commentInfo.setType(CommentInfoEnum.currencyCoupon);
-
+			// 鍒哥被鍨�
+			
+			String tags = commentInfo.getTags();
+			if (StringUtil.isNullOrEmpty(tags)) {
+				commentInfo.setType(CommentInfoEnum.currencyCoupon.getDesc());
+			} else {
+				commentInfo.setType(tags);
+			}
+			commentInfo.setTypeEnum(CommentInfoEnum.currencyCoupon);
+			
 			// 鏍囩淇℃伅
 			List<ClientTextStyleVO> tagList = new ArrayList<>();
 			String couponSource = commentInfo.getCouponSource();
@@ -1244,15 +1254,61 @@
 
 	@Override
 	@Cacheable(value = "dynamicCache", key = "'queryMaterialsCache-'+#start+'-'+#type")
-	public List<GoodsEvaluate> queryMaterialsCache(int start, int count, int type) {
+	public List<GoodsEvaluate> queryMaterialsCache(int start, int count, int type) throws Exception {
 		List<GoodsEvaluate> list = goodsEvaluateDao.queryValid(start, count, type);
+		
+		List<GoodsEvaluate> listOBJ = list;
 		// 鏇存柊鍟嗗搧淇℃伅
 		executor.execute(new Runnable() {
 			@Override
 			public void run() {
-				updateGoodInfo(list);
+				updateGoodInfo(listOBJ);
 			}
 		});
+
+		if (list == null) {
+			list = new ArrayList<>();
+		}
+		
+		for (GoodsEvaluate goodsEvaluate: list) {
+			List<CommentInfo> comments = goodsEvaluate.getComments();
+			if (comments != null) {
+				Date now = new Date();
+				for (CommentInfo commentInfo: comments) {
+					String typeCoupon = commentInfo.getType();
+					if (StringUtil.isNullOrEmpty(typeCoupon)) {
+						commentInfo.setType(commentInfo.getTypeEnum().getDesc());
+					}
+					
+					String coupon = commentInfo.getCoupon();
+					String endTime = commentInfo.getEndTime();
+					if (!StringUtil.isNullOrEmpty(coupon) && !StringUtil.isNullOrEmpty(endTime)) {
+						
+						SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
+						Date endDay = sdf.parse(endTime);
+						if (endDay.getTime() <= now.getTime()) {
+							continue;
+						}
+						
+						int daysBetween = DateUtil.daysBetween(endDay, now);
+						if (daysBetween <= 0) {
+							continue;
+						}
+						
+						ClientTextStyleVO styleVO = new ClientTextStyleVO();
+						styleVO.setColor("#E5005C");
+						styleVO.setContent(daysBetween + "澶╁悗杩囨湡");
+						styleVO.setContent(coupon);
+						
+						List<ClientTextStyleVO> tagList = commentInfo.getTagList();
+						tagList.add(styleVO);
+						
+						commentInfo.setTagList(tagList);
+					}
+				}
+			}
+		}
+		
 		return list;
 	}
 
@@ -1429,7 +1485,7 @@
 					CommentInfo commentInfo = new CommentInfo();
 					commentInfo.setId(UUID.randomUUID().toString().replace("-", ""));
 					commentInfo.setContent(commentText);
-					commentInfo.setType(CommentInfoEnum.goodsCoupon);
+					commentInfo.setTypeEnum(CommentInfoEnum.goodsCoupon);
 					
 					List<CommentInfo> commentsNew = new ArrayList<>();
 					commentsNew.add(commentInfo);

--
Gitblit v1.8.0