yj
2020-03-13 9a38f81e7e7c817aa539416a41d33856209c7fe1
fanli/src/main/java/com/yeshi/fanli/service/impl/dynamic/GoodsEvaluateServiceImpl.java
@@ -166,6 +166,7 @@
         record.setId(id);
         record.setShareNumReal(0);
         record.setCreateTime(new Date());
         record.setUpdateTime(new Date());
         goodsEvaluateDao.save(record);
      } else {
         GoodsEvaluate resultObj = goodsEvaluateDao.getById(id);
@@ -179,6 +180,7 @@
         resultObj.setStartTime(record.getStartTime());
         resultObj.setEndTime(record.getEndTime());
         resultObj.setTitle(tilte);
         resultObj.setUpdateTime(new Date());
         goodsEvaluateDao.save(resultObj);
      }
      return id;
@@ -495,16 +497,16 @@
            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("-", ""));
@@ -513,6 +515,7 @@
         commentsNew.add(commentInfo);
         resultObj.setComments(commentsNew);
      }
      resultObj.setUpdateTime(new Date());
      goodsEvaluateDao.save(resultObj);
      // 删除图片
@@ -845,6 +848,7 @@
      }
      resultObj.setComments(comments);
      resultObj.setUpdateTime(new Date());
      goodsEvaluateDao.save(resultObj);
   }
@@ -1465,6 +1469,45 @@
      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) {
               Integer shareNum = goodsEvaluate.getShareNum();
               if (shareNum == null) {
                  shareNum = 0;
               }
               goodsEvaluate.setShareNum(shareNum + (int) (Math.random() * 100) + 10);
               goodsEvaluateDao.save(goodsEvaluate);
            }
         }
      } catch (Exception e) {
         LogHelper.errorDetailInfo(e);
      }
      // 素材
      try {
         List<GoodsEvaluate> list = goodsEvaluateDao.queryValid(0, Integer.MAX_VALUE, 2);
         if (list != null) {
            for (GoodsEvaluate goodsEvaluate: list) {
               Integer shareNum = goodsEvaluate.getShareNum();
               if (shareNum == null) {
                  shareNum = 0;
               }
               goodsEvaluate.setShareNum(shareNum + (int) (Math.random() * 100) + 10);
               goodsEvaluateDao.save(goodsEvaluate);
            }
         }
      } catch (Exception e) {
         LogHelper.errorDetailInfo(e);
      }
   }
   @Override
   @Cacheable(value = "dynamicCache", key = "'queryValidEvaluateCache-'+#start")
   public List<GoodsEvaluate> queryValidEvaluateCache(int start, int count) {
@@ -1487,7 +1530,7 @@
   }
   @Override
