admin
2020-06-11 3a1b3cc04d2926d830f2a623d656d369ebfb5cb2
fanli/src/main/java/com/yeshi/fanli/controller/admin/GoodsEvaluateAdminController.java
@@ -19,6 +19,7 @@
import com.google.gson.reflect.TypeToken;
import com.yeshi.fanli.dto.ConfigParamsDTO;
import com.yeshi.fanli.dto.pdd.PDDGoodsDetail;
import com.yeshi.fanli.entity.bus.user.vip.UserLevelEnum;
import com.yeshi.fanli.entity.dynamic.CommentInfo;
import com.yeshi.fanli.entity.dynamic.CommentInfo.CommentInfoEnum;
import com.yeshi.fanli.entity.dynamic.GoodsEvaluate;
@@ -27,7 +28,6 @@
import com.yeshi.fanli.entity.dynamic.ListComment;
import com.yeshi.fanli.entity.goods.CommonGoods;
import com.yeshi.fanli.entity.jd.JDGoods;
import com.yeshi.fanli.entity.system.ConfigKeyEnum;
import com.yeshi.fanli.entity.taobao.TaoBaoGoodsBrief;
import com.yeshi.fanli.exception.dynamic.GoodsEvaluateException;
import com.yeshi.fanli.exception.taobao.TaobaoGoodsDownException;
@@ -41,13 +41,9 @@
import com.yeshi.fanli.util.RedisManager;
import com.yeshi.fanli.util.StringUtil;
import com.yeshi.fanli.util.TimeUtil;
import com.yeshi.fanli.util.VersionUtil;
import com.yeshi.fanli.util.cache.JDGoodsCacheUtil;
import com.yeshi.fanli.util.cache.PinDuoDuoCacheUtil;
import com.yeshi.fanli.util.factory.CommonGoodsFactory;
import com.yeshi.fanli.util.factory.goods.GoodsDetailVOFactory;
import com.yeshi.fanli.util.taobao.TaoKeApiUtil;
import com.yeshi.fanli.vo.common.JumpDetailContentVO;
import com.yeshi.fanli.vo.goods.GoodsDetailVO;
import com.yeshi.fanli.vo.msg.TokenVO;
import com.yeshi.fanli.vo.search.GoodsDocParseResultVO;
@@ -86,6 +82,25 @@
   
   
   /**
    * 修改状态
    * @param callback
    * @param id
    * @param out
    */
   @RequestMapping(value = "switchState")
   public void switchState(String callback, String id, PrintWriter out) {
      try {
         goodsEvaluateService.switchState(id);
         JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult("操作成功"));
      } catch (GoodsEvaluateException e) {
         JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult(e.getMsg()));
      } catch (Exception e) {
         JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("操作失败"));
         e.printStackTrace();
      }
   }
   /**
    * 保存信息
    * 
    * @param callback
@@ -119,7 +134,7 @@
    * @param out
    */
   @RequestMapping(value = "saveSingleGoods")
   public void saveSingleGoods(String callback, String pid, Long goodsId, Integer goodsType, String videoUrl,
   public void saveSingleGoods(String callback, String pid, String goodsId, Integer goodsType, String videoUrl,
         Integer picNum, String picUrls, HttpServletRequest request, PrintWriter out) {
      try {
         MultipartHttpServletRequest fileRequest = null;
@@ -139,47 +154,7 @@
      }
   }
   /**
    * 保存信息
    *
    * @param callback
    * @param special  0a39676f138c4dcba722e321d43c4284
    * @param out
    */
   @RequestMapping(value = "saveGoodsCoupon")
   public void saveGoodsCoupon(String callback, String pid, String content, PrintWriter out) {
      try {
         goodsEvaluateService.saveGoodsCoupon(pid, content);
         JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult("保存成功"));
      } catch (GoodsEvaluateException e) {
         JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult(e.getMsg()));
      } catch (Exception e) {
         JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("保存失败"));
         e.printStackTrace();
      }
   }
   /**
    * 保存信息
    *
    * @param callback
    * @param pid
    * @param kind     : 1单品 2多品 3活动
    * @param out
    */
   @RequestMapping(value = "saveCurrencyCoupon")
   public void saveCurrencyCoupon(String callback, String pid, int kind, CommentInfo commentInfo, PrintWriter out) {
      try {
         goodsEvaluateService.saveCurrencyCoupon(pid, kind, commentInfo);
         JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult("保存成功"));
      } catch (GoodsEvaluateException e) {
         JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult(e.getMsg()));
      } catch (Exception e) {
         JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("保存失败"));
         e.printStackTrace();
      }
   }
   /**
    * 获取信息
    * 
@@ -231,91 +206,7 @@
         e.printStackTrace();
      }
   }
   /**
    * 获取信息
    *
    * @param callback
    * @param special  0a39676f138c4dcba722e321d43c4284
    * @param out
    */
   @RequestMapping(value = "getCurrencyCoupon")
   public void getCurrencyCoupon(String callback, String pid, PrintWriter out) {
      try {
         CommentInfo commentInfo = new CommentInfo();
         if (!StringUtil.isNullOrEmpty(pid)) {
            GoodsEvaluate goodsEvaluate = goodsEvaluateService.getById(pid);
            if (goodsEvaluate != null && goodsEvaluate.getComments() != null
                  && goodsEvaluate.getComments().size() > 0) {
               for (CommentInfo info : goodsEvaluate.getComments()) {
                  if (info != null)
                     if (CommentInfoEnum.currencyCoupon == info.getTypeEnum()) {
                        commentInfo = info;
                     }
               }
            }
         }
         JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(commentInfo));
      } catch (Exception e) {
         JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("查询失败"));
         e.printStackTrace();
      }
   }
   /**
    * 获取信息
    *
    * @param callback
    * @param special  0a39676f138c4dcba722e321d43c4284
    * @param out
    */
   @RequestMapping(value = "getSingleGoodsCoupon")
   public void getSingleGoodsCoupon(String callback, String pid, PrintWriter out) {
      try {
         CommentInfo commentInfo = new CommentInfo();
         if (!StringUtil.isNullOrEmpty(pid)) {
            GoodsEvaluate goodsEvaluate = goodsEvaluateService.getById(pid);
            if (goodsEvaluate != null && goodsEvaluate.getComments() != null
                  && goodsEvaluate.getComments().size() > 0) {
               for (CommentInfo info : goodsEvaluate.getComments()) {
                  if (info != null)
                     if (CommentInfoEnum.goodsCoupon == info.getTypeEnum()) {
                        commentInfo = info;
                     }
               }
            }
         }
         JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(commentInfo));
      } catch (Exception e) {
         JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("查询失败"));
         e.printStackTrace();
      }
   }
   /**
    * 保存多个商品
    *
    * @param out
    */
   @RequestMapping(value = "saveMultipleGoods")
   public void saveMultipleGoods(String callback, String pid, String videoUrl, String goodsList,
         HttpServletRequest request, PrintWriter out) {
      try {
         MultipartHttpServletRequest fileRequest = null;
         if (request instanceof MultipartHttpServletRequest) {
            fileRequest = (MultipartHttpServletRequest) request;
         }
         goodsEvaluateService.saveMultipleGoods(pid, videoUrl, goodsList, fileRequest);
         JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult("保存成功"));
      } catch (GoodsEvaluateException e) {
         JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult(e.getMsg()));
      } catch (Exception e) {
         JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("保存失败"));
         e.printStackTrace();
         LogHelper.errorDetailInfo(e);
         LogHelper.test(e);
      }
   }
   /**
    * 
@@ -379,6 +270,91 @@
         e.printStackTrace();
      }
   }
   /**
    * 保存信息
    *
    * @param callback
    * @param pid
    * @param kind     : 1单品 2多品 3活动
    * @param out
    */
   @RequestMapping(value = "saveCurrencyCoupon")
   public void saveCurrencyCoupon(String callback, String pid, int kind, CommentInfo commentInfo, PrintWriter out) {
      try {
         goodsEvaluateService.saveCurrencyCoupon(pid, kind, commentInfo);
         JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult("保存成功"));
      } catch (GoodsEvaluateException e) {
         JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult(e.getMsg()));
      } catch (Exception e) {
         JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("保存失败"));
         e.printStackTrace();
      }
   }
   /**
    * 获取信息
    *
    * @param callback
    * @param special  0a39676f138c4dcba722e321d43c4284
    * @param out
    */
   @RequestMapping(value = "getCurrencyCoupon")
   public void getCurrencyCoupon(String callback, String pid, PrintWriter out) {
      try {
         CommentInfo commentInfo = new CommentInfo();
         if (!StringUtil.isNullOrEmpty(pid)) {
            GoodsEvaluate goodsEvaluate = goodsEvaluateService.getById(pid);
            if (goodsEvaluate != null && goodsEvaluate.getComments() != null
                  && goodsEvaluate.getComments().size() > 0) {
               for (CommentInfo info : goodsEvaluate.getComments()) {
                  if (info != null)
                     if (CommentInfoEnum.currencyCoupon == info.getTypeEnum()) {
                        commentInfo = info;
                     }
               }
            }
         }
         JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(commentInfo));
      } catch (Exception e) {
         JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("查询失败"));
         e.printStackTrace();
      }
   }
   /**
    * 保存多个商品
    *
    * @param out
    */
   @RequestMapping(value = "saveMultipleGoods")
   public void saveMultipleGoods(String callback, String pid, String videoUrl, String goodsList,
         HttpServletRequest request, PrintWriter out) {
      try {
         MultipartHttpServletRequest fileRequest = null;
         if (request instanceof MultipartHttpServletRequest) {
            fileRequest = (MultipartHttpServletRequest) request;
         }
         goodsEvaluateService.saveMultipleGoods(pid, videoUrl, goodsList, fileRequest);
         JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult("保存成功"));
      } catch (GoodsEvaluateException e) {
         JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult(e.getMsg()));
      } catch (Exception e) {
         JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("保存失败"));
         e.printStackTrace();
         LogHelper.errorDetailInfo(e);
         LogHelper.test(e);
      }
   }
   /**
    * 获取多个商品信息
@@ -431,14 +407,14 @@
    * @param out
    */
   @RequestMapping(value = "saveActivityPic")
   public void saveActivityPic(String callback, String pid, ImgInfo imgInfo, HttpServletRequest request,
   public void saveActivityPic(String callback, String pid, ImgInfo imgInfo, String picUrls, HttpServletRequest request,
         PrintWriter out) {
      try {
         MultipartHttpServletRequest fileRequest = null;
         if (request instanceof MultipartHttpServletRequest) {
            fileRequest = (MultipartHttpServletRequest) request;
         }
         goodsEvaluateService.saveActivityPic(pid, imgInfo, fileRequest);
         goodsEvaluateService.saveActivityPic(pid, imgInfo,picUrls, fileRequest);
         JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult("保存成功"));
      } catch (GoodsEvaluateException e) {
         JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult(e.getMsg()));
@@ -460,19 +436,23 @@
      try {
         String videoPic = "";
         String videoUrl = "";
         String activityPic = "";
         String activityUrl = "";
         List<String> list = new ArrayList<String>();
         GoodsEvaluate goodsEvaluate = goodsEvaluateService.getById(pid);
         if (goodsEvaluate != null && goodsEvaluate.getImgList() != null && goodsEvaluate.getImgList().size() > 0) {
            activityUrl = goodsEvaluate.getJumpLink();
            List<ImgInfo> imgList = goodsEvaluate.getImgList();
            for (ImgInfo imgInfo : imgList) {
               ImgEnum type = imgInfo.getType();
               if (type == ImgEnum.video) {
                  videoPic = imgInfo.getUrl();
                  videoUrl = imgInfo.getVideoUrl();
               } else if (type == ImgEnum.activity) {
                  activityPic = imgInfo.getUrl();
                  activityUrl = imgInfo.getActivityUrl();
               } else {
                  list.add(imgInfo.getUrl());
                  if (StringUtil.isNullOrEmpty(activityUrl) && !StringUtil.isNullOrEmpty(imgInfo.getActivityUrl())) {
                     activityUrl  = imgInfo.getActivityUrl();
                  }
               }
            }
         }
@@ -480,7 +460,7 @@
         JSONObject data = new JSONObject();
         data.put("videoUrl", videoUrl);
         data.put("videoPic", videoPic);
         data.put("activityPic", activityPic);
         data.put("listPic", list);
         data.put("activityUrl", activityUrl);
         JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(data));
      } catch (Exception e) {
@@ -632,8 +612,7 @@
    * @param out
    */
   @RequestMapping(value = "query")
   public void query(String callback, Integer pageIndex, Integer pageSize, String key, Integer state,
         PrintWriter out) {
   public void query(String callback, Integer pageIndex, Integer pageSize, String key, Integer state, String typeEnum, PrintWriter out) {
      if (pageIndex == null || pageIndex < 1) {
         pageIndex = 1;
      }
@@ -642,7 +621,7 @@
      }
      try {
         List<GoodsEvaluate> list = goodsEvaluateService.query((pageIndex - 1) * pageSize, pageSize, key, state, 1);
         List<GoodsEvaluate> list = goodsEvaluateService.query((pageIndex - 1) * pageSize, pageSize, key, state, 1, typeEnum);
         if (list == null || list.size() == 0) {
            JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("暂无数据"));
            return;
@@ -664,7 +643,7 @@
            }
         }
         long count = goodsEvaluateService.count(key, state, 1);
         long count = goodsEvaluateService.count(key, state, 1, typeEnum);
         int totalPage = (int) (count % pageSize == 0 ? count / pageSize : count / pageSize + 1);
         PageEntity pe = new PageEntity(pageIndex, pageSize, count, totalPage);
@@ -699,7 +678,7 @@
      }
      try {
         List<GoodsEvaluate> list = goodsEvaluateService.query((pageIndex - 1) * pageSize, pageSize, key, state, 2);
         List<GoodsEvaluate> list = goodsEvaluateService.query((pageIndex - 1) * pageSize, pageSize, key, state, 2, null);
         if (list == null || list.size() == 0) {
            JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("暂无数据"));
            return;
@@ -721,7 +700,7 @@
            }
         }
         long count = goodsEvaluateService.count(key, state, 2);
         long count = goodsEvaluateService.count(key, state, 2, null);
         int totalPage = (int) (count % pageSize == 0 ? count / pageSize : count / pageSize + 1);
         PageEntity pe = new PageEntity(pageIndex, pageSize, count, totalPage);
@@ -758,7 +737,7 @@
         GoodsDetailVO goodsDetail = null;
         BigDecimal fanLiRate = hongBaoManageService.getFanLiRate();
         BigDecimal shareRate = hongBaoManageService.getShareRate();
         BigDecimal vipFanLiRate = hongBaoManageService.getVIPFanLiRate();
         BigDecimal vipFanLiRate = hongBaoManageService.getFanLiRate(UserLevelEnum.superVIP);
         ConfigParamsDTO params = new ConfigParamsDTO(fanLiRate, shareRate, Constant.MAX_REWARD_RATE, vipFanLiRate);
         if (commonGoods.getGoodsType() == Constant.SOURCE_TYPE_TAOBAO) {