admin
2020-07-03 651a15c78f668bef3859d9ed1bb7ad0b669d3600
fanli/src/main/java/com/yeshi/fanli/controller/client/v1/RecommendController.java
@@ -30,7 +30,6 @@
import com.yeshi.fanli.entity.accept.AcceptData;
import com.yeshi.fanli.entity.bus.homemodule.Special;
import com.yeshi.fanli.entity.bus.homemodule.SuperSpecial;
import com.yeshi.fanli.entity.bus.homemodule.SwiperPicture;
import com.yeshi.fanli.entity.bus.lable.QualityFactory;
import com.yeshi.fanli.entity.bus.recommend.Honest;
import com.yeshi.fanli.entity.bus.recommend.RecommendBanner;
@@ -49,6 +48,7 @@
import com.yeshi.fanli.entity.goods.CommonGoods;
import com.yeshi.fanli.entity.goods.ScanHistoryV2;
import com.yeshi.fanli.entity.system.BusinessSystem;
import com.yeshi.fanli.entity.system.ConfigKeyEnum;
import com.yeshi.fanli.entity.system.SystemClientParams;
import com.yeshi.fanli.entity.taobao.ClientTBPid;
import com.yeshi.fanli.entity.taobao.PidUser;
@@ -99,7 +99,7 @@
import com.yeshi.fanli.service.inter.taobao.TaoBaoGoodsUpdateService;
import com.yeshi.fanli.service.inter.taobao.TaoBaoShopService;
import com.yeshi.fanli.service.inter.taobao.TaoBaoUnionConfigService;
import com.yeshi.fanli.service.inter.taobao.dataoke.DaTaoKeGoodsDetailService;
import com.yeshi.fanli.service.inter.taobao.dataoke.DaTaoKeGoodsDetailV2Service;
import com.yeshi.fanli.service.inter.tlj.ConfigTaoLiJinService;
import com.yeshi.fanli.service.inter.tlj.UserTaoLiJinOriginService;
import com.yeshi.fanli.service.inter.tlj.UserTaoLiJinRecordService;
@@ -111,6 +111,7 @@
import com.yeshi.fanli.service.inter.user.UserInfoService;
import com.yeshi.fanli.util.Constant;
import com.yeshi.fanli.util.MoneyBigDecimalUtil;
import com.yeshi.fanli.util.RedisKeyEnum;
import com.yeshi.fanli.util.RedisManager;
import com.yeshi.fanli.util.StringUtil;
import com.yeshi.fanli.util.TaoBaoConstant;
@@ -124,6 +125,8 @@
import com.yeshi.fanli.util.taobao.TaoKeApiUtil;
import com.yeshi.fanli.util.taobao.TaoLiJinUtil;
import com.yeshi.fanli.vo.goods.taobao.TLJBuyHongBaoVO;
import com.yeshi.fanli.vo.homemodule.BannerVO;
import com.yeshi.fanli.vo.homemodule.SpecialVO;
import com.yeshi.fanli.vo.msg.ClientTextStyleVO;
import com.yeshi.fanli.vo.tlj.SpreadHongBao;
import com.yeshi.fanli.vo.user.UserSettingsVO;
@@ -241,7 +244,7 @@
   private TaoBaoShopService taoBaoShopService;
   @Resource
   private DaTaoKeGoodsDetailService daTaoKeGoodsDetailService;
   private DaTaoKeGoodsDetailV2Service daTaoKeGoodsDetailV2Service;
   @Resource
   private UserMoneyExtraService userMoneyExtraService;