//   @Cacheable(value = "dynamicCache", key = "'queryMaterialsCache-'+#start+'-'+#type")
   @Cacheable(value = "dynamicCache", key = "'queryMaterialsCache-'+#start+'-'+#type")
   public List<GoodsEvaluate> queryMaterialsCache(int start, int count, int type) throws Exception {
      List<GoodsEvaluate> list = goodsEvaluateDao.queryValid(start, count, type);
      if (list == null) {
@@ -1498,7 +1541,7 @@
      List<GoodsEvaluate> listNew = new ArrayList<>();
      for (GoodsEvaluate goodsEvaluate : list) {
         GoodsEvaluate evaluateNew = new GoodsEvaluate();
         try {
            PropertyUtils.copyProperties(evaluateNew, goodsEvaluate);
@@ -1513,6 +1556,8 @@
            EvaluateEnum typeEnum = evaluateNew.getType();
            List<CommentInfo> commentNew = new ArrayList<>();
            boolean singleCoupn = true;
            boolean currencyCoupon = true;
            for (CommentInfo commentInfo : comments) {
               if (StringUtil.isNullOrEmpty(commentInfo.getContent())
                     && StringUtil.isNullOrEmpty(commentInfo.getCoupon())) {
@@ -1527,7 +1572,25 @@
                  continue;
               }
               comment++;
               if (typeEnum != null && typeEnum == EvaluateEnum.single) {
                  GoodsDetailVO goods = evaluateNew.getGoods();
                  if (goods != null) {
                     String content = commentInfoNew.getContent();
                     if (!StringUtil.isNullOrEmpty(content)) {
                        content = content.replace("[原价]", MoneyBigDecimalUtil.getWithNoZera(goods.getZkPrice())+"");
                        if (goods.isHasCoupon()) {
                           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");
                        commentInfoNew.setContent(content);
                     }
                  }
               }
               CommentInfoEnum typeComment = commentInfoNew.getTypeEnum();
               if (typeComment != null && typeComment == CommentInfoEnum.goodsCoupon) {
                  GoodsDetailVO goods = evaluateNew.getGoods();
@@ -1558,9 +1621,11 @@
                        commentNew.add(commentInfoNew);
                        continue;
                     } else {
                        currencyCoupon = false;
                        continue;
                     }
                  } else {
                     currencyCoupon = false;
                     continue;
                  }
               }
@@ -1570,11 +1635,11 @@
            evaluateNew.setComments(commentNew);
            if (typeEnum != null && typeEnum == EvaluateEnum.single) {
               if (comment > 0 && commentNew.size() == 0) { // 所有券评论下架
               if (!currencyCoupon && !singleCoupn) { // 所有券评论下架
                  GoodsDetailVO goods = evaluateNew.getGoods();
                  if (goods != null) {
                     goods.setState(1); // 评论不存在 下架
                     LogHelper.test("获取列表商品下架1");
                     evaluateNew.setRemarks("评论验证下架");
                  }
                  List<ImgInfo> imgList = evaluateNew.getImgList();
@@ -1583,7 +1648,7 @@
                        SimpleGoods simpleGoods = imgInfo.getGoods();
                        if (simpleGoods != null) {
                           simpleGoods.setState(1);
                           LogHelper.test("获取列表商品下架2");
                           simpleGoods.setRemarks("评论验证下架");
                        }
                     }
@@ -1669,6 +1734,7 @@
               if (goodsNew != null) {
                  goodsEvaluate.setGoods(goodsNew);
               } else {
                  goodsEvaluate.setRemarks("更新-位置找到商品信息");
                  goodsEvaluate.setState(0); // 已商品下架
                  goods.setState(1);
                  goodsEvaluate.setGoods(goods);
@@ -1701,6 +1767,7 @@
                  imgInfo.setGoods(simpleGoods);
                  imgInfo.setGoodsVO(goodsDetailVO);
               } else {
                  simpleGoods.setRemarks("更新-位置找到商品信息");
                  simpleGoods.setState(1);
                  imgInfo.setGoods(simpleGoods);
                  GoodsDetailVO goodsVO = imgInfo.getGoodsVO();
@@ -2195,6 +2262,7 @@
      ConfigParamsDTO paramsDTO = hongBaoManageService.getShowComputeRate("android", "55");
      paramsDTO.setBaseFanliRate(hongBaoManageService.getBaseFanliRate());
      GoodsDetailVO goodsNew = GoodsDetailVOFactory.convertJDGoods(jdGoods, paramsDTO);
      updateGoods(queryExist, goodsNew);
   }
   
@@ -2221,7 +2289,12 @@
         GoodsDetailVO goodsDetailVO = goodsEvaluate.getGoods();
         if (goodsDetailVO != null && goodsDetailVO.getGoodsId() != null 
            && goodsDetailVO.getGoodsId() == goodsId && goodsDetailVO.getGoodsType() == goodsType ) {
            goodsEvaluate.setGoods(goodsNew);
            if (goodsDetailVO.getTitle().equalsIgnoreCase(goodsNew.getTitle())) {
               goodsEvaluate.setGoods(goodsNew);
            } else {
               goodsEvaluate.setState(1);
               goodsEvaluate.setRemarks("商品标题发生变化下架:" + goodsDetailVO.getTitle() +" / 新:" + goodsNew.getTitle());
            }
         }
         
         // 更新商品信息
@@ -2232,11 +2305,21 @@
         for (ImgInfo imgInfo : imgList) {
            SimpleGoods simpleGoods = imgInfo.getGoods();
            if (simpleGoods == null) {
            if (simpleGoods == null || simpleGoods.getGoodsId() != goodsId
                  || goodsType != simpleGoods.getGoodsType()) {
               continue;
            }
            simpleGoods.setState(0);
            GoodsDetailVO goodsVO = imgInfo.getGoodsVO();
            if (goodsVO != null) {
               if (goodsVO.getTitle().equalsIgnoreCase(goodsNew.getTitle())) {
                  simpleGoods.setState(0);
               } else {
                  simpleGoods.setState(1);
                  simpleGoods.setRemarks("商品标题发生变化下架:" + goodsVO.getTitle() +" / 新:" + goodsNew.getTitle());
               }
            }
            simpleGoods.setPrice(goodsDetailVO.getCouponPrice());
            CouponInfoVO couponInfo = goodsDetailVO.getCouponInfo();
            if (couponInfo == null) {