yj
2020-03-04 9073dee61a9279c2476305c34f92c96330ba16d3
fanli/src/main/java/com/yeshi/fanli/service/impl/dynamic/GoodsEvaluateServiceImpl.java
@@ -415,6 +415,13 @@
         }
      } 
      
      CouponInfoVO couponInfo1 = goodsDetailVO.getCouponInfo();
      if (couponInfo1 == null) {
         addComment = false;
      }
      if (addComment) {
         String commentText = "";
         if (goodsType == Constant.SOURCE_TYPE_TAOBAO) {
@@ -745,6 +752,7 @@
         throw new GoodsEvaluateException(1, "描述语不能为空");
      }
      
      String tagUrl = commentInfo.getTagUrl();
      String content = commentInfo.getContent();
      if (StringUtil.isNullOrEmpty(tagUrl) && StringUtil.isNullOrEmpty(content) ) {
@@ -759,6 +767,8 @@
         } catch (Exception e) {
            throw new GoodsEvaluateException(1, "请填写正确的时间格式:2020-03-05");
         }
      } else {
         throw new GoodsEvaluateException(1, "请填写券截止时间");
      }
      
      if(!StringUtil.isNullOrEmpty(content)) {
@@ -1306,11 +1316,14 @@
      if (list == null) {
         list = new ArrayList<>();
      }
      Date now = new Date();
      SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
      for (GoodsEvaluate goodsEvaluate: list) {
         List<CommentInfo> comments = goodsEvaluate.getComments();
         if (comments != null) {
            Date now = new Date();
            EvaluateEnum typeEnum = goodsEvaluate.getType();
            List<CommentInfo> commentNew = new ArrayList<>();
            for (CommentInfo commentInfo: comments) {
               String typeCoupon = commentInfo.getType();
               if (StringUtil.isNullOrEmpty(typeCoupon)) {
@@ -1325,21 +1338,22 @@
                  commentInfo.setType("通用优惠券");
               }
               
               CommentInfoEnum typeComment = commentInfo.getTypeEnum();
               if (typeComment != null && typeComment ==CommentInfoEnum.goodsCoupon) {
                  GoodsDetailVO goods = goodsEvaluate.getGoods();
                  if (goods.isHasCoupon()) {
                     commentNew.add(commentInfo);
                     continue;
                  }
               }
               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;
                  }
                  if (endDay.getTime() > now.getTime()) {
                  int daysBetween = DateUtil.daysBetween(endDay, now);
                  if (daysBetween <= 0) {
                     continue;
                  }
                     if (daysBetween > 0) {
                  ClientTextStyleVO styleVO = new ClientTextStyleVO();
                  styleVO.setColor("#E5005C");
                  styleVO.setContent(daysBetween + "天后过期");
@@ -1349,6 +1363,34 @@
                  tagList.add(styleVO);
                  
                  commentInfo.setTagList(tagList);
                        if (typeEnum != null && typeEnum == EvaluateEnum.single) {
                           //新增
                           commentNew.add(commentInfo);
                        }
                     }
                  }
               }
            }
            goodsEvaluate.setComments(commentNew);
            if (typeEnum != null && typeEnum == EvaluateEnum.single) {
                if (commentNew.size() == 0) {
                   GoodsDetailVO goods = goodsEvaluate.getGoods();
                   if (goods != null) {
                      goods.setState(1); // 评论不存在 下架
                   }
                   List<ImgInfo> imgList = goodsEvaluate.getImgList();
                   if (imgList != null) {
                     for (ImgInfo imgInfo: imgList) {
                        SimpleGoods simpleGoods = imgInfo.getGoods();
                        if (simpleGoods != null) {
                           simpleGoods.setState(1);
                        }
                     }
                   }
               }
            }
         }
@@ -1375,6 +1417,8 @@
      }
      try {
         Date now = new Date();
         SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
         BigDecimal fanLiRate = hongBaoManageService.getFanLiRate();
         BigDecimal shareRate = hongBaoManageService.getShareRate();
         BigDecimal vipFanLiRate = hongBaoManageService.getVIPFanLiRate();
@@ -1394,12 +1438,33 @@
               }
            }
            EvaluateEnum type = goodsEvaluate.getType();
            if (type != null &&  type == EvaluateEnum.activity) {
               List<CommentInfo> comments = goodsEvaluate.getComments();
               if (comments != null) {
                  for (CommentInfo commentInfo: comments) {
                     CommentInfoEnum commentInfoEnum = commentInfo.getTypeEnum();
                     if (commentInfoEnum != null && commentInfoEnum== CommentInfoEnum.currencyCoupon) {
                        String endTime = commentInfo.getEndTime();
                        if (!StringUtil.isNullOrEmpty(endTime)) {
                           Date endDay = sdf.parse(endTime);
                           if (endDay.getTime() < now.getTime()) {
                              goodsEvaluate.setState(1); // 活动过期
                           }
                        }
                     }
                  }
               }
            }
            GoodsDetailVO goods = goodsEvaluate.getGoods();
            if (goods != null) {
               GoodsDetailVO goodsNew = getGoodsNewInfo(goods.getGoodsId(), goods.getGoodsType(), paramsDTO);
               if (goodsNew != null) {
                  goodsEvaluate.setGoods(goodsNew);
               } else {
                  goodsEvaluate.setState(0); // 已商品下架
                  goods.setState(1);
                  goodsEvaluate.setGoods(goods);
               }
@@ -1483,7 +1548,7 @@
         goodsEvaluate.setUpdateTime(new Date());
         goodsEvaluate.setWeight(0.0);
         goodsEvaluate.setStartTime(new Date());
         goodsEvaluate.setEndTime(DateUtil.plusYears(new Date(), 100));
         goodsEvaluate.setEndTime(DateUtil.plusDayDate(3,new Date()));
         List<ClientTextStyleVO> titles = info.getTitle();
         if (titles != null) {
@@ -1518,10 +1583,6 @@
               } else {
                  simpleGoods.setPrice(goodsVO.getCouponPrice());
                  simpleGoods.setAmount(couponInfo.getAmount());
               }
               imgInfo.setGoods(simpleGoods);
               goodsEvaluate.setGoods(goodsVO);
               
               TaoBaoLink taoBaoLink = shareGoodsService.getTaoBaoLinkForShare(1L, goodsVO.getGoodsId(), null);
               String template = configService.get(ConfigKeyEnum.quickShareTBCommentText.getKey());
@@ -1547,6 +1608,10 @@
               commentsNew.add(commentInfo);
               goodsEvaluate.setComments(commentsNew);
            }
               imgInfo.setGoods(simpleGoods);
               goodsEvaluate.setGoods(goodsVO);
            }
            imgList.add(imgInfo);
         }
         goodsEvaluate.setImgList(imgList);