@@ -405,7 +408,7 @@
         honestList.add(honest);
         if (acceptData.getPlatform().equalsIgnoreCase("ios")
               && configService.iosOnLining(Integer.parseInt(acceptData.getVersion()))) {
               && configService.iosOnLining(Integer.parseInt(acceptData.getVersion()),acceptData.getSystem())) {
            honest = new Honest();
            honest.setName("今日必抢");
            honest.setJumpDetail(detail);
@@ -679,11 +682,11 @@
         // taoBaoGoodsBriefExtra.setAuctionUrl(null);
         data.put("taobao", taobaoJson);
         String info = configService.get("detail_prompt");
         String info = configService.getValue(ConfigKeyEnum.detailPrompt.getKey(),acceptData.getSystem());
         data.put("info", info);
         String onlyInfo = configService.get("only_info");
         String onlyInfo = configService.getValue(ConfigKeyEnum.onlyInfo.getKey(),acceptData.getSystem());
         data.put("only", onlyInfo);
         data.put("helpUrl", configService.get("old_goods_detail_help_url"));
         data.put("helpUrl", configService.getValue(ConfigKeyEnum.oldGoodsDetailHelpUrl.getKey(),acceptData.getSystem()));
         int showType = taoBaoGoodsBriefExtra.getShowType();
         String price = "";
@@ -698,9 +701,9 @@
         data.put("shareTitle", taoBaoGoodsBriefExtra.getTitle());
         data.put("shareContent", "¥" + price + "元");
         data.put("shareImg", taoBaoGoodsBriefExtra.getPictUrl());
         String html = configService.get("downAPP");
         String html = configService.getValue(ConfigKeyEnum.downAPP.getKey(),acceptData.getSystem());
         data.put("downAPP", html);
         String shareSinaContent = configService.get("shareSinaContent");
         String shareSinaContent = configService.getValue("shareSinaContent",acceptData.getSystem());
         data.put("shareSina",
               "¥" + price + "元      送" + appName + "红包¥"
                     + taoBaoGoodsBriefExtra.getTaoBaoHongBaoInfo().getHongbao() + "元    "
@@ -754,7 +757,7 @@
      data.put("invalid", false);
      // IOS是否正在上线
      if ("ios".equalsIgnoreCase(acceptData.getPlatform())) {
         data.put("iosOnling", configService.iosOnLining(Integer.parseInt(acceptData.getVersion())));
         data.put("iosOnling", configService.iosOnLining(Integer.parseInt(acceptData.getVersion()),acceptData.getSystem()));
      }
      long startTime = java.lang.System.currentTimeMillis();
@@ -771,7 +774,7 @@
      LogHelper.test("获取PID耗时:" + (java.lang.System.currentTimeMillis() - startTime));
      // 是否在服务端进行转链
      boolean convertInServer = configService.isConvertTaoBaoLinkInServer();
      boolean convertInServer = configService.isConvertTaoBaoLinkInServer(acceptData.getSystem());
      final String clientPid = clientTBPid.getPid();
      List<String> taskList = new ArrayList<>();
      taskList.add("goods");
@@ -847,7 +850,7 @@
               });
            }
         } else if (task.equalsIgnoreCase("imgs")) {// 获取图文详情
            List<ImageInfo> imgs = redisManager.getTaoBaoGoodsDetailImgs(Long.parseLong(id));
            List<ImageInfo> imgs = redisManager.getTaoBaoGoodsDetailImgs(Long.parseLong(id),acceptData.getSystem());
            if (imgs != null && imgs.size() > 0) {
               detailImgs.clear();
               detailImgsSize.clear();
@@ -903,7 +906,7 @@
      goods.put("zkPrice", tb.getZkPrice().toString());
      BigDecimal proportion = manageService.getFanLiRate();
      String hongBao = TaoBaoUtil.getGoodsHongBaoInfo(tb, proportion);
      String hongBao = TaoBaoUtil.getGoodsHongBaoInfo(tb, proportion,false);
      goods.put("hongBao", hongBao);
      // 30天销量
@@ -1033,7 +1036,7 @@
      JSONObject data = new JSONObject();
      // 是否在服务端进行转链
      boolean convertInServer = configService.isConvertTaoBaoLinkInServer();
      boolean convertInServer = configService.isConvertTaoBaoLinkInServer(acceptData.getSystem());
      TaoBaoGoodsBrief tb = null;
      JSONObject ticket = new JSONObject();
      if (convertInServer) {
@@ -1204,10 +1207,10 @@
         List<ScanHistoryV2> list = scanHistoryV2Service.getScanHistoryByDeviceOrUid(
               StringUtil.isNullOrEmpty(uid) ? null : Long.parseLong(uid), acceptData.getDevice(), page, 20,
               Constant.SOURCE_TYPE_TAOBAO);
               Constant.SOURCE_TYPE_TAOBAO, true);
         long count = scanHistoryV2Service.getCountByDeviceOrUid(
               StringUtil.isNullOrEmpty(uid) ? null : Long.parseLong(uid), acceptData.getDevice(),
               Constant.SOURCE_TYPE_TAOBAO);
               Constant.SOURCE_TYPE_TAOBAO, true);
         JSONObject data = new JSONObject();
         data.put("count", count);
@@ -1305,8 +1308,7 @@
       * 
       */
      // if (Constant.IS_OUTNET) {
      String key = "linkParse-" + acceptData.getDevice() + "-" + id;
      String key = RedisKeyEnum.getRedisKey(RedisKeyEnum.taobaolinkParse, acceptData.getDevice() + "-" + id);
      String value = redisManager.getCommonString(key);
      if (!StringUtil.isNullOrEmpty(value)) {
         out.print(JsonUtil.loadFalseResult(11, "请求频率限制"));
@@ -1386,7 +1388,7 @@
                  TaoBaoGoodsBriefExtra extra = TaoBaoUtil.getTaoBaoGoodsBriefExtra(goods.getGoods(),
                        TaoBaoConstant.OWN_BUY_WITHOUT_FANLI_RATE + "", null);
                  String hongBao = TaoBaoUtil.getGoodsHongBaoInfo(goods.getGoods(),
                        TaoBaoConstant.OWN_BUY_WITHOUT_FANLI_RATE);
                        TaoBaoConstant.OWN_BUY_WITHOUT_FANLI_RATE,false);
                  TLJBuyHongBaoVO vo = new TLJBuyHongBaoVO();
                  vo.setLeft(goods.getLeftHongBaoCount());
                  vo.setMoney(hongBao);
@@ -1415,7 +1417,7 @@
         if (!StringUtil.isNullOrEmpty(imei) || !StringUtil.isNullOrEmpty(idfa)) {
            long startTime = java.lang.System.currentTimeMillis();
            TaoBaoSearchResult result = TaoKeApiUtil.guessDeviceLike(page, 50, imei, idfa);
            TaoBaoSearchResult result = TaoKeApiUtil.guessDeviceLike(page, 50, imei, idfa,"");
            if (result != null && result.getTaoBaoGoodsBriefs() != null) {
               // 筛选
@@ -1427,7 +1429,7 @@
               // filter
               try {
                  gList = daTaoKeGoodsDetailService.filterTaoBaoGoods(gList);
                  gList = daTaoKeGoodsDetailV2Service.filterTaoBaoGoods(gList);
               } catch (Exception e) {
               }
@@ -1580,123 +1582,10 @@
    * @param acceptData
    * @param out
    */
   @Deprecated
   @RequestMapping(value = "getNewRecommendInfo")
   public void getNewRecommendInfo(AcceptData acceptData, Long uid, String specialCard, String swiperCard,
         PrintWriter out) {
      BusinessSystem system = businessSystemService.getBusinessSystemCache(acceptData.getPlatform(),
            acceptData.getPackages());
      if (system == null) {
         out.print(JsonUtil.loadFalseResult(1, "系统不存在"));
         return;
      }
      List<SwiperPicture> listswiper = null;
      if (!StringUtil.isNullOrEmpty(specialCard)) {
         try {
            listswiper = swiperPictureService.getByBannerCard(swiperCard);
            if (listswiper == null) {
               listswiper = new ArrayList<SwiperPicture>();
            }
         } catch (Exception e) {
            e.printStackTrace();
         }
      }
      Special miaoShaSpecial = null;
      List<Special> honestList = new ArrayList<Special>();
      List<Special> specialList = new ArrayList<Special>();
      if (!StringUtil.isNullOrEmpty(specialCard)) {
         try {
            List<Special> listSpecial = specialService.listBySystemAndCard(specialCard, system.getId());
            if (listSpecial != null && listSpecial.size() > 0) {
               for (Special special : listSpecial) {
                  if ("限时秒杀".equals(special.getName())) {
                     miaoShaSpecial = special;
                     continue;
                  }
                  if ("arc".equals(special.getShowType())) {
                     // 同一行专题
                     honestList.add(special);
                  } else {
                     // 其他专题
                     specialList.add(special);
                  }
               }
            }
         } catch (Exception e) {
            e.printStackTrace();
         }
      }
      /* 限时秒杀 - 时间处理 */
      JSONObject msJSON = JSONObject.fromObject(new Gson().toJson(miaoShaSpecial));
      if (miaoShaSpecial != null) {
         // 获取秒杀
         int[] hours = new int[] { 0, 9, 12, 14, 16, 20, 22 };
         int hour = -1;
         Calendar calendar = Calendar.getInstance();
         calendar.setTimeInMillis(Long.parseLong(acceptData.getTime()));
         int nowHour = calendar.get(Calendar.HOUR_OF_DAY);
         for (int i = 0; i < hours.length - 1; i++) {
            if (nowHour >= hours[i] && nowHour < hours[i + 1]) {
               hour = hours[i + 1];
               break;
            }
         }
         if (hour < 0)
            hour = 24;
         long time = TimeUtil.convertToTimeTemp(TimeUtil.getGernalTime(calendar.getTimeInMillis(), "yyyy-MM-dd"),
               "yyyy-MM-dd") + 1000 * 60 * 60 * hour;
         msJSON.put("time", time);
      }
      JSONObject root = new JSONObject();
      root.put("banner", JsonUtil.getApiCommonGson().toJson(listswiper));
      root.put("honest", JsonUtil.getApiCommonGson().toJson(honestList));
      root.put("special", JsonUtil.getApiCommonGson().toJson(specialList));
      root.put("miaoSha", msJSON);
      // 增加邀请有奖
      JSONObject invite = new JSONObject();
      JumpDetailV2 jumpDetail = jumpDetailV2Service.getByTypeCache("invite");
      invite.put("jumpDetail", jumpDetail);
      invite.put("picture", configService.get("home_invite_banner"));
      if ("ios".equalsIgnoreCase(acceptData.getPlatform())
            && configService.iosOnLining(Integer.parseInt(acceptData.getVersion()))) {
         // 如果IOS当前版本处于审核状态就不返回
      } else {
         // 按照版本返回,版本覆盖足够后可删除
         if (("android".equalsIgnoreCase(acceptData.getPlatform()) && Integer.parseInt(acceptData.getVersion()) > 30)
               || ("ios".equalsIgnoreCase(acceptData.getPlatform())
                     && Integer.parseInt(acceptData.getVersion()) > 37)) {
            if (uid != null) {
               try {
                  UserSettingsVO vo = userCustomSettingsService.getMySettings(uid);
                  if (vo == null || vo.getNoInvitationBonus() == null || vo.getNoInvitationBonus() == 0)// 没有关闭邀请
                     root.put("invite", invite);
               } catch (UserCustomSettingsException e) {
                  e.printStackTrace();
               }
            } else
               root.put("invite", invite);
         }
      }
      out.print(JsonUtil.loadTrueResult(root));
   }
   /**
@@ -1712,33 +1601,33 @@
         int deviceSex = deviceSexService.getDeviceSex(acceptData.getDevice());
         // 1、专题模块
         JSONObject root = specialService.listCacheSpecialToIndex(acceptData, deviceSex);
         JSONObject root = specialService.listCacheSpecialToIndex(acceptData, deviceSex,acceptData.getSystem());
         // 2、顶部轮播图
         List<SwiperPicture> topPicList = getSwiperByCard("index_top");
         List<BannerVO> topPicList = getSwiperByCard("index_top", acceptData);
         if (topPicList == null) {
            topPicList = new ArrayList<SwiperPicture>();
            topPicList = new ArrayList<BannerVO>();
         }
         root.put("topPicList", JsonUtil.getApiCommonGson().toJson(topPicList));
         // 3、邀请有奖
         List<SwiperPicture> invitePicList = null;
         List<BannerVO> invitePicList = null;
         if ("ios".equalsIgnoreCase(acceptData.getPlatform())
               && configService.iosOnLining(Integer.parseInt(acceptData.getVersion()))) {
               && configService.iosOnLining(Integer.parseInt(acceptData.getVersion()),acceptData.getSystem())) {
            // 如果IOS当前版本处于审核状态就不返回
         } else {
            invitePicList = getSwiperByCard("index_invite");
            invitePicList = getSwiperByCard("index_invite", acceptData);
         }
         if (invitePicList == null) {
            invitePicList = new ArrayList<SwiperPicture>();
            invitePicList = new ArrayList<BannerVO>();
         }
         root.put("invitePicList", JsonUtil.getApiCommonGson().toJson(invitePicList));
         // 4、IOS的底部网页链接
         String platform = acceptData.getPlatform();
         if ("ios".equalsIgnoreCase(platform)) {
            root.put("htmlLink", configService.get("index_html_link_ios"));
            root.put("htmlLink", configService.getValue(ConfigKeyEnum.indexHtmlLinkIos.getKey(),acceptData.getSystem()));
         }
         root.put("spikeGoods", getSpikeGoodsContent(acceptData));
@@ -1761,22 +1650,23 @@
    * @param acceptData
    * @return
    */
   public List<SwiperPicture> getInvitePicList(Long uid, AcceptData acceptData) {
   public List<BannerVO> getInvitePicList(Long uid, AcceptData acceptData) {
      // 如果IOS当前版本处于审核状态就不返回
      if ("ios".equalsIgnoreCase(acceptData.getPlatform())
            && configService.iosOnLining(Integer.parseInt(acceptData.getVersion()))) {
            && configService.iosOnLining(Integer.parseInt(acceptData.getVersion()),acceptData.getSystem())) {
         return null;
      }
      List<SwiperPicture> invitePicList = getSwiperByCard("index_invite");
      List<BannerVO> invitePicList = getSwiperByCard("index_invite", acceptData);
      return invitePicList;
   }
   public List<SwiperPicture> getSwiperByCard(String card) {
      List<SwiperPicture> swiperList = null;
   public List<BannerVO> getSwiperByCard(String card, AcceptData acceptData) {
      List<BannerVO> swiperList = null;
      try {
         swiperList = swiperPictureService.getByBannerCard(card);
         swiperList = swiperPictureService.getByBannerCardAndVersion(card, acceptData.getPlatform(),
               Integer.parseInt(acceptData.getVersion()),acceptData.getSystem());
      } catch (Exception e) {
         try {
            LogHelper.errorDetailInfo(e);
@@ -1825,8 +1715,8 @@
      nextTime.set(Calendar.MILLISECOND, 0);
      JSONArray array = null;
      String timekey = String.format("spikeGoods_hour-%s-%s", acceptData.getPlatform(), acceptData.getVersion());
      String cachekey = String.format("spikeGoodsList-%s-%s", acceptData.getPlatform(), acceptData.getVersion());
      String timekey = RedisKeyEnum.getRedisKey(RedisKeyEnum.spikeGoodsHour,acceptData.getPlatform() +"-"+acceptData.getVersion());
      String cachekey = RedisKeyEnum.getRedisKey(RedisKeyEnum.spikeGoodsList,acceptData.getPlatform() +"-"+acceptData.getVersion());
      String timeValue = redisManager.getCommonString(timekey);
      if (timeValue == null || !timeValue.equals(hour + "")) {
@@ -1863,7 +1753,7 @@
                  .toJson(TaoBaoUtil.getTaoBaoGoodsBriefExtra(taoBaoGoodsBrief, proportion.toString(), null)));
            goods.put("jumpDetail", jumpDetail);
            JSONObject params = new JSONObject();
            params.put("url", configService.get("spike_goods_link") + "?id=" + taoBaoGoodsBrief.getAuctionId());
            params.put("url", configService.getValue(ConfigKeyEnum.spikeGoodsLink.getKey(),acceptData.getSystem()) + "?id=" + taoBaoGoodsBrief.getAuctionId());
            goods.put("params", params);
            // 1.5.4及以后返回
@@ -1885,7 +1775,7 @@
      root.put("listgoods", array);
      JSONObject params = new JSONObject();
      params.put("url", configService.get("spike_goods_link"));
      params.put("url", configService.getValue(ConfigKeyEnum.spikeGoodsLink.getKey(),acceptData.getSystem()));
      root.put("params", params);
      root.put("jumpDetail", jumpDetail);
@@ -1911,7 +1801,6 @@
    * @param acceptData
    * @param id
    * @param uid
    * @param pageSource
    *            页面来源
    * @param out
    */
@@ -1936,7 +1825,7 @@
      // IOS是否正在上线
      if ("ios".equalsIgnoreCase(acceptData.getPlatform())) {
         String version = acceptData.getVersion();
         data.put("iosOnling", configService.iosOnLining(Integer.parseInt(version)));
         data.put("iosOnling", configService.iosOnLining(Integer.parseInt(version),acceptData.getSystem()));
      }
      long startTime = java.lang.System.currentTimeMillis();
@@ -1955,7 +1844,7 @@
      final List<TaoBaoGoodsBrief> goodsList = new ArrayList<>();
      // 是否在服务端进行转链
      boolean convertInServer = configService.isConvertTaoBaoLinkInServer();
      boolean convertInServer = configService.isConvertTaoBaoLinkInServer(acceptData.getSystem());
      JSONObject ticket = new JSONObject();
      TaoBaoGoodsBrief goods = null;
@@ -2071,7 +1960,7 @@
      // 大淘客商品过滤
      try {
         goods = daTaoKeGoodsDetailService.filterTaoBaoGoods(goods);
         goods = daTaoKeGoodsDetailV2Service.filterTaoBaoGoods(goods).getGoods();
      } catch (Exception e) {
         LogHelper.errorDetailInfo(e);
      }
@@ -2183,7 +2072,7 @@
         BigDecimal proportion = manageService.getFanLiRate();
         if ("taolijin".equalsIgnoreCase(from))
            proportion = manageService.getTLJShareRate(System.currentTimeMillis());
         hongBao = TaoBaoUtil.getGoodsHongBaoInfo(tb, proportion);
         hongBao = TaoBaoUtil.getGoodsHongBaoInfo(tb, proportion,false);
      }
      goodsJson.put("hongBao", hongBao);
@@ -2250,12 +2139,12 @@
      data.put("shareUrl", shareUrl);
      data.put("shareUsers", listShareUser);
      data.put("couponUsers", listCouponUser);
      data.put("detailWebUrl", "http://apph5.yeshitv.com/apppage/goods_img.html?id=" + id);
      data.put("detailWebUrl", "http://apph5.banliapp.com/apppage/goods_img.html?id=" + id);
      String noRebateHelpLink = null;
      // 商品链接
      String h5Url = String.format("http://%s%s?id=%s&appType=flq", configService.getH5Host(),
      String h5Url = String.format("http://%s%s?id=%s&appType=flq", configService.getH5Host(acceptData.getSystem()),
            Constant.systemCommonConfig.getShareGoodsPagePath(), tb.getAuctionId() + "");
      try {
         data.put("h5Url", HttpUtil.getShortLink(h5Url));
@@ -2342,7 +2231,7 @@
         }
      } else if (from != null && from.equals("taolijin_buy")) {
         noRebateHelpLink = configService.get("zigoulijian_nofanli_help");
         noRebateHelpLink = configService.getValue(ConfigKeyEnum.zigoulijianNofanliHelp.getKey(),acceptData.getSystem());
         // 查询分享库
         TLJBuyGoods buyGoods = tljBuyGoodsService.selectByAuctionIdAndDay(goods.getAuctionId(),
               TimeUtil.getGernalTime(System.currentTimeMillis(), "yyyy-MM-dd"));
@@ -2353,7 +2242,7 @@
         fanliValid = true;
         goodsJson.put("shareValid", false);
         String tljHongBao = TaoBaoUtil.getGoodsHongBaoMoney(goods, new BigDecimal(70)).toString();
         String tljHongBao = TaoBaoUtil.getGoodsHongBaoMoney(goods, new BigDecimal(70),false).toString();
         TLJBuyHongBaoVO vo = new TLJBuyHongBaoVO();
         vo.setLeft(buyGoods.getLeftHongBaoCount());
         vo.setMoney(tljHongBao);
@@ -2371,7 +2260,7 @@
      if (!StringUtil.isNullOrEmpty(noRebateHelpLink)) {
         data.put("noRebateHelpLink", noRebateHelpLink);
      } else {
         data.put("noRebateHelpLink", configService.get("no_rebate_help_link"));
         data.put("noRebateHelpLink", configService.getValue(ConfigKeyEnum.noRebateHelpLink.getKey(),acceptData.getSystem()));
      }
      // 取消分享活动
@@ -2425,7 +2314,7 @@
      List<String> detailImgs = new ArrayList<>();
      JSONArray detailImgsSize = new JSONArray();
      List<ImageInfo> imgs = redisManager.getTaoBaoGoodsDetailImgs(Long.parseLong(id));
      List<ImageInfo> imgs = redisManager.getTaoBaoGoodsDetailImgs(Long.parseLong(id),acceptData.getSystem());
      if (imgs != null && imgs.size() > 0) {
@@ -2552,24 +2441,21 @@
    */
   @RequestMapping(value = "getSpecialActivities")
   public void getSpecialActivities(AcceptData acceptData, Long uid, PrintWriter out, String callback) {
      int platformCode = Constant.getPlatformCode(acceptData.getPlatform());
      List<Special> listSpecial = specialService.listByVersion(0, Integer.MAX_VALUE, "special_activities",
            platformCode, Integer.parseInt(acceptData.getVersion()));
      List<SpecialVO> listSpecial = specialService.listByVersion(0, Integer.MAX_VALUE, "special_activities",
            acceptData.getPlatform(), Integer.parseInt(acceptData.getVersion()),acceptData.getSystem());
      List<Special> list = new ArrayList<Special>();
      List<SpecialVO> list = new ArrayList<SpecialVO>();
      if (listSpecial != null) {
         list.addAll(listSpecial);
      }
      for (int i = 0; i < list.size(); i++) {
         Special special = list.get(i);
         SpecialVO special = list.get(i);
         JumpDetailV2 jumpDetail = special.getJumpDetail();
         if (jumpDetail != null) {
            jumpDetail.setNeedLogin(special.isJumpLogin());
            special.setJumpDetail(jumpDetail);
         }
         String name = special.getName();
         if (StringUtil.isNullOrEmpty(name)) {
            continue;