admin
2019-12-19 833ec62ccef409ddeee5594af855ea050060257d
fanli/src/main/java/com/yeshi/fanli/controller/client/v1/UserInfoController.java
@@ -44,6 +44,7 @@
import com.yeshi.fanli.entity.AppVersionInfo;
import com.yeshi.fanli.entity.accept.AcceptData;
import com.yeshi.fanli.entity.bus.user.AccountMessage;
import com.yeshi.fanli.entity.bus.user.BindRemind;
import com.yeshi.fanli.entity.bus.user.BindingAccount;
import com.yeshi.fanli.entity.bus.user.Extract;
import com.yeshi.fanli.entity.bus.user.ExtractRecord;
@@ -54,8 +55,8 @@
import com.yeshi.fanli.entity.bus.user.UserActiveLog;
import com.yeshi.fanli.entity.bus.user.UserInfo;
import com.yeshi.fanli.entity.bus.user.UserInfoExtra;
import com.yeshi.fanli.entity.bus.user.WeiXinUser;
import com.yeshi.fanli.entity.bus.user.UserInfoModifyRecord.ModifyTypeEnum;
import com.yeshi.fanli.entity.bus.user.WeiXinUser;
import com.yeshi.fanli.entity.common.AdminUser;
import com.yeshi.fanli.entity.common.Config;
import com.yeshi.fanli.entity.goods.CollectionGoodsV2;
@@ -88,8 +89,11 @@
import com.yeshi.fanli.service.inter.order.LostOrderService;
import com.yeshi.fanli.service.inter.order.OrderService;
import com.yeshi.fanli.service.inter.order.config.HongBaoManageService;
import com.yeshi.fanli.service.inter.redpack.RedPackBalanceService;
import com.yeshi.fanli.service.inter.redpack.RedPackForbidService;
import com.yeshi.fanli.service.inter.tlj.UserTaoLiJinDetailService;
import com.yeshi.fanli.service.inter.user.AccountMessageService;
import com.yeshi.fanli.service.inter.user.BindRemindService;
import com.yeshi.fanli.service.inter.user.MaskKeyService;
import com.yeshi.fanli.service.inter.user.ShamUserService;
import com.yeshi.fanli.service.inter.user.SpreadUserImgService;
@@ -99,9 +103,11 @@
import com.yeshi.fanli.service.inter.user.UserInfoExtraService;
import com.yeshi.fanli.service.inter.user.UserInfoModifyRecordService;
import com.yeshi.fanli.service.inter.user.UserInfoService;
import com.yeshi.fanli.service.inter.user.UserRankService;
import com.yeshi.fanli.service.inter.user.UserShareGoodsRecordService;
import com.yeshi.fanli.service.inter.user.invite.ThreeSaleExtraInfoSerivce;
import com.yeshi.fanli.service.inter.user.invite.ThreeSaleSerivce;
import com.yeshi.fanli.service.inter.user.vip.UserVIPInfoService;
import com.yeshi.fanli.util.AESUtil;
import com.yeshi.fanli.util.Constant;
import com.yeshi.fanli.util.GsonUtil;
@@ -222,6 +228,21 @@
   @Resource
   private UserInfoModifyRecordService userInfoModifyRecordService;
   @Resource
   private BindRemindService bindRemindService;
   @Resource
   private RedPackBalanceService redPackBalanceService;
   @Resource
   private UserRankService userRankService;
   @Resource
   private UserVIPInfoService userVIPInfoService;
   @Resource
   private RedPackForbidService redPackForbidService;
   private static final String PASSWORD_MAX_ERROR = "password_max_error";
   private static final String EXTRACT_MIN_MONEY = "extract_min_money";
   private static final String EXTRACT_MAX_MONEY = "extract_max_money";
@@ -266,6 +287,8 @@
            userActiveLog.setVersionCode(acceptData.getVersion());
            userActiveLog.setOsVersion(acceptData.getOsVersion());
            userActiveLog.setDeviceType(acceptData.getDeviceType());
            userActiveLog.setDevice(acceptData.getDevice());
            userActiveLogService.addUserActiveLog(userActiveLog);
            outUserInfo(acceptData, out, remotIP, find, acceptData.getDevice());
@@ -608,7 +631,9 @@
            welfareCenterNews = userInfoExtra.getCouponNews();
         }
         if (userInfoExtra.getInviteCode() != null && userInfoExtra.getInviteCode().trim().length() > 0) {
         if (!StringUtil.isNullOrEmpty(userInfoExtra.getInviteCodeVip())) {
            invitCode = userInfoExtra.getInviteCodeVip();
         } else {
            invitCode = userInfoExtra.getInviteCode();
         }
      }
@@ -622,13 +647,8 @@
      final UserInfo uuser = user;
      ThreadUtil.run(new Runnable() {
         public void run() {
            try {
               // 获取邀请码:若无邀请码且存在有效的队员关系 则自动生成邀请码
               userInfoExtraService.getUserInviteCode(uuser.getId());
            } catch (UserInfoExtraException e) {
               e.printStackTrace();
            }
            // 获取邀请码:若无邀请码且存在有效的队员关系 则自动生成邀请码
            userInfoExtraService.getInviteCodeByUid(uuser.getId());
            LogHelper.userInfo(GsonUtil.toJsonExpose(uuser));
            uuser.setLastLoginIp(remotIP);
@@ -1208,9 +1228,9 @@
      } else if (etype == 3) {
         out.print(JsonUtil.loadFalseResult("提现金额大于我的红包"));
      } else if (etype == 111) {
         out.print(JsonUtil.loadFalseResult("更换了手机号后7天内不允许提现"));
         out.print(JsonUtil.loadFalseResult("修改手机号后,7天内无法提现"));
      } else if (etype == 110) {
         out.print(JsonUtil.loadFalseResult("有维权订单尚未扣款"));
         out.print(JsonUtil.loadFalseResult("有售后订单尚未扣款"));
      }
   }
@@ -1683,7 +1703,7 @@
            }
            boolean hasCode = false;
            String inviteCode = userInfoExtraService.getUserInviteCode(uid);
            String inviteCode = userInfoExtraService.getInviteCodeByUid(uid);
            if (inviteCode != null && inviteCode.trim().length() > 0) {
               hasCode = true; // 已有邀请码
            } else {
@@ -1700,8 +1720,6 @@
            resultData.put("boss", bossData);
         }
         out.print(JsonUtil.loadTrueResult(resultData));
      } catch (UserInfoExtraException e) {
         out.print(JsonUtil.loadFalseResult(e.getMsg()));
      } catch (Exception e) {
         out.print(JsonUtil.loadFalseResult("统计失败"));
         e.printStackTrace();
@@ -1758,7 +1776,7 @@
            }
            boolean hasCode = false;
            String inviteCode = userInfoExtraService.getUserInviteCode(uid);
            String inviteCode = userInfoExtraService.getInviteCodeByUid(uid);
            if (inviteCode != null && inviteCode.trim().length() > 0) {
               hasCode = true; // 已有邀请码
            } else {
@@ -1773,8 +1791,6 @@
            resultData.put("boss", bossData);
         }
         out.print(JsonUtil.loadTrueResult(resultData));
      } catch (UserInfoExtraException e) {
         out.print(JsonUtil.loadFalseResult(e.getMsg()));
      } catch (Exception e) {
         out.print(JsonUtil.loadFalseResult("统计失败"));
         e.printStackTrace();
@@ -1825,7 +1841,7 @@
         resultData.put("boss", bossData);
         boolean hasCode = false;
         String inviteCode = userInfoExtraService.getUserInviteCode(uid);
         String inviteCode = userInfoExtraService.getInviteCodeByUid(uid);
         if (inviteCode != null && inviteCode.trim().length() > 0) {
            hasCode = true; // 已有邀请码
         } else {
@@ -1836,8 +1852,6 @@
         out.print(JsonUtil.loadTrueResult(resultData));
      } catch (UserInfoExtraException e) {
         out.print(JsonUtil.loadFalseResult(e.getMsg()));
      } catch (Exception e) {
         out.print(JsonUtil.loadFalseResult("统计失败"));
         e.printStackTrace();
@@ -2013,7 +2027,7 @@
      try {
         String inviteCode = userInfoExtraService.getUserInviteCode(uid);
         String inviteCode = userInfoExtraService.getInviteCodeByUid(uid);
         JSONObject inviteData = new JSONObject();
         if (inviteCode == null || inviteCode.trim().length() == 0) {
@@ -2031,8 +2045,6 @@
         out.print(JsonUtil.loadTrueResult(data));
      } catch (UserInfoExtraException e) {
         out.print(JsonUtil.loadFalseResult(e.getMsg()));
      } catch (Exception e) {
         out.print(JsonUtil.loadFalseResult("获取失败"));
         e.printStackTrace();
@@ -2073,6 +2085,7 @@
         userActiveLog.setVersionCode(acceptData.getVersion());
         userActiveLog.setOsVersion(acceptData.getOsVersion());
         userActiveLog.setDeviceType(acceptData.getDeviceType());
         userActiveLog.setDevice(acceptData.getDevice());
         userActiveLogService.addUserActiveLog(userActiveLog);
         // 处理用户信息
@@ -2121,11 +2134,13 @@
            if (userInfoExtra.getCouponNews() != null) {
               welfareCenterNews = userInfoExtra.getCouponNews();
            }
            if (userInfoExtra.getInviteCode() != null && userInfoExtra.getInviteCode().trim().length() > 0) {
            // vip邀请码优先
            if (!StringUtil.isNullOrEmpty(userInfoExtra.getInviteCodeVip())) {
               invitCode = userInfoExtra.getInviteCodeVip();
            } else if (!StringUtil.isNullOrEmpty(userInfoExtra.getInviteCode())) {
               invitCode = userInfoExtra.getInviteCode();
            }
            if (userInfoExtra.getUserRank() != null) {
               String picture = userInfoExtra.getUserRank().getPicture();
               String icon = userInfoExtra.getUserRank().getIcon();
@@ -2147,22 +2162,43 @@
         }
         // 1.6.5 之后返回 微信号提示
         if (VersionUtil.greaterThan_1_6_5(acceptData.getPlatform(), acceptData.getVersion()))
            userInfo.setWeiXinTip("添加微信号后,你的邀请人和一级队员可以通过微信与你建立联系。");
            userInfo.setWeiXinTip("添加微信号后,你的邀请人和直接粉丝可以通过微信与你建立联系。");
         // 查询是否为VIP
         if (VersionUtil.greaterThan_2_1(acceptData.getPlatform(), acceptData.getVersion())) {
            userInfo.setVip(userVIPInfoService.isVIP(uid));
         }
         data.put("user", JsonUtil.getConvertBigDecimalToStringBuilder(gsonBuilder).create().toJson(userInfo));
         data.put("invitCode", invitCode); // 邀请码
         if (!StringUtil.isNullOrEmpty(userInfoExtra.getInviteCodeVip()))
            data.put("invitCodeUpdated", true);// 邀请码是否已经修改过
         else
            data.put("invitCodeUpdated", false);
         data.put("welfareCenterNews", welfareCenterNews);// 福利中心消息
         data.put("vipLink", configService.get("vip_link"));// 超级会员升级链接
         // 2.0.1之后绑定手机号
         if (VersionUtil.greaterThan_2_0_1(acceptData.getPlatform(), acceptData.getVersion())) {
            boolean bindPhone = false;
            if (StringUtil.isNullOrEmpty(userInfo.getPhone()))
               bindPhone = bindRemindService.bindRemind(uid, BindRemind.TYPE_PHONE);
            data.put("bindPhone", bindPhone);
         }
         // 2.0.2 版本
         if (VersionUtil.greaterThan_2_1(acceptData.getPlatform(), acceptData.getVersion())) {
            boolean verifyForbid = redPackForbidService.verifyForbid(uid);
            data.put("redPackLock", verifyForbid);
         }
         out.print(JsonUtil.loadTrueResult(data));
         final UserInfo uuser = userInfo;
         ThreadUtil.run(new Runnable() {
            public void run() {
               try {
                  // 获取邀请码:若无邀请码且存在有效的队员关系 则自动生成邀请码
                  userInfoExtraService.getUserInviteCode(uuser.getId());
               } catch (UserInfoExtraException e) {
                  e.printStackTrace();
               }
               // 获取邀请码:若无邀请码且存在有效的队员关系 则自动生成邀请码
               userInfoExtraService.getInviteCodeByUid(uuser.getId());
               // 更新用户附加信息,老用户不存在的需要添加
               try {
@@ -2268,7 +2304,7 @@
    */
   @RequestMapping(value = "saveInfo")
   public void saveInfo(AcceptData acceptData, String nickName, String weiXin, Integer sex, Long uid,
         PrintWriter out) {
         String inviteCode, PrintWriter out) {
      try {
         if (uid == null) {
            out.print(JsonUtil.loadFalseResult("用户未登录"));
@@ -2321,6 +2357,28 @@
               userInfoModifyRecordService.addModifyRecord(uid, ModifyTypeEnum.gender, sex + "");
            }
         }
         if (!StringUtil.isNullOrEmpty(inviteCode)) {// 邀请码不为空
            inviteCode = inviteCode.trim();
            if (inviteCode.length() >= 4 && inviteCode.length() <= 12) {
               if (!userVIPInfoService.isVIP(uid)) {
                  out.print(JsonUtil.loadFalseResult(20, "只有超级会员才能修改"));
                  return;
               }
               try {
                  userInfoExtraService.updateInviteCodeVip(inviteCode, uid);
                  out.print(JsonUtil.loadTrueResult("保存成功"));
                  return;
               } catch (UserInfoExtraException e) {
                  out.print(JsonUtil.loadFalseResult(e.getCode(), e.getMessage()));
               }
            } else {
               out.print(JsonUtil.loadFalseResult(1, "邀请码必须为4到12位"));
               return;
            }
         }
         out.print(JsonUtil.loadTrueResult("保存成功"));
      } catch (UserInfoException e) {
         out.print(JsonUtil.loadFalseResult(e.getMsg()));