yujian
2020-06-09 554de444b87aab5f93cb1593a8095612cf9479a7
fanli/src/main/java/com/yeshi/fanli/controller/client/v2/TaoLiJinControllerV2.java
@@ -33,6 +33,8 @@
import com.yeshi.fanli.entity.bus.tlj.UserTaoLiJinDetail.TaoLiJinDetailTypeEnum;
import com.yeshi.fanli.entity.bus.tlj.UserTaoLiJinNewbies;
import com.yeshi.fanli.entity.bus.user.UserMoneyExtra;
import com.yeshi.fanli.entity.bus.user.vip.UserLevelEnum;
import com.yeshi.fanli.entity.system.ConfigKeyEnum;
import com.yeshi.fanli.entity.taobao.ShareHotGoods;
import com.yeshi.fanli.entity.taobao.TLJBuyGoods;
import com.yeshi.fanli.entity.taobao.TLJFreeBuyGoods;
@@ -48,6 +50,7 @@
import com.yeshi.fanli.service.inter.money.UserMoneyExtraService;
import com.yeshi.fanli.service.inter.monitor.BusinessEmergent110Service;
import com.yeshi.fanli.service.inter.monitor.MonitorService;
import com.yeshi.fanli.service.inter.order.OrderHongBaoMoneyComputeService;
import com.yeshi.fanli.service.inter.order.config.HongBaoManageService;
import com.yeshi.fanli.service.inter.redpack.UserTaoLiJinNewbiesService;
import com.yeshi.fanli.service.inter.taobao.ShareHotGoodsService;
@@ -71,6 +74,7 @@
import com.yeshi.fanli.vo.goods.MoneyInfoVO;
import com.yeshi.fanli.vo.goods.OtherInfo;
import com.yeshi.fanli.vo.goods.taobao.TLJBuyHongBaoVO;
import com.yeshi.fanli.vo.homemodule.BannerVO;
import com.yeshi.fanli.vo.msg.ClientTextStyleVO;
import com.yeshi.fanli.vo.redpack.TaoLiJinWinDetailVO;
import com.yeshi.fanli.vo.tlj.ReduceHongBao;
@@ -147,13 +151,15 @@
   @Resource
   private SwiperPictureService swiperPictureService;
   @Resource
   private UserTaoLiJinNewbiesService userTaoLiJinNewbiesService;
   @Resource
   private TLJFreeBuyGoodsService tljFreeBuyGoodsService;
   
   @Resource
   private OrderHongBaoMoneyComputeService orderHongBaoMoneyComputeService;
   /**
    * 获取淘礼金分享记录
@@ -379,8 +385,6 @@
      out.print(JsonUtil.loadTrueResult(data));
   }
   /**
    * 分享爆款商品-限于淘礼金
    * 
@@ -488,9 +492,8 @@
         }
      }
      BigDecimal fanLiRate = hongBaoManageService.getTLJShareRate(System.currentTimeMillis());
      BigDecimal shareRate = hongBaoManageService.getTLJShareRate(System.currentTimeMillis());
       ConfigParamsDTO paramsDTO = new ConfigParamsDTO(fanLiRate, shareRate, Constant.MAX_REWARD_RATE);
      ConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
            acceptData.getVersion());
      for (ShareHotGoods hotGoods : listHot) {
         TaoBaoGoodsBrief taoBaoGoodsBrief = hotGoods.getGoods();
@@ -508,7 +511,7 @@
         }
         GoodsDetailVO detailVO = GoodsDetailVOFactory.convertTaoBao(taoBaoGoodsBrief, paramsDTO);
         // 大于1.6.5的才会显示福利价
         if (com.yeshi.fanli.util.VersionUtil.greaterThan_1_6_5(acceptData.getPlatform(), acceptData.getVersion())) {
            if (detailVO.getCouponPrice() != null && detailVO.getCouponPrice().compareTo(new BigDecimal(0)) > 0)
@@ -516,7 +519,7 @@
            else
               detailVO.setZkPrice(detailVO.getZkPrice().subtract(spreadMoney));
         }
         // 去掉标签
         detailVO.setLabels(null);
@@ -582,7 +585,7 @@
         }
         // 计算推广红包
         BigDecimal spreadMoney = TaoBaoUtil.getGoodsHongBaoMoney(taoBaoGoodsBrief, proportion);
         BigDecimal spreadMoney = TaoBaoUtil.getGoodsHongBaoMoney(taoBaoGoodsBrief, proportion,true);
         // 推广红包 不能小于1
         if (spreadMoney.compareTo(new BigDecimal(1.0)) < 0) {
@@ -616,14 +619,15 @@
      data.put("count", array.size());
      data.put("list", array);
      if (page == 1) {
         List<SwiperPicture> bannerList = swiperPictureService.getByBannerCard("zigoulijian_banner");
         List<BannerVO> bannerList = swiperPictureService.getByBannerCardAndVersion("zigoulijian_banner",
               acceptData.getPlatform(), Integer.parseInt(acceptData.getVersion()));
         if (bannerList != null && bannerList.size() > 0)
            data.put("topPicture", bannerList.get(0).getSrc());
         else
            data.put("topPicture", "");
         data.put("ruleUrl", configService.get("zigoulijian_rule"));
         data.put("ruleUrl", configService.get(ConfigKeyEnum.zigoulijianRule.getKey()));
      }
      out.print(JsonUtil.loadTrueResult(data));
   }
@@ -649,7 +653,8 @@
            .excludeFieldsWithoutExposeAnnotation().setDateFormat("yyyy-MM-dd").create();
      BigDecimal proportion = TaoBaoConstant.OWN_BUY_WITHOUT_FANLI_RATE;
      ConfigParamsDTO paramsDTO = new ConfigParamsDTO(proportion, proportion, Constant.MAX_REWARD_RATE);
      ConfigParamsDTO paramsDTO = new ConfigParamsDTO(proportion, proportion, Constant.MAX_REWARD_RATE,
            hongBaoManageService.getFanLiRate(UserLevelEnum.superVIP));
      for (TLJBuyGoods hotGoods : listHot) {
         TaoBaoGoodsBrief taoBaoGoodsBrief = hotGoods.getGoods();
         if (taoBaoGoodsBrief == null) {
@@ -657,7 +662,7 @@
         }
         // 计算推广红包
         BigDecimal spreadMoney = TaoBaoUtil.getGoodsHongBaoMoney(taoBaoGoodsBrief, proportion);
         BigDecimal spreadMoney = TaoBaoUtil.getGoodsHongBaoMoney(taoBaoGoodsBrief, proportion,true);
         // 推广红包 不能小于1
         if (spreadMoney.compareTo(new BigDecimal(1.0)) < 0) {
@@ -703,14 +708,15 @@
      data.put("count", array.size());
      data.put("list", array);
      if (page == 1) {
         List<SwiperPicture> bannerList = swiperPictureService.getByBannerCard("zigoulijian_banner");
         List<BannerVO> bannerList = swiperPictureService.getByBannerCardAndVersion("zigoulijian_banner",
               acceptData.getPlatform(), Integer.parseInt(acceptData.getVersion()));
         if (bannerList != null && bannerList.size() > 0)
            data.put("topPicture", bannerList.get(0).getSrc());
         else
            data.put("topPicture", "");
         data.put("ruleUrl", configService.get("zigoulijian_rule"));
         data.put("ruleUrl", configService.get(ConfigKeyEnum.zigoulijianRule.getKey()));
      }
      out.print(JsonUtil.loadTrueResult(data));
   }
@@ -728,8 +734,6 @@
      out.print(JsonUtil.loadFalseResult(1, "抱歉,推广红包相关功能已下线!"));
   }
   /**
    * 新人红包详情
    * 
@@ -752,8 +756,9 @@
         }
         // 2、顶部轮播图
         List<SwiperPicture> oldtopPicList = swiperPictureService.getByBannerCard("redpack_win_detail_banner");
         List<SwiperPicture> topPicList = new ArrayList<>();
         List<BannerVO> oldtopPicList = swiperPictureService.getByBannerCardAndVersion(
               "redpack_win_detail_banner", acceptData.getPlatform(), Integer.parseInt(acceptData.getVersion()));
         List<BannerVO> topPicList = new ArrayList<>();
         if (oldtopPicList != null && oldtopPicList.size() > 0)
            topPicList.addAll(oldtopPicList);
@@ -765,8 +770,7 @@
         out.print(JsonUtil.loadFalseResult(1, "红包已被抢光啦"));
      }
   }
   /**
    * 新人免单列表
    * @param acceptData
@@ -779,31 +783,32 @@
         JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult(1, "用户未登录"));
         return;
      }
      String day = TimeUtil.getGernalTime(java.lang.System.currentTimeMillis());
      List<TLJFreeBuyGoods> listFree = tljFreeBuyGoodsService.listByDay(day);
      if (listFree == null) {
         listFree = new ArrayList<TLJFreeBuyGoods>();
      }
      JSONArray array = new JSONArray();
      Gson gson = JsonUtil.getConvertBigDecimalToStringSubZeroBuilder(new GsonBuilder())
            .excludeFieldsWithoutExposeAnnotation().setDateFormat("yyyy-MM-dd").create();
      BigDecimal fanLiRate = hongBaoManageService.getFanLiRate();
      ConfigParamsDTO paramsDTO = new ConfigParamsDTO(fanLiRate, fanLiRate, Constant.MAX_REWARD_RATE);
      ConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
            acceptData.getVersion());
      for (TLJFreeBuyGoods freeGoods : listFree) {
         TaoBaoGoodsBrief goods = freeGoods.getGoods();
         if (goods == null)
            continue;
         // 计算券后价  1<= n <= 2
         // 计算券后价 1<= n <= 2
         BigDecimal couplePrice = TaoBaoUtil.getAfterUseCouplePrice(goods);
         if (couplePrice.compareTo(new BigDecimal(1.0)) < 0 && couplePrice.compareTo(new BigDecimal(2.0)) > 0)
            continue;
         GoodsDetailVO detailVO = GoodsDetailVOFactory.convertTaoBao(goods, paramsDTO);
         // 专属标签
         List<ClientTextStyleVO> labels = new ArrayList<ClientTextStyleVO>();
         labels.add(new ClientTextStyleVO("新人专属", "#FE0014"));
@@ -825,12 +830,12 @@
            JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult(1, e.getMsg()));
            return;
         }
         String state = "已过期";
         BigDecimal balance = new BigDecimal(0);
         UserTaoLiJinNewbies winDetail = userTaoLiJinNewbiesService.selectByPrimaryKey(uid);
         if (winDetail != null) {
            balance = winDetail.getMoney() ;
            balance = winDetail.getMoney();
            if (winDetail.getEndTime().getTime() > java.lang.System.currentTimeMillis()) {
               try {
                  String remaining = DateUtil.dateDiff2(new Date(), winDetail.getEndTime());
@@ -841,10 +846,13 @@
               }
            }
         }
         String rule = configTaoLiJinService.getValueByKey("new_user_free_buy_list_rule");
         rule = rule.replace("{链接}", configService.get(ConfigKeyEnum.customerServiceLink.getKey()));
         data.put("state", state);
         data.put("balance","新人红包:" + balance.setScale(2) + "元");
         data.put("rule", configTaoLiJinService.getValueByKey("new_user_free_buy_list_rule"));
         data.put("balance", "新人红包:" + balance.setScale(2) + "元");
         data.put("rule", rule);
      }
      JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(data));
   }