admin
2019-07-30 573c491b4a1ba60e12a5678a01c1546c0077c1ee
fanli/src/main/java/com/yeshi/fanli/controller/client/v1/ConfigController.java
@@ -13,6 +13,10 @@
import com.yeshi.fanli.entity.accept.AcceptData;
import com.yeshi.fanli.entity.bus.homemodule.FloatAD;
import com.yeshi.fanli.entity.bus.msg.MsgDeviceReadState;
import com.yeshi.fanli.entity.bus.tlj.DeviceTaoLiJinRecord;
import com.yeshi.fanli.entity.bus.tlj.UserTaoLiJinOrigin;
import com.yeshi.fanli.entity.bus.tlj.UserTaoLiJinOrigin.TaoLiJinOriginEnum;
import com.yeshi.fanli.entity.bus.user.UserActiveLog;
import com.yeshi.fanli.entity.config.AppHomeFloatImg;
import com.yeshi.fanli.entity.taobao.ClientTBPid;
import com.yeshi.fanli.service.inter.common.JumpDetailV2Service;
@@ -20,11 +24,15 @@
import com.yeshi.fanli.service.inter.homemodule.FloatADService;
import com.yeshi.fanli.service.inter.msg.MsgDeviceReadStateService;
import com.yeshi.fanli.service.inter.taobao.TaoBaoUnionConfigService;
import com.yeshi.fanli.service.inter.tlj.DeviceTaoLiJinRecordService;
import com.yeshi.fanli.service.inter.tlj.UserTaoLiJinOriginService;
import com.yeshi.fanli.service.inter.user.TBPidService;
import com.yeshi.fanli.service.inter.user.UserActiveLogService;
import com.yeshi.fanli.service.inter.user.UserInfoExtraService;
import com.yeshi.fanli.util.Constant;
import com.yeshi.fanli.util.StringUtil;
import com.yeshi.fanli.util.ThreadUtil;
import com.yeshi.fanli.util.VersionUtil;
import net.sf.json.JSONObject;
@@ -59,14 +67,26 @@
   @Resource
   private MsgDeviceReadStateService msgDeviceReadStateService;
   @Resource
   private UserTaoLiJinOriginService uerTaoLiJinOriginService;
   @Resource
   private DeviceTaoLiJinRecordService deviceTaoLiJinRecordService;
   @Resource
   private UserActiveLogService userActiveLogService;
   /**
    * 首页配置信息
    * s 首页配置信息
    * 
    * @param acceptData
    * @param out
    */
   @RequestMapping(value = "getHomeConfig", method = RequestMethod.POST)
   public void getHomeConfig(AcceptData acceptData, Long uid, PrintWriter out) {
      if (uid != null && uid == 0L)
         uid = null;
      AppHomeFloatImg appHomeFloatImg = configService.getAppHomeFloatImg();
      if ("ios".equalsIgnoreCase(acceptData.getPlatform()) && !Constant.IS_TEST) {
         appHomeFloatImg = null;
@@ -82,8 +102,28 @@
         data.put("floatNotifyImg", notifyImg);
      }
      // 悬浮大图 1.5.2 -2019.3.20
      FloatAD floatAD = floatADService.getEffectiveFloatAD(FloatAD.POSITION_INDEX);
      FloatAD floatAD = null;
      if (VersionUtil.greaterThan_1_5_60(acceptData.getPlatform(), acceptData.getVersion())) {
         if (uid == null) {
            DeviceTaoLiJinRecord deviceRecord = deviceTaoLiJinRecordService.getByDevice(acceptData.getDevice());
            if (deviceRecord == null) {
               floatAD = floatADService.getEffectiveFloatAD(FloatAD.POSITION_INDEX, 1);
            }
         } else {
            UserTaoLiJinOrigin userTaoLiJin = uerTaoLiJinOriginService.getByUidAndOrigin(uid,
                  TaoLiJinOriginEnum.newbiesWin.name());
            if (userTaoLiJin == null) {
               floatAD = floatADService.getEffectiveFloatAD(FloatAD.POSITION_INDEX, 1);
            }
         }
      }
      // 无新人弹框 则查询默认
      if (floatAD == null) {
         floatAD = floatADService.getEffectiveFloatAD(FloatAD.POSITION_INDEX, 0);
      }
      if (floatAD != null) {
         JSONObject detail = new JSONObject();
         detail.put("img", floatAD.getPicture());
@@ -91,13 +131,7 @@
         detail.put("params", floatAD.getParams());
         detail.put("showTime", floatAD.getShowMode());
         detail.put("accountLogin", floatAD.isJumpNeedLogin());
         if (uid != null && userInfoExtraService.isNewUser(uid)) {
            // 新用户
            data.put("floatImgDetail", detail);
         } else {
            data.put("floatImgDetail", detail);
         }
         data.put("floatImgDetail", detail);
      }
      // 领券帮助链接,1.5.2后生效
@@ -110,6 +144,47 @@
         data.put("htmlLink", configService.get("index_html_link_android"));
      }
      // 判断新老用户
      UserActiveLog da = null;
      if (uid != null)
         da = userActiveLogService.getFirstActiveInfo(uid);
      // 新人
      if (da == null || (System.currentTimeMillis() - da.getCreateTime().getTime()) <= 1000 * 60 * 60 * 24 * 15L) {
         data.put("userTimeType", 0);
      } else {// 老人
         data.put("userTimeType", 1);
      }
      data.put("hotFuctionLink", configService.get("hot_function_url"));
      out.print(JsonUtil.loadTrueResult(data));
   }
   /**
    * 消息中心弹框
    *
    * @param acceptData
    * @param uid
    * @param out
    */
   @RequestMapping(value = "getMSGConfig", method = RequestMethod.POST)
   public void getMSGConfig(AcceptData acceptData, Long uid, PrintWriter out) {
      JSONObject data = new JSONObject();
      boolean show = false;
      if (uid != null) {
         show = uerTaoLiJinOriginService.hasRankHongBao(uid);
      }
      if (show) {
         FloatAD floatAD = floatADService.getEffectiveFloatAD(FloatAD.POSITION_MSGCENTER, null);
         if (floatAD != null) {
            JSONObject detail = new JSONObject();
            detail.put("img", floatAD.getPicture());
            detail.put("jumpDetail", floatAD.getJumpDetail());
            detail.put("params", floatAD.getParams());
            detail.put("showTime", floatAD.getShowMode());
            detail.put("accountLogin", floatAD.isJumpNeedLogin());
            data.put("floatImgDetail", detail);
         }
      }
      out.print(JsonUtil.loadTrueResult(data));
   }
@@ -273,7 +348,19 @@
                  "android".equalsIgnoreCase(acceptData.getPlatform()) ? 1 : 2);
         }
      });
   }
   /**
    * 获取邀请码帮助链接
    *
    * @param acceptData
    * @param out
    */
   @RequestMapping(value = "getInviteCodeInputHelp", method = RequestMethod.POST)
   public void getInviteCodeInputHelp(AcceptData acceptData, PrintWriter out) {
      JSONObject data = new JSONObject();
      data.put("helpUrl", configService.get("invite_code_input_help"));
      out.print(JsonUtil.loadTrueResult(data));
   }
}