From eec7e789a87863c25d92c10ad5dfc22ad80c448d Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期二, 14 七月 2020 12:36:48 +0800 Subject: [PATCH] 系统区分BUG修复 --- fanli/src/main/java/com/yeshi/fanli/controller/client/v1/UserAccountController.java | 2273 ++++++++++++++++++++++++++++------------------------------- 1 files changed, 1,080 insertions(+), 1,193 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/controller/client/v1/UserAccountController.java b/fanli/src/main/java/com/yeshi/fanli/controller/client/v1/UserAccountController.java index 5a3db7e..9a64e6b 100644 --- a/fanli/src/main/java/com/yeshi/fanli/controller/client/v1/UserAccountController.java +++ b/fanli/src/main/java/com/yeshi/fanli/controller/client/v1/UserAccountController.java @@ -1,29 +1,12 @@ package com.yeshi.fanli.controller.client.v1; -import java.io.PrintWriter; -import java.math.BigDecimal; - -import javax.annotation.Resource; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpSession; - -import org.springframework.stereotype.Controller; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RequestMethod; -import org.yeshi.utils.JsonUtil; -import org.yeshi.utils.encrypt.DESUtil; - import com.alipay.api.AlipayApiException; +import com.google.gson.Gson; import com.yeshi.fanli.dto.wx.WXAccountInfoDTO; import com.yeshi.fanli.entity.accept.AcceptData; -import com.yeshi.fanli.entity.bus.user.BindingAccount; -import com.yeshi.fanli.entity.bus.user.ForbiddenUserIdentifyCode; +import com.yeshi.fanli.entity.bus.user.*; import com.yeshi.fanli.entity.bus.user.ForbiddenUserIdentifyCode.ForbiddenUserIdentifyCodeTypeEnum; -import com.yeshi.fanli.entity.bus.user.LoginResult; -import com.yeshi.fanli.entity.bus.user.SMSHistory; -import com.yeshi.fanli.entity.bus.user.UserInfo; import com.yeshi.fanli.entity.bus.user.UserInfoModifyRecord.ModifyTypeEnum; -import com.yeshi.fanli.entity.bus.user.WeiXinUser; import com.yeshi.fanli.entity.push.DeviceActive; import com.yeshi.fanli.entity.system.BusinessSystem; import com.yeshi.fanli.entity.taobao.ClientTBPid; @@ -39,1343 +22,1247 @@ import com.yeshi.fanli.service.inter.homemodule.HomeNavbarUserService; import com.yeshi.fanli.service.inter.money.UserMoneyService; import com.yeshi.fanli.service.inter.money.extract.BindingAccountService; -import com.yeshi.fanli.service.inter.money.extract.ExtractService; import com.yeshi.fanli.service.inter.order.HongBaoV2Service; -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.push.DeviceActiveService; -import com.yeshi.fanli.service.inter.push.DeviceTokenHWService; -import com.yeshi.fanli.service.inter.push.DeviceTokenOPPOService; -import com.yeshi.fanli.service.inter.push.DeviceTokenVIVOService; -import com.yeshi.fanli.service.inter.push.DeviceTokenXMService; +import com.yeshi.fanli.service.inter.push.*; import com.yeshi.fanli.service.inter.taobao.TaoBaoUnionConfigService; -import com.yeshi.fanli.service.inter.tlj.UserTaoLiJinOriginService; -import com.yeshi.fanli.service.inter.user.ForbiddenUserIdentifyCodeService; -import com.yeshi.fanli.service.inter.user.ShamUserService; -import com.yeshi.fanli.service.inter.user.SpreadUserImgService; -import com.yeshi.fanli.service.inter.user.TBPidService; -import com.yeshi.fanli.service.inter.user.UserAccountBindingHistoryService; -import com.yeshi.fanli.service.inter.user.UserAccountService; -import com.yeshi.fanli.service.inter.user.UserInfoDeleteRecordService; -import com.yeshi.fanli.service.inter.user.UserInfoModifyRecordService; -import com.yeshi.fanli.service.inter.user.UserInfoService; -import com.yeshi.fanli.service.inter.user.UserShareGoodsRecordService; -import com.yeshi.fanli.service.inter.user.UserSystemCouponService; -import com.yeshi.fanli.service.inter.user.invite.ThreeSaleSerivce; -import com.yeshi.fanli.util.Constant; -import com.yeshi.fanli.util.GsonUtil; -import com.yeshi.fanli.util.RedisManager; -import com.yeshi.fanli.util.StringUtil; -import com.yeshi.fanli.util.ThreadUtil; +import com.yeshi.fanli.service.inter.user.*; +import com.yeshi.fanli.util.*; import com.yeshi.fanli.util.account.UserUtil; import com.yeshi.fanli.util.wx.WXLoginUtil; - import net.sf.json.JSONObject; +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; +import org.yeshi.utils.JsonUtil; +import org.yeshi.utils.encrypt.DESUtil; +import org.yeshi.utils.entity.ProxyIP; + +import javax.annotation.Resource; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpSession; +import java.io.PrintWriter; +import java.math.BigDecimal; /** * 璐︽埛绯荤粺 - * - * @author Administrator * + * @author Administrator */ @Controller @RequestMapping("api/v1/user") public class UserAccountController { - @Resource - private UserInfoService userInfoService; + @Resource + private UserInfoService userInfoService; - @Resource - private OrderService orderService; - @Resource - private HongBaoV2Service hongBaoV2Service; + @Resource + private HongBaoV2Service hongBaoV2Service; - @Resource - private BindingAccountService bindingAccountService; + @Resource + private BindingAccountService bindingAccountService; - @Resource - private ExtractService extractService; - @Resource - private ConfigService configService; + @Resource + private ConfigService configService; - @Resource - private BusinessSystemService businessSystemService; + @Resource + private BusinessSystemService businessSystemService; - @Resource - private ShamUserService shamUserService; - @Resource - private ThreeSaleSerivce threeSaleSerivce; + @Resource + private UserAccountService userAccountService; - @Resource - private LostOrderService lostOrderService; + @Resource + private RedisManager redisManager; - @Resource - private HongBaoManageService hongBaoManageService; + @Resource + private TBPidService tbPidService; - @Resource - private UserAccountService userAccountService; + @Resource + private DeviceTokenHWService deviceTokenHWService; - @Resource - private RedisManager redisManager; + @Resource + private DeviceTokenOPPOService deviceTokenOPPOService; - @Resource - private TBPidService tbPidService; + @Resource + private DeviceTokenXMService deviceTokenXMService; - @Resource - private DeviceTokenHWService deviceTokenHWService; + @Resource + private DeviceTokenVIVOService deviceTokenVIVOService; - @Resource - private DeviceTokenOPPOService deviceTokenOPPOService; + @Resource + private TaoBaoUnionConfigService taoBaoUnionConfigService; - @Resource - private DeviceTokenXMService deviceTokenXMService; + @Resource + private SpreadUserImgService spreadUserImgService; - @Resource - private DeviceTokenVIVOService deviceTokenVIVOService; + @Resource + private UserShareGoodsRecordService userShareGoodsRecordService; - @Resource - private TaoBaoUnionConfigService taoBaoUnionConfigService; + @Resource + private ForbiddenUserIdentifyCodeService forbiddenUserIdentifyCodeService; - @Resource - private SpreadUserImgService spreadUserImgService; - @Resource - private UserShareGoodsRecordService userShareGoodsRecordService; + @Resource + private UserMoneyService userMoneyService; - @Resource - private ForbiddenUserIdentifyCodeService forbiddenUserIdentifyCodeService; - @Resource - private UserSystemCouponService userSystemCouponService; + @Resource + private HomeNavbarUserService homeNavbarUserService; - @Resource - private UserMoneyService userMoneyService; - @Resource - private UserAccountBindingHistoryService userAccountBindingHistoryService; + @Resource + private UserInfoModifyRecordService userInfoModifyRecordService; - @Resource - private HomeNavbarUserService homeNavbarUserService; + @Resource + private DeviceActiveService deviceActiveService; - @Resource - private UserInfoDeleteRecordService userInfoDeleteRecordService; + private BusinessSystem getSystem(AcceptData acceptData) { + BusinessSystem system = businessSystemService.getBusinessSystemCache(acceptData.getPlatform(), + acceptData.getPackages(), acceptData.getSystem()); + return system; + } - @Resource - private UserTaoLiJinOriginService userTaoLiJinOriginService; + /** + * @param acceptData + * @param code + * @param vcode + * @param phone + * @param wxinstall + * @param tbOpenid + * @param tbNickName + * @param tbPortrait + * @param tbSession(娣樺疂session鏁版嵁,鍔犲瘑) + * @param out + */ + @RequestMapping(value = "login") + public void login(AcceptData acceptData, String code, String vcode, String phone, boolean wxinstall, + String tbOpenid, String tbNickName, String tbPortrait, String tbSession, int loginType, Boolean first, + HttpSession session, HttpServletRequest request, PrintWriter out) { - @Resource - private UserInfoModifyRecordService userInfoModifyRecordService; + // 2.0浠ヤ笅鐗堟湰涓嶅厑璁哥櫥褰� + if (!VersionUtil.greaterThan_2_0(acceptData.getPlatform(), acceptData.getVersion())) { + out.print("璇峰崌绾у埌鏈�鏂扮増鏈�"); + return; + } - @Resource - private DeviceActiveService deviceActiveService; + BusinessSystem system =getSystem(acceptData); + if (system == null) { + out.print(JsonUtil.loadFalseResult("绯荤粺涓嶅瓨鍦�")); + return; + } - 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"; + if (loginType == 3 && !Constant.IS_TEST)// 楠岃瘉鐭俊楠岃瘉鐮� + { + // 鑻规灉搴旂敤鍟嗗簵涓婄嚎娴嬭瘯鍙风爜 + if ("17316780233".equalsIgnoreCase(phone) && "258168".equalsIgnoreCase(vcode)) { + ; + } else { + String oldVcode = redisManager.getSMSVCode(phone, SMSHistory.TYPE_LOGIN); + if (StringUtil.isNullOrEmpty(oldVcode) || !oldVcode.equalsIgnoreCase(vcode)) { + out.print(JsonUtil.loadFalseResult(90001, "楠岃瘉鐮侀敊璇�")); + return; + } + } - /** - * - * @param acceptData - * @param code - * @param vcode - * @param phone - * @param wxinstall - * @param tbOpenid - * @param tbNickName - * @param tbPortrait - * @param tbSession(娣樺疂session鏁版嵁,鍔犲瘑) - * @param out - */ - @RequestMapping(value = "login") - public void login(AcceptData acceptData, String code, String vcode, String phone, boolean wxinstall, - String tbOpenid, String tbNickName, String tbPortrait, String tbSession, int loginType, Boolean first, - HttpSession session, HttpServletRequest request, PrintWriter out) { - BusinessSystem system = businessSystemService.getBusinessSystemCache(acceptData.getPlatform(), - acceptData.getPackages()); - if (system == null) { - out.print(JsonUtil.loadFalseResult("绯荤粺涓嶅瓨鍦�")); - return; - } + redisManager.clearSMSFrequencyLimit(phone, SMSHistory.TYPE_LOGIN); + } - if (loginType == 3 && !Constant.IS_TEST)// 楠岃瘉鐭俊楠岃瘉鐮� - { - // 鑻规灉搴旂敤鍟嗗簵涓婄嚎娴嬭瘯鍙风爜 - if ("17316780233".equalsIgnoreCase(phone) && "258168".equalsIgnoreCase(vcode)) { - ; - } else { - String oldVcode = redisManager.getSMSVCode(phone, SMSHistory.TYPE_LOGIN); - if (StringUtil.isNullOrEmpty(oldVcode) || !oldVcode.equalsIgnoreCase(vcode)) { - out.print(JsonUtil.loadFalseResult(90001, "楠岃瘉鐮侀敊璇�")); - return; - } - } + UserInfo tbUserInfo = new UserInfo(); + if (!StringUtil.isNullOrEmpty(tbSession)) { + try { + tbSession = DESUtil.decode(tbSession.replace("\n", ""), StringUtil.getBase64String("YeShiFANLI889*+"), + StringUtil.getBase64String("*M#34f?,")); + } catch (Exception e) { + e.printStackTrace(); + } + JSONObject tbs = JSONObject.fromObject(tbSession); + tbOpenid = tbs.optString("openId"); + tbNickName = tbs.optString("nick"); + tbPortrait = tbs.optString("avatarUrl"); + // 娣樺疂ID + tbUserInfo.setTaoBaoUid(tbs.optString("taobao_user_id")); + } - redisManager.clearSMSFrequencyLimit(phone, SMSHistory.TYPE_LOGIN); - } + tbUserInfo.setOpenid(tbOpenid); + tbUserInfo.setTbName(tbNickName); + tbUserInfo.setTbPic(tbPortrait); - UserInfo tbUserInfo = new UserInfo(); - if (!StringUtil.isNullOrEmpty(tbSession)) { - try { - tbSession = DESUtil.decode(tbSession.replace("\n", ""), StringUtil.getBase64String("YeShiFANLI889*+"), - StringUtil.getBase64String("*M#34f?,")); - } catch (Exception e) { - e.printStackTrace(); - } - JSONObject tbs = JSONObject.fromObject(tbSession); - tbOpenid = tbs.optString("openId"); - tbNickName = tbs.optString("nick"); - tbPortrait = tbs.optString("avatarUrl"); - // 娣樺疂ID - tbUserInfo.setTaoBaoUid(tbs.optString("taobao_user_id")); - } + try { + LoginResult result = userAccountService.login(request, acceptData, first, system.getAppid(), code, phone, + tbUserInfo, wxinstall, loginType); + if (result == null) + LogHelper.error("login-result涓虹┖鍊�"); - tbUserInfo.setOpenid(tbOpenid); - tbUserInfo.setTbName(tbNickName); - tbUserInfo.setTbPic(tbPortrait); + // if (result.getUser() != null) + // userAccountService.clearUserPortrait(result.getUser().getId()); - try { - LoginResult result = userAccountService.login(request, acceptData, first, system.getAppid(), code, phone, - tbUserInfo, wxinstall, loginType); - if (result == null) - LogHelper.error("login-result涓虹┖鍊�"); + JSONObject data = new JSONObject(); + data.put("user", GsonUtil.toJsonExpose(UserUtil.filterForClientUser(result.getUser()))); + if (result.getType() == LoginResult.TYPE_CONNECT) { + data.put("mainUser", GsonUtil.toJsonExpose(UserUtil.filterForClientUser(result.getMainUser()))); + data.put("lessUser", GsonUtil.toJsonExpose(UserUtil.filterForClientUser(result.getLessUser()))); + } + JSONObject root = new JSONObject(); + root.put("type", result.getType()); + root.put("data", data); + out.print(JsonUtil.loadTrueResult(root)); - // if (result.getUser() != null) - // userAccountService.clearUserPortrait(result.getUser().getId()); + final UserInfo uuser = result.getUser(); + ThreadUtil.run(new Runnable() { + public void run() { + try { + // 缁戝畾oppo,vivo鎺ㄩ�� + DeviceActive active = deviceActiveService.getFirstActiveInfo(acceptData.getDevice()); + if (active != null) { + deviceTokenOPPOService.bindUid(uuser.getId(), active.getId()); + deviceTokenVIVOService.bindUid(uuser.getId(), active.getId()); + deviceTokenXMService.bindUid(active.getId(), uuser.getId()); + } + } catch (Exception e) { + e.printStackTrace(); + } + } + }); - JSONObject data = new JSONObject(); - data.put("user", GsonUtil.toJsonExpose(UserUtil.filterForClientUser(result.getUser()))); - if (result.getType() == LoginResult.TYPE_CONNECT) { - data.put("mainUser", GsonUtil.toJsonExpose(UserUtil.filterForClientUser(result.getMainUser()))); - data.put("lessUser", GsonUtil.toJsonExpose(UserUtil.filterForClientUser(result.getLessUser()))); - } - JSONObject root = new JSONObject(); - root.put("type", result.getType()); - root.put("data", data); - out.print(JsonUtil.loadTrueResult(root)); + } catch (UserAccountException e) { + try { + LogHelper.error("鐧诲綍鍑洪敊:" + e.getCode() + "-" + e.getMessage()); + } catch (Exception e1) { + e1.printStackTrace(); + } + out.print(JsonUtil.loadFalseResult(e.getCode(), e.getMsg())); + } - final UserInfo uuser = result.getUser(); - ThreadUtil.run(new Runnable() { - public void run() { - try { - int platformType = 0; - String platform = acceptData.getPlatform(); - if ("android".equals(platform)) { - platformType = 1; - } else if ("ios".equals(platform)) { - platformType = 2; - } - userSystemCouponService.copyLotteryPrize(uuser.getId(), platformType, acceptData.getDevice()); - // 缁戝畾oppo,vivo鎺ㄩ�� - DeviceActive active = deviceActiveService.getFirstActiveInfo(acceptData.getDevice()); - if (active != null) { - deviceTokenOPPOService.bindUid(uuser.getId(), active.getId()); - deviceTokenVIVOService.bindUid(uuser.getId(), active.getId()); - deviceTokenXMService.bindUid(active.getId(), uuser.getId()); - } - } catch (Exception e) { - e.printStackTrace(); - } - } - }); + } - } catch (UserAccountException e) { - try { - LogHelper.cookieLog("鐧诲綍鍑洪敊:" + e.getCode() + "-" + e.getMessage()); - } catch (Exception e1) { - e1.printStackTrace(); - } - out.print(JsonUtil.loadFalseResult(e.getCode(), e.getMsg())); - } + /** + * 璐﹀彿娉ㄥ唽 + * + * @param acceptData + * @param tbOpenid + * @param tbNickName + * @param tbPortrait + * @param vcode + * @param phone + * @param session + * @param out + */ + @RequestMapping(value = "register") + public void register(AcceptData acceptData, String tbOpenid, String tbNickName, String tbPortrait, String vcode, + String phone, HttpServletRequest request, HttpSession session, PrintWriter out) { + // 2.0浠ヤ笅鐗堟湰涓嶅厑璁哥櫥褰� + if (!VersionUtil.greaterThan_2_0(acceptData.getPlatform(), acceptData.getVersion())) { + out.print("璇峰崌绾у埌鏈�鏂扮増鏈�"); + return; + } - } + BusinessSystem system = getSystem(acceptData); + if (system == null) { + out.print(JsonUtil.loadFalseResult("绯荤粺涓嶅瓨鍦�")); + return; + } - /** - * 璐﹀彿娉ㄥ唽 - * - * @param acceptData - * @param tbOpenid - * @param tbNickName - * @param tbPortrait - * @param vcode - * @param phone - * @param session - * @param out - */ - @RequestMapping(value = "register") - public void register(AcceptData acceptData, String tbOpenid, String tbNickName, String tbPortrait, String vcode, - String phone, HttpServletRequest request, HttpSession session, PrintWriter out) { - BusinessSystem system = businessSystemService.getBusinessSystemCache(acceptData.getPlatform(), - acceptData.getPackages()); - if (system == null) { - out.print(JsonUtil.loadFalseResult("绯荤粺涓嶅瓨鍦�")); - return; - } + if (!StringUtil.isNullOrEmpty(phone))// 楠岃瘉鐭俊楠岃瘉鐮� + { + String oldVcode = redisManager.getSMSVCode(phone, SMSHistory.TYPE_LOGIN); + if (StringUtil.isNullOrEmpty(oldVcode) || !oldVcode.equalsIgnoreCase(vcode)) { + out.print(JsonUtil.loadFalseResult(90001, "楠岃瘉鐮侀敊璇�")); + return; + } - if (!StringUtil.isNullOrEmpty(phone))// 楠岃瘉鐭俊楠岃瘉鐮� - { - String oldVcode = redisManager.getSMSVCode(phone, SMSHistory.TYPE_LOGIN); - if (StringUtil.isNullOrEmpty(oldVcode) || !oldVcode.equalsIgnoreCase(vcode)) { - out.print(JsonUtil.loadFalseResult(90001, "楠岃瘉鐮侀敊璇�")); - return; - } + redisManager.clearSMSFrequencyLimit(phone, SMSHistory.TYPE_LOGIN); + } - redisManager.clearSMSFrequencyLimit(phone, SMSHistory.TYPE_LOGIN); - } + if (StringUtil.isNullOrEmpty(phone) && StringUtil.isNullOrEmpty(tbOpenid)) { + out.print(JsonUtil.loadFalseResult(5, "璇蜂笂浼犳敞鍐屼俊鎭�")); + return; + } - if (StringUtil.isNullOrEmpty(phone) && StringUtil.isNullOrEmpty(tbOpenid)) { - out.print(JsonUtil.loadFalseResult(5, "璇蜂笂浼犳敞鍐屼俊鎭�")); - return; - } + UserInfo user = new UserInfo(); + user.setOpenid(tbOpenid); + user.setTbName(tbNickName); + user.setTbPic(tbPortrait); - UserInfo user = new UserInfo(); - user.setOpenid(tbOpenid); - user.setTbName(tbNickName); - user.setTbPic(tbPortrait); + user.setNickName(tbNickName); + user.setPortrait(tbPortrait); - user.setNickName(tbNickName); - user.setPortrait(tbPortrait); + user.setPhone(phone); + user.setAppId(system.getAppid()); + user.setLastLoginIp(request.getRemoteHost()); + user.setLastLoginTime(java.lang.System.currentTimeMillis()); + if (!StringUtil.isNullOrEmpty(phone)) + user.setLoginType(3); + else + user.setLoginType(1); + try { + userAccountService.register(user); + user = userInfoService.getUserByIdWithMybatis(user.getId()); + JSONObject data = new JSONObject(); + data.put("user", GsonUtil.toJsonExpose(UserUtil.filterForClientUser(user))); + out.print(JsonUtil.loadTrueResult(data)); + } catch (UserAccountException e) { + out.print(JsonUtil.loadFalseResult(e.getCode(), e.getMsg())); + } + } - user.setPhone(phone); - user.setAppId(system.getAppid()); - user.setLastLoginIp(request.getRemoteHost()); - user.setLastLoginTime(java.lang.System.currentTimeMillis()); - if (!StringUtil.isNullOrEmpty(phone)) - user.setLoginType(3); - else - user.setLoginType(1); - try { - userAccountService.register(user); - user = userInfoService.getUserByIdWithMybatis(user.getId()); - JSONObject data = new JSONObject(); - data.put("user", GsonUtil.toJsonExpose(UserUtil.filterForClientUser(user))); - out.print(JsonUtil.loadTrueResult(data)); - } catch (UserAccountException e) { - out.print(JsonUtil.loadFalseResult(e.getCode(), e.getMsg())); - } - } + /** + * 鑾峰彇鐢ㄦ埛ID + * + * @param acceptData + * @param code + * @param tbOpenid + * @param phone + * @param out + */ + @RequestMapping(value = "getuid") + public void getUid(AcceptData acceptData, String code, String tbOpenid, String phone, PrintWriter out) { + BusinessSystem system = getSystem(acceptData); + if (system == null) { + out.print(JsonUtil.loadFalseResult("绯荤粺涓嶅瓨鍦�")); + return; + } + UserInfo user = null; + if (!StringUtil.isNullOrEmpty(code)) { + WXAccountInfoDTO accountInfo = Constant.getWXAccount(acceptData.getPlatform(), acceptData.getVersion()); - /** - * 璐﹀彿鎵撻�� - * - * @param acceptData - * @param mainUid - * @param lessUid - * @param session - * @param out - */ - @RequestMapping(value = "connect") - public void connect(AcceptData acceptData, long mainUid, long lessUid, HttpSession session, PrintWriter out) { - BusinessSystem system = businessSystemService.getBusinessSystemCache(acceptData.getPlatform(), - acceptData.getPackages()); - if (system == null) { - out.print(JsonUtil.loadFalseResult("绯荤粺涓嶅瓨鍦�")); - return; - } + WeiXinUser weiXinUser = WXLoginUtil.getWeiXinUserWithSavePortrait(code, accountInfo.getAppId(), + accountInfo.getAppSecret()); + if (weiXinUser == null) { + out.print(JsonUtil.loadFalseResult(1, "鑾峰彇寰俊鐢ㄦ埛淇℃伅澶辫触")); + return; + } + try { + user = userAccountService.getUserInfoByWXUnionId(SystemInfoUtil.getSystem(acceptData), weiXinUser.getUnionid()); + } catch (UserAccountException e) { + try { + LogHelper.errorDetailInfo(e, null, "鑾峰彇鐢ㄦ埛淇℃伅鍑洪敊"); + } catch (Exception e1) { + e1.printStackTrace(); + } + } + } else if (!StringUtil.isNullOrEmpty(tbOpenid)) { + try { + user = userAccountService.getUserInfoByTaoBaoOpenId(SystemInfoUtil.getSystem(acceptData), tbOpenid); + } catch (UserAccountException e) { + try { + LogHelper.errorDetailInfo(e); + } catch (Exception e1) { + e1.printStackTrace(); + } + } + } else if (!StringUtil.isNullOrEmpty(phone)) { + try { + user = userAccountService.getUserInfoByPhone(SystemInfoUtil.getSystem(acceptData), phone); + } catch (UserAccountException e) { + try { + LogHelper.errorDetailInfo(e); + } catch (Exception e1) { + e1.printStackTrace(); + } + } + } - if (mainUid == 0 || lessUid == 0) { - out.print(JsonUtil.loadFalseResult(1, "璇蜂笂浼犳墦閫氱敤鎴稩D")); - return; - } + if (user == null) { + out.print(JsonUtil.loadFalseResult(2, "鐢ㄦ埛灏氭湭缁戝畾")); + return; + } else { + JSONObject data = new JSONObject(); + data.put("uid", user.getId()); + out.print(JsonUtil.loadTrueResult(data)); + return; + } + } - try { - userAccountService.connectUsers(new UserInfo(mainUid), new UserInfo(lessUid)); - UserInfo user = userInfoService.getUserByIdWithMybatis(mainUid); - JSONObject data = new JSONObject(); - data.put("user", GsonUtil.toJsonExpose(UserUtil.filterForClientUser(user))); - out.print(JsonUtil.loadTrueResult(data)); - } catch (UserAccountException e) { - out.print(JsonUtil.loadFalseResult(e.getCode(), e.getMsg())); - } - } + /** + * 缁戝畾鐢佃瘽鍙风爜 + * + * @param acceptData + * @param vcode + * @param phone + * @param out + */ + @RequestMapping(value = "bindPhone") + public void bindPhone(AcceptData acceptData, Long uid, String vcode, String phone, PrintWriter out) { + BusinessSystem system = getSystem(acceptData); + if (system == null) { + out.print(JsonUtil.loadFalseResult("绯荤粺涓嶅瓨鍦�")); + return; + } - /** - * 鑾峰彇鐢ㄦ埛ID - * - * @param acceptData - * @param code - * @param tbOpenid - * @param phone - * @param out - */ - @RequestMapping(value = "getuid") - public void getUid(AcceptData acceptData, String code, String tbOpenid, String phone, PrintWriter out) { - BusinessSystem system = businessSystemService.getBusinessSystemCache(acceptData.getPlatform(), - acceptData.getPackages()); - if (system == null) { - out.print(JsonUtil.loadFalseResult("绯荤粺涓嶅瓨鍦�")); - return; - } - UserInfo user = null; - if (!StringUtil.isNullOrEmpty(code)) { - WXAccountInfoDTO accountInfo = Constant.getWXAccount(acceptData.getPlatform(), acceptData.getVersion()); + if (StringUtil.isNullOrEmpty(vcode)) { + out.print(JsonUtil.loadFalseResult(3, "璇蜂笂浼犻獙璇佺爜")); + return; + } - WeiXinUser weiXinUser = WXLoginUtil.getWeiXinUserWithSavePortrait(code, accountInfo.getAppId(), - accountInfo.getAppSecret()); - if (weiXinUser == null) { - out.print(JsonUtil.loadFalseResult(1, "鑾峰彇寰俊鐢ㄦ埛淇℃伅澶辫触")); - return; - } - try { - user = userAccountService.getUserInfoByWXUnionId(system.getAppid(), weiXinUser.getUnionid()); - } catch (UserAccountException e) { - try { - LogHelper.errorDetailInfo(e, null, "鑾峰彇鐢ㄦ埛淇℃伅鍑洪敊"); - } catch (Exception e1) { - e1.printStackTrace(); - } - } - } else if (!StringUtil.isNullOrEmpty(tbOpenid)) { - try { - user = userAccountService.getUserInfoByTaoBaoOpenId(system.getAppid(), tbOpenid); - } catch (UserAccountException e) { - try { - LogHelper.errorDetailInfo(e); - } catch (Exception e1) { - e1.printStackTrace(); - } - } - } else if (!StringUtil.isNullOrEmpty(phone)) { - try { - user = userAccountService.getUserInfoByPhone(system.getAppid(), phone); - } catch (UserAccountException e) { - try { - LogHelper.errorDetailInfo(e); - } catch (Exception e1) { - e1.printStackTrace(); - } - } - } + if (StringUtil.isNullOrEmpty(phone)) { + out.print(JsonUtil.loadFalseResult(3, "璇蜂笂浼犵數璇濆彿鐮�")); + return; + } - if (user == null) { - out.print(JsonUtil.loadFalseResult(2, "鐢ㄦ埛灏氭湭缁戝畾")); - return; - } else { - JSONObject data = new JSONObject(); - data.put("uid", user.getId()); - out.print(JsonUtil.loadTrueResult(data)); - return; - } - } + String oldVCode = redisManager.getSMSVCode(phone, SMSHistory.TYPE_LOGIN); - /** - * 缁戝畾鐢佃瘽鍙风爜 - * - * @param acceptData - * @param vcode - * @param phone - * @param out - */ - @RequestMapping(value = "bindPhone") - public void bindPhone(AcceptData acceptData, Long uid, String vcode, String phone, PrintWriter out) { - BusinessSystem system = businessSystemService.getBusinessSystemCache(acceptData.getPlatform(), - acceptData.getPackages()); - if (system == null) { - out.print(JsonUtil.loadFalseResult("绯荤粺涓嶅瓨鍦�")); - return; - } + if (Constant.IS_OUTNET) { + if (!vcode.equalsIgnoreCase(oldVCode)) { + out.print(JsonUtil.loadFalseResult(90001, "楠岃瘉鐮侀敊璇�")); + return; + } + redisManager.clearSMSFrequencyLimit(phone, SMSHistory.TYPE_LOGIN); + } + try { + userAccountService.bindPhone(uid, phone); + UserInfo user = userInfoService.getUserByIdWithMybatis(uid); + // 鍒ゆ柇鐢佃瘽鍙风爜鏄惁宸茬粡灏佺 + ForbiddenUserIdentifyCode ic = forbiddenUserIdentifyCodeService + .listByTypeAndIdentifyCode(ForbiddenUserIdentifyCodeTypeEnum.phone, phone); + if (ic != null && ic.getEffective() != null && ic.getEffective()) { + out.print(JsonUtil.loadFalseResult(Constant.CODE_FORBIDDEN_USER, Constant.FORBIDDEN_USER_REASON_DESC)); + // 灏佺鐢ㄦ埛 + // 灏佺缁戝畾鐨勬甯哥敤鎴� + if (user != null && user.getState() != null && user.getState() == UserInfo.STATE_NORMAL) { + userAccountService.forbiddenUser(uid, "灏佺锛氱粦瀹氳灏佺鐨勭數璇濆彿鐮�"); + } + return; + } - if (StringUtil.isNullOrEmpty(vcode)) { - out.print(JsonUtil.loadFalseResult(3, "璇蜂笂浼犻獙璇佺爜")); - return; - } + JSONObject data = new JSONObject(); + data.put("user", UserUtil.filterForClientUser(user)); + out.print(JsonUtil.loadTrueResult(data)); + } catch (UserAccountException e) { + out.print(JsonUtil.loadFalseResult(e.getCode(), e.getMsg())); + } - if (StringUtil.isNullOrEmpty(phone)) { - out.print(JsonUtil.loadFalseResult(3, "璇蜂笂浼犵數璇濆彿鐮�")); - return; - } + } - String oldVCode = redisManager.getSMSVCode(phone, SMSHistory.TYPE_LOGIN); + /** + * 瑙g粦鐢佃瘽鍙风爜 + * + * @param acceptData + * @param uid + * @param phone + * @param out + */ + @RequestMapping(value = "unBindPhone") + public void unBindPhone(AcceptData acceptData, Long uid, String phone, PrintWriter out) { + BusinessSystem system = getSystem(acceptData); + if (system == null) { + out.print(JsonUtil.loadFalseResult("绯荤粺涓嶅瓨鍦�")); + return; + } - if (Constant.IS_OUTNET) { - if (!vcode.equalsIgnoreCase(oldVCode)) { - out.print(JsonUtil.loadFalseResult(90001, "楠岃瘉鐮侀敊璇�")); - return; - } - redisManager.clearSMSFrequencyLimit(phone, SMSHistory.TYPE_LOGIN); - } - try { - userAccountService.bindPhone(uid, phone); - UserInfo user = userInfoService.getUserByIdWithMybatis(uid); - // 鍒ゆ柇鐢佃瘽鍙风爜鏄惁宸茬粡灏佺 - ForbiddenUserIdentifyCode ic = forbiddenUserIdentifyCodeService - .listByTypeAndIdentifyCode(ForbiddenUserIdentifyCodeTypeEnum.phone, phone); - if (ic != null && ic.getEffective() != null && ic.getEffective()) { - out.print(JsonUtil.loadFalseResult(Constant.CODE_FORBIDDEN_USER, Constant.FORBIDDEN_USER_REASON_DESC)); - // 灏佺鐢ㄦ埛 - // 灏佺缁戝畾鐨勬甯哥敤鎴� - if (user != null && user.getState() != null && user.getState() == UserInfo.STATE_NORMAL) { - userAccountService.forbiddenUser(uid, "灏佺锛氱粦瀹氳灏佺鐨勭數璇濆彿鐮�"); - } - return; - } + if (StringUtil.isNullOrEmpty(phone)) { + out.print(JsonUtil.loadFalseResult(3, "璇蜂笂浼犵數璇濆彿鐮�")); + return; + } - JSONObject data = new JSONObject(); - data.put("user", UserUtil.filterForClientUser(user)); - out.print(JsonUtil.loadTrueResult(data)); - } catch (UserAccountException e) { - out.print(JsonUtil.loadFalseResult(e.getCode(), e.getMsg())); - } + try { + userAccountService.unBindPhone(uid, phone); + out.print(JsonUtil.loadTrueResult("瑙g粦鎴愬姛")); + } catch (UserAccountException e) { + out.print(JsonUtil.loadFalseResult(e.getCode(), e.getMsg())); + } - } + } - /** - * 瑙g粦鐢佃瘽鍙风爜 - * - * @param acceptData - * @param uid - * @param phone - * @param out - */ - @RequestMapping(value = "unBindPhone") - public void unBindPhone(AcceptData acceptData, Long uid, String phone, PrintWriter out) { - BusinessSystem system = businessSystemService.getBusinessSystemCache(acceptData.getPlatform(), - acceptData.getPackages()); - if (system == null) { - out.print(JsonUtil.loadFalseResult("绯荤粺涓嶅瓨鍦�")); - return; - } + /** + * 缁戝畾娣樺疂 + * + * @param acceptData + * @param uid + * @param tbOpenid + * @param tbNickName + * @param tbPortrait + * @param tbSession -娣樺疂鎺堟潈session + * @param out + */ - if (StringUtil.isNullOrEmpty(phone)) { - out.print(JsonUtil.loadFalseResult(3, "璇蜂笂浼犵數璇濆彿鐮�")); - return; - } + @RequestMapping(value = "bindTaoBao") + public void bindTaoBao(AcceptData acceptData, Long uid, String tbOpenid, String tbNickName, String tbPortrait, + String tbSession, PrintWriter out) { + BusinessSystem system = getSystem(acceptData); + if (system == null) { + out.print(JsonUtil.loadFalseResult("绯荤粺涓嶅瓨鍦�")); + return; + } - try { - userAccountService.unBindPhone(uid, phone); - out.print(JsonUtil.loadTrueResult("瑙g粦鎴愬姛")); - } catch (UserAccountException e) { - out.print(JsonUtil.loadFalseResult(e.getCode(), e.getMsg())); - } + String taoBaoUid = ""; - } + if (!StringUtil.isNullOrEmpty(tbSession)) { + try { + tbSession = DESUtil.decode(tbSession.replace("\n", ""), StringUtil.getBase64String("YeShiFANLI889*+"), + StringUtil.getBase64String("*M#34f?,")); + } catch (Exception e) { + e.printStackTrace(); + } + JSONObject session = JSONObject.fromObject(tbSession); + tbOpenid = session.optString("openId"); + tbNickName = session.optString("nick"); + tbPortrait = session.optString("avatarUrl"); + taoBaoUid = session.optString("taobao_user_id"); + } - /** - * 缁戝畾娣樺疂 - * - * @param acceptData - * @param uid - * @param tbOpenid - * @param tbNickName - * @param tbPortrait - * @param tbSession - * -娣樺疂鎺堟潈session - * @param out - */ + try { + userAccountService.bindTaoBao(uid, tbOpenid, tbNickName, tbPortrait); + UserInfo user = userInfoService.getUserByIdWithMybatis(uid); - @RequestMapping(value = "bindTaoBao") - public void bindTaoBao(AcceptData acceptData, Long uid, String tbOpenid, String tbNickName, String tbPortrait, - String tbSession, PrintWriter out) { - BusinessSystem system = businessSystemService.getBusinessSystemCache(acceptData.getPlatform(), - acceptData.getPackages()); - if (system == null) { - out.print(JsonUtil.loadFalseResult("绯荤粺涓嶅瓨鍦�")); - return; - } + // 鍒ゆ柇taoBaoUid鏄惁宸茬粡灏佺 + if (!StringUtil.isNullOrEmpty(taoBaoUid)) { + ForbiddenUserIdentifyCode ic = forbiddenUserIdentifyCodeService + .listByTypeAndIdentifyCode(ForbiddenUserIdentifyCodeTypeEnum.taobaoUid, taoBaoUid); + if (ic != null && ic.getEffective() != null && ic.getEffective()) { + out.print(JsonUtil.loadFalseResult(Constant.CODE_FORBIDDEN_USER, + Constant.FORBIDDEN_USER_REASON_DESC)); + // 灏佺鐢ㄦ埛 + // 灏佺缁戝畾鐨勬甯哥敤鎴� + if (user != null && user.getState() != null && user.getState() == UserInfo.STATE_NORMAL) { + userAccountService.forbiddenUser(uid, "灏佺锛氱粦瀹氳灏佺鐨勬窐瀹濆彿"); + } + return; + } + } - String taoBaoUid = ""; + JSONObject data = new JSONObject(); + data.put("user", UserUtil.filterForClientUser(user)); + out.print(JsonUtil.loadTrueResult(data)); + } catch (UserAccountException e) { + out.print(JsonUtil.loadFalseResult(e.getCode(), e.getMsg())); + } + } - if (!StringUtil.isNullOrEmpty(tbSession)) { - try { - tbSession = DESUtil.decode(tbSession.replace("\n", ""), StringUtil.getBase64String("YeShiFANLI889*+"), - StringUtil.getBase64String("*M#34f?,")); - } catch (Exception e) { - e.printStackTrace(); - } - JSONObject session = JSONObject.fromObject(tbSession); - tbOpenid = session.optString("openId"); - tbNickName = session.optString("nick"); - tbPortrait = session.optString("avatarUrl"); - taoBaoUid = session.optString("taobao_user_id"); - } + /** + * 瑙g粦娣樺疂 + * + * @param acceptData + * @param uid + * @param out + */ + @RequestMapping(value = "unBindTaoBao") + public void unBindTaoBao(AcceptData acceptData, Long uid, PrintWriter out) { + BusinessSystem system = getSystem(acceptData); + if (system == null) { + out.print(JsonUtil.loadFalseResult("绯荤粺涓嶅瓨鍦�")); + return; + } - try { - userAccountService.bindTaoBao(uid, tbOpenid, tbNickName, tbPortrait); - UserInfo user = userInfoService.getUserByIdWithMybatis(uid); + try { + userAccountService.unBindTaoBao(uid); + out.print(JsonUtil.loadTrueResult("瑙g粦鎴愬姛")); + } catch (UserAccountException e) { + out.print(JsonUtil.loadFalseResult(e.getCode(), e.getMsg())); + } + } - // 鍒ゆ柇taoBaoUid鏄惁宸茬粡灏佺 - if (!StringUtil.isNullOrEmpty(taoBaoUid)) { - ForbiddenUserIdentifyCode ic = forbiddenUserIdentifyCodeService - .listByTypeAndIdentifyCode(ForbiddenUserIdentifyCodeTypeEnum.taobaoUid, taoBaoUid); - if (ic != null && ic.getEffective() != null && ic.getEffective()) { - out.print(JsonUtil.loadFalseResult(Constant.CODE_FORBIDDEN_USER, - Constant.FORBIDDEN_USER_REASON_DESC)); - // 灏佺鐢ㄦ埛 - // 灏佺缁戝畾鐨勬甯哥敤鎴� - if (user != null && user.getState() != null && user.getState() == UserInfo.STATE_NORMAL) { - userAccountService.forbiddenUser(uid, "灏佺锛氱粦瀹氳灏佺鐨勬窐瀹濆彿"); - } - return; - } - } + /** + * 鏇存敼寰俊 + * + * @param acceptData + * @param uid + * @param code + * @param out + */ + @RequestMapping(value = "changeWX") + public void changeWX(AcceptData acceptData, Long uid, String code, PrintWriter out) { + BusinessSystem system = getSystem(acceptData); + if (system == null) { + out.print(JsonUtil.loadFalseResult("绯荤粺涓嶅瓨鍦�")); + return; + } - JSONObject data = new JSONObject(); - data.put("user", UserUtil.filterForClientUser(user)); - out.print(JsonUtil.loadTrueResult(data)); - } catch (UserAccountException e) { - out.print(JsonUtil.loadFalseResult(e.getCode(), e.getMsg())); - } - } + if (StringUtil.isNullOrEmpty(code)) { + out.print(JsonUtil.loadFalseResult(3, "璇蜂笂浼燾ode")); + return; + } - /** - * 瑙g粦娣樺疂 - * - * @param acceptData - * @param uid - * @param out - */ - @RequestMapping(value = "unBindTaoBao") - public void unBindTaoBao(AcceptData acceptData, Long uid, PrintWriter out) { - BusinessSystem system = businessSystemService.getBusinessSystemCache(acceptData.getPlatform(), - acceptData.getPackages()); - if (system == null) { - out.print(JsonUtil.loadFalseResult("绯荤粺涓嶅瓨鍦�")); - return; - } + try { + userAccountService.changeWXBind(acceptData, uid, code); + UserInfo user = userInfoService.getUserByIdWithMybatis(uid); + // 鍒ゆ柇taoBaoUid鏄惁宸茬粡灏佺 + ForbiddenUserIdentifyCode ic = forbiddenUserIdentifyCodeService + .listByTypeAndIdentifyCode(ForbiddenUserIdentifyCodeTypeEnum.wxUnionId, user.getWxUnionId()); + if (ic != null && ic.getEffective() != null && ic.getEffective()) { + out.print(JsonUtil.loadFalseResult(Constant.CODE_FORBIDDEN_USER, Constant.FORBIDDEN_USER_REASON_DESC)); + // 灏佺鐢ㄦ埛 + // 灏佺缁戝畾鐨勬甯哥敤鎴� + if (user != null && user.getState() != null && user.getState() == UserInfo.STATE_NORMAL) { + userAccountService.forbiddenUser(uid, "灏佺锛氱粦瀹氳灏佺鐨勫井淇″彿"); + } + return; + } - try { - userAccountService.unBindTaoBao(uid); - out.print(JsonUtil.loadTrueResult("瑙g粦鎴愬姛")); - } catch (UserAccountException e) { - out.print(JsonUtil.loadFalseResult(e.getCode(), e.getMsg())); - } - } + JSONObject data = new JSONObject(); + data.put("user", UserUtil.filterForClientUser(user)); + out.print(JsonUtil.loadTrueResult(data)); + } catch (UserAccountException e) { + out.print(JsonUtil.loadFalseResult(e.getCode(), e.getMsg())); + } + } - /** - * 鏇存敼寰俊 - * - * @param acceptData - * @param uid - * @param code - * @param out - */ - @RequestMapping(value = "changeWX") - public void changeWX(AcceptData acceptData, Long uid, String code, PrintWriter out) { - BusinessSystem system = businessSystemService.getBusinessSystemCache(acceptData.getPlatform(), - acceptData.getPackages()); - if (system == null) { - out.print(JsonUtil.loadFalseResult("绯荤粺涓嶅瓨鍦�")); - return; - } + /** + * 鑾峰彇鐢佃瘽鍙风爜 + * + * @param acceptData + * @param uid + * @param out + */ + @RequestMapping(value = "getphone") + public void getPhone(AcceptData acceptData, Long uid, PrintWriter out) { + BusinessSystem system = getSystem(acceptData); + if (system == null) { + out.print(JsonUtil.loadFalseResult("绯荤粺涓嶅瓨鍦�")); + return; + } - if (StringUtil.isNullOrEmpty(code)) { - out.print(JsonUtil.loadFalseResult(3, "璇蜂笂浼燾ode")); - return; - } + if (uid == null || uid == 0) { + out.print(JsonUtil.loadFalseResult(1, "璇蜂笂浼犵敤鎴稩D")); + return; + } - try { - userAccountService.changeWXBind(acceptData, uid, code); - UserInfo user = userInfoService.getUserByIdWithMybatis(uid); - // 鍒ゆ柇taoBaoUid鏄惁宸茬粡灏佺 - ForbiddenUserIdentifyCode ic = forbiddenUserIdentifyCodeService - .listByTypeAndIdentifyCode(ForbiddenUserIdentifyCodeTypeEnum.wxUnionId, user.getWxUnionId()); - if (ic != null && ic.getEffective() != null && ic.getEffective()) { - out.print(JsonUtil.loadFalseResult(Constant.CODE_FORBIDDEN_USER, Constant.FORBIDDEN_USER_REASON_DESC)); - // 灏佺鐢ㄦ埛 - // 灏佺缁戝畾鐨勬甯哥敤鎴� - if (user != null && user.getState() != null && user.getState() == UserInfo.STATE_NORMAL) { - userAccountService.forbiddenUser(uid, "灏佺锛氱粦瀹氳灏佺鐨勫井淇″彿"); - } - return; - } + UserInfo user = userInfoService.getUserByIdWithMybatis(uid); + user = UserUtil.filterForClientUser(user); + JSONObject data = new JSONObject(); + data.put("phone", user.getPhone()); + out.print(JsonUtil.loadTrueResult(data)); + } - JSONObject data = new JSONObject(); - data.put("user", UserUtil.filterForClientUser(user)); - out.print(JsonUtil.loadTrueResult(data)); - } catch (UserAccountException e) { - out.print(JsonUtil.loadFalseResult(e.getCode(), e.getMsg())); - } - } + @RequestMapping(value = "verifyvcodeforbind") + public void verifyVcodeForbind(AcceptData acceptData, Long uid, String vcode, PrintWriter out) { + BusinessSystem system = getSystem(acceptData); + if (system == null) { + out.print(JsonUtil.loadFalseResult("绯荤粺涓嶅瓨鍦�")); + return; + } - /** - * 鑾峰彇鐢佃瘽鍙风爜 - * - * @param acceptData - * @param uid - * @param out - */ - @RequestMapping(value = "getphone") - public void getPhone(AcceptData acceptData, Long uid, PrintWriter out) { - BusinessSystem system = businessSystemService.getBusinessSystemCache(acceptData.getPlatform(), - acceptData.getPackages()); - if (system == null) { - out.print(JsonUtil.loadFalseResult("绯荤粺涓嶅瓨鍦�")); - return; - } + if (uid == null || uid == 0) { + out.print(JsonUtil.loadFalseResult(1, "璇蜂笂浼犵敤鎴稩D")); + return; + } - if (uid == null || uid == 0) { - out.print(JsonUtil.loadFalseResult(1, "璇蜂笂浼犵敤鎴稩D")); - return; - } + if (StringUtil.isNullOrEmpty(vcode)) { + out.print(JsonUtil.loadFalseResult(1, "璇蜂笂浼犻獙璇佺爜")); + return; + } - UserInfo user = userInfoService.getUserByIdWithMybatis(uid); - user = UserUtil.filterForClientUser(user); - JSONObject data = new JSONObject(); - data.put("phone", user.getPhone()); - out.print(JsonUtil.loadTrueResult(data)); - } + UserInfo user = userInfoService.getUserById(uid); - @RequestMapping(value = "verifyvcodeforbind") - public void verifyVcodeForbind(AcceptData acceptData, Long uid, String vcode, PrintWriter out) { - BusinessSystem system = businessSystemService.getBusinessSystemCache(acceptData.getPlatform(), - acceptData.getPackages()); - if (system == null) { - out.print(JsonUtil.loadFalseResult("绯荤粺涓嶅瓨鍦�")); - return; - } + if (StringUtil.isNullOrEmpty(user.getPhone())) { + out.print(JsonUtil.loadFalseResult(1, "娌℃湁缁戝畾鐢佃瘽鍙风爜")); + return; + } - if (uid == null || uid == 0) { - out.print(JsonUtil.loadFalseResult(1, "璇蜂笂浼犵敤鎴稩D")); - return; - } + String code = redisManager.getSMSVCode(user.getPhone(), SMSHistory.TYPE_LOGIN); + if (code == null || !code.equalsIgnoreCase(vcode)) { + out.print(JsonUtil.loadFalseResult(90001, "楠岃瘉鐮侀敊璇�")); + return; + } + redisManager.clearSMSFrequencyLimit(user.getPhone(), SMSHistory.TYPE_LOGIN); + redisManager.saveBindAlipayAccountSMSState(user.getPhone()); + out.print(JsonUtil.loadTrueResult("")); + } - if (StringUtil.isNullOrEmpty(vcode)) { - out.print(JsonUtil.loadFalseResult(1, "璇蜂笂浼犻獙璇佺爜")); - return; - } - - UserInfo user = userInfoService.getUserById(uid); - - if (StringUtil.isNullOrEmpty(user.getPhone())) { - out.print(JsonUtil.loadFalseResult(1, "娌℃湁缁戝畾鐢佃瘽鍙风爜")); - return; - } - - String code = redisManager.getSMSVCode(user.getPhone(), SMSHistory.TYPE_LOGIN); - if (code == null || !code.equalsIgnoreCase(vcode)) { - out.print(JsonUtil.loadFalseResult(90001, "楠岃瘉鐮侀敊璇�")); - return; - } - redisManager.clearSMSFrequencyLimit(user.getPhone(), SMSHistory.TYPE_LOGIN); - redisManager.saveBindAlipayAccountSMSState(user.getPhone()); - out.print(JsonUtil.loadTrueResult("")); - } - - /** - * 鏀粯瀹濈粦瀹� - * - * @param acceptData - * @param uid-鐢ㄦ埛ID - * @param name-鏀粯瀹濆疄鍚嶅悕绉� - * @param account - * -鏀粯瀹濊处鍙� - * @param out - */ - @RequestMapping(value = "bindalipay") - public void bindAlipay(AcceptData acceptData, Long uid, String name, String account, PrintWriter out) { - BusinessSystem system = businessSystemService.getBusinessSystemCache(acceptData.getPlatform(), - acceptData.getPackages()); - if (system == null) { - out.print(JsonUtil.loadFalseResult("绯荤粺涓嶅瓨鍦�")); - return; - } - - if (uid == null || uid == 0) { - out.print(JsonUtil.loadFalseResult(1, "璇蜂笂浼犵敤鎴稩D")); - return; - } - - if (StringUtil.isNullOrEmpty(name)) { - out.print(JsonUtil.loadFalseResult(1, "璇蜂笂浼犳敮浠樺疂瀹炲悕鍚嶇О")); - return; - } - - if (StringUtil.isNullOrEmpty(account)) { - out.print(JsonUtil.loadFalseResult(1, "璇蜂笂浼犳敮浠樺疂璐﹀彿")); - return; - } + /** + * 鏀粯瀹濈粦瀹� + * + * @param acceptData + * @param uid-鐢ㄦ埛ID + * @param name-鏀粯瀹濆疄鍚嶅悕绉� + * @param account -鏀粯瀹濊处鍙� + * @param out + */ + @RequestMapping(value = "bindalipay") + public void bindAlipay(AcceptData acceptData, Long uid, String name, String account, PrintWriter out) { + BusinessSystem system = getSystem(acceptData); + if (system == null) { + out.print(JsonUtil.loadFalseResult("绯荤粺涓嶅瓨鍦�")); + return; + } - UserInfo user = userInfoService.getUserById(uid); + if (uid == null || uid == 0) { + out.print(JsonUtil.loadFalseResult(1, "璇蜂笂浼犵敤鎴稩D")); + return; + } - boolean bind = redisManager.isBindAlipayAccountSMSStateValid(user.getPhone()); - if (!bind) { - out.print(JsonUtil.loadFalseResult(90002, "鎵嬫満楠岃瘉瓒呮椂")); - return; - } + if (StringUtil.isNullOrEmpty(name)) { + out.print(JsonUtil.loadFalseResult(1, "璇蜂笂浼犳敮浠樺疂瀹炲悕鍚嶇О")); + return; + } - String key = "bindalipay-" + uid; + if (StringUtil.isNullOrEmpty(account)) { + out.print(JsonUtil.loadFalseResult(1, "璇蜂笂浼犳敮浠樺疂璐﹀彿")); + return; + } - if (!StringUtil.isNullOrEmpty(redisManager.getCommonString(key))) { - out.print(JsonUtil.loadFalseResult(2, "鏈嶅姟鍣ㄧ箒蹇欙紝璇风◢鍚庨噸璇�")); - return; - } - redisManager.cacheCommonString(key, "1", 120); - // 鏇存崲缁戝畾 - try { - BindingAccount bindingAccount = bindingAccountService.changeAlipayBinding(uid, name, account); - out.print(JsonUtil.loadTrueResult(JsonUtil.getGson().toJson(bindingAccount))); - } catch (Exception e) { - try { - LogHelper.errorDetailInfo(e); - } catch (Exception e1) { - e1.printStackTrace(); - } - out.print(JsonUtil.loadFalseResult(3, "鏈嶅姟鍣ㄥ唴閮ㄩ敊璇�")); - } finally { - redisManager.removeCommonString(key); - } - } + UserInfo user = userInfoService.getUserById(uid); - @RequestMapping(value = "bindalipaywithverify") - public void bindAlipayWithVerify(AcceptData acceptData, Long uid, String name, String account, PrintWriter out) { + boolean bind = redisManager.isBindAlipayAccountSMSStateValid(user.getPhone()); + if (!bind) { + out.print(JsonUtil.loadFalseResult(90002, "鎵嬫満楠岃瘉瓒呮椂")); + return; + } - BusinessSystem system = businessSystemService.getBusinessSystemCache(acceptData.getPlatform(), - acceptData.getPackages()); - if (system == null) { - out.print(JsonUtil.loadFalseResult("绯荤粺涓嶅瓨鍦�")); - return; - } + String key = RedisKeyEnum.getRedisKey(RedisKeyEnum.bindAlipay, uid + ""); + if (!StringUtil.isNullOrEmpty(redisManager.getCommonString(key))) { + out.print(JsonUtil.loadFalseResult(2, "鏈嶅姟鍣ㄧ箒蹇欙紝璇风◢鍚庨噸璇�")); + return; + } + redisManager.cacheCommonString(key, "1", 120); + // 鏇存崲缁戝畾 + try { + BindingAccount bindingAccount = bindingAccountService.changeAlipayBinding(uid, name, account); + out.print(JsonUtil.loadTrueResult(JsonUtil.getGson().toJson(bindingAccount))); + } catch (Exception e) { + try { + LogHelper.errorDetailInfo(e); + } catch (Exception e1) { + e1.printStackTrace(); + } + out.print(JsonUtil.loadFalseResult(3, "鏈嶅姟鍣ㄥ唴閮ㄩ敊璇�")); + } finally { + redisManager.removeCommonString(key); + } + } - if (uid == null || uid == 0) { - out.print(JsonUtil.loadFalseResult(1, "璇蜂笂浼犵敤鎴稩D")); - return; - } + @RequestMapping(value = "bindalipaywithverify") + public void bindAlipayWithVerify(AcceptData acceptData, Long uid, String name, String account, PrintWriter out) { - if (StringUtil.isNullOrEmpty(name)) { - out.print(JsonUtil.loadFalseResult(1, "璇蜂笂浼犳敮浠樺疂瀹炲悕鍚嶇О")); - return; - } + BusinessSystem system = getSystem(acceptData); + if (system == null) { + out.print(JsonUtil.loadFalseResult("绯荤粺涓嶅瓨鍦�")); + return; + } - if (StringUtil.isNullOrEmpty(account)) { - out.print(JsonUtil.loadFalseResult(1, "璇蜂笂浼犳敮浠樺疂璐﹀彿")); - return; - } + if (uid == null || uid == 0) { + out.print(JsonUtil.loadFalseResult(1, "璇蜂笂浼犵敤鎴稩D")); + return; + } - UserInfo user = userInfoService.getUserById(uid); + if (StringUtil.isNullOrEmpty(name)) { + out.print(JsonUtil.loadFalseResult(1, "璇蜂笂浼犳敮浠樺疂瀹炲悕鍚嶇О")); + return; + } - boolean bind = redisManager.isBindAlipayAccountSMSStateValid(user.getPhone()); - if (!bind) { - out.print(JsonUtil.loadFalseResult(90002, "鎵嬫満楠岃瘉瓒呮椂")); - return; - } + if (StringUtil.isNullOrEmpty(account)) { + out.print(JsonUtil.loadFalseResult(1, "璇蜂笂浼犳敮浠樺疂璐﹀彿")); + return; + } - String key = "bindalipay-" + uid; + UserInfo user = userInfoService.getUserById(uid); - if (!StringUtil.isNullOrEmpty(redisManager.getCommonString(key))) { - out.print(JsonUtil.loadFalseResult(1001, "鏈嶅姟鍣ㄧ箒蹇欙紝璇风◢鍚庨噸璇�")); - return; - } - redisManager.cacheCommonString(key, "1", 120); - // 鍙互灞曠ず缁欑敤鎴风湅鐨勯敊璇爜 - String[] ALIPAY_CODES = new String[] { "SYSTEM_ERROR", "PERMIT_CHECK_PERM_LIMITED", "PERM_AML_NOT_REALNAME_REV", - "PERM_AML_NOT_REALNAME_REV", "PAYEE_USER_INFO_ERROR", "PAYEE_ACC_OCUPIED", - "PERMIT_CHECK_PERM_IDENTITY_THEFT", "PERMIT_NON_BANK_LIMIT_PAYEE", "EXCEED_LIMIT_UNRN_DM_AMOUNT" }; - try { - BindingAccount bindingAccount = bindingAccountService.changeAlipayBindingWithVerify(uid, name, account); - out.print(JsonUtil.loadTrue(0, JsonUtil.getGson().toJson(bindingAccount), "鎮ㄧ殑鏀粯瀹濊处鍙烽�氳繃楠岃瘉锛屽彲浠ユ甯告彁鐜�")); - } catch (AlipayTransferException e1) { - if (e1.getSubCode().equalsIgnoreCase("PAYEE_NOT_EXIST")) { - String msg = "鏃犳硶鎼滅储鍒拌璐﹀彿\n鈶犺妫�鏌ヤ竴涓嬫敮浠樺疂甯愬彿鍜屽鍚嶆槸鍚﹀~鍐欐纭�俓n 鈶¤鍦ㄦ敮浠樺疂闅愮璁剧疆涓鏌ユ槸鍚﹀凡寮�鍚�滈�氳繃閭/鎵嬫満鍙�/浼氬憳鍚嶆壘鍒版垜鈥濋�夐」銆�"; - out.print(JsonUtil.loadFalseResult(1, msg)); - } else { - for (String st : ALIPAY_CODES) { - if (st.equalsIgnoreCase(e1.getSubCode())) { - out.print(JsonUtil.loadFalseResult(2, e1.getMsg())); - return; - } - } - out.print(JsonUtil.loadFalseResult(3, "鏀粯瀹濇帴鍙e嚭閿欙紝楠岃瘉澶辫触锛岃鑱旂郴瀹㈡湇銆�")); - return; - } + boolean bind = redisManager.isBindAlipayAccountSMSStateValid(user.getPhone()); + if (!bind) { + out.print(JsonUtil.loadFalseResult(90002, "鎵嬫満楠岃瘉瓒呮椂")); + return; + } - } catch (AlipayApiException e2) { - out.print(JsonUtil.loadFalseResult(4, e2.getErrMsg())); - return; - } catch (AlipayAccountException e3) { - // 璐︽埛鏃犱綑棰� - if (e3.getCode() == AlipayAccountException.CODE_NO_MONEY) { - out.print(JsonUtil.loadFalseResult(5, e3.getMsg())); - return; - // 鎻愮幇娆℃暟闄愬埗 - } else if (e3.getCode() == AlipayAccountException.CODE_TIMES_LIMIT) { - out.print(JsonUtil.loadFalseResult(6, e3.getMsg())); - return; - } else { - out.print(JsonUtil.loadFalseResult(7, e3.getMsg())); - return; - } + String key = RedisKeyEnum.getRedisKey(RedisKeyEnum.bindAlipay, uid + ""); + if (!StringUtil.isNullOrEmpty(redisManager.getCommonString(key))) { + out.print(JsonUtil.loadFalseResult(1001, "鏈嶅姟鍣ㄧ箒蹇欙紝璇风◢鍚庨噸璇�")); + return; + } + redisManager.cacheCommonString(key, "1", 120); + // 鍙互灞曠ず缁欑敤鎴风湅鐨勯敊璇爜 + String[] ALIPAY_CODES = new String[]{"SYSTEM_ERROR", "PERMIT_CHECK_PERM_LIMITED", "PERM_AML_NOT_REALNAME_REV", + "PERM_AML_NOT_REALNAME_REV", "PAYEE_USER_INFO_ERROR", "PAYEE_ACC_OCUPIED", + "PERMIT_CHECK_PERM_IDENTITY_THEFT", "PERMIT_NON_BANK_LIMIT_PAYEE", "EXCEED_LIMIT_UNRN_DM_AMOUNT"}; + try { + BindingAccount bindingAccount = bindingAccountService.changeAlipayBindingWithVerify(uid, name, account); + out.print(JsonUtil.loadTrue(0, JsonUtil.getGson().toJson(bindingAccount), "鎮ㄧ殑鏀粯瀹濊处鍙烽�氳繃楠岃瘉锛屽彲浠ユ甯告彁鐜�")); + } catch (AlipayTransferException e1) { + if (e1.getSubCode().equalsIgnoreCase("PAYEE_NOT_EXIST")) { + String msg = "鏃犳硶鎼滅储鍒拌璐﹀彿\n鈶犺妫�鏌ヤ竴涓嬫敮浠樺疂甯愬彿鍜屽鍚嶆槸鍚﹀~鍐欐纭�俓n 鈶¤鍦ㄦ敮浠樺疂闅愮璁剧疆涓鏌ユ槸鍚﹀凡寮�鍚�滈�氳繃閭/鎵嬫満鍙�/浼氬憳鍚嶆壘鍒版垜鈥濋�夐」銆�"; + out.print(JsonUtil.loadFalseResult(1, msg)); + } else { + for (String st : ALIPAY_CODES) { + if (st.equalsIgnoreCase(e1.getSubCode())) { + out.print(JsonUtil.loadFalseResult(2, e1.getMsg())); + return; + } + } + out.print(JsonUtil.loadFalseResult(3, "鏀粯瀹濇帴鍙e嚭閿欙紝楠岃瘉澶辫触锛岃鑱旂郴瀹㈡湇銆�")); + return; + } - } catch (Exception e) { - try { - LogHelper.errorDetailInfo(e); - } catch (Exception e1) { - e1.printStackTrace(); - } - out.print(JsonUtil.loadFalseResult(8, "鏈嶅姟鍣ㄥ唴閮ㄩ敊璇紝楠岃瘉澶辫触锛岃鑱旂郴瀹㈡湇銆�")); - } finally { - redisManager.removeCommonString(key); - } - } + } catch (AlipayApiException e2) { + out.print(JsonUtil.loadFalseResult(4, e2.getErrMsg())); + return; + } catch (AlipayAccountException e3) { + // 璐︽埛鏃犱綑棰� + if (e3.getCode() == AlipayAccountException.CODE_NO_MONEY) { + out.print(JsonUtil.loadFalseResult(5, e3.getMsg())); + return; + // 鎻愮幇娆℃暟闄愬埗 + } else if (e3.getCode() == AlipayAccountException.CODE_TIMES_LIMIT) { + out.print(JsonUtil.loadFalseResult(6, e3.getMsg())); + return; + } else { + out.print(JsonUtil.loadFalseResult(7, e3.getMsg())); + return; + } - @RequestMapping(value = "bindalipaywithverifynew") - public void bindAlipayWithVerifyNew(AcceptData acceptData, Long uid, String name, String account, PrintWriter out) { + } catch (Exception e) { + try { + LogHelper.errorDetailInfo(e); + } catch (Exception e1) { + e1.printStackTrace(); + } + out.print(JsonUtil.loadFalseResult(8, "鏈嶅姟鍣ㄥ唴閮ㄩ敊璇紝楠岃瘉澶辫触锛岃鑱旂郴瀹㈡湇銆�")); + } finally { + redisManager.removeCommonString(key); + } + } - BusinessSystem system = businessSystemService.getBusinessSystemCache(acceptData.getPlatform(), - acceptData.getPackages()); - if (system == null) { - out.print(JsonUtil.loadFalseResult("绯荤粺涓嶅瓨鍦�")); - return; - } + @RequestMapping(value = "bindalipaywithverifynew") + public void bindAlipayWithVerifyNew(AcceptData acceptData, Long uid, String name, String account, PrintWriter out) { - if (uid == null || uid == 0) { - out.print(JsonUtil.loadFalseResult(1, "璇蜂笂浼犵敤鎴稩D")); - return; - } + BusinessSystem system = getSystem(acceptData); + if (system == null) { + out.print(JsonUtil.loadFalseResult("绯荤粺涓嶅瓨鍦�")); + return; + } - if (StringUtil.isNullOrEmpty(name)) { - out.print(JsonUtil.loadFalseResult(1, "璇蜂笂浼犳敮浠樺疂瀹炲悕鍚嶇О")); - return; - } + if (uid == null || uid == 0) { + out.print(JsonUtil.loadFalseResult(1, "璇蜂笂浼犵敤鎴稩D")); + return; + } - if (StringUtil.isNullOrEmpty(account)) { - out.print(JsonUtil.loadFalseResult(1, "璇蜂笂浼犳敮浠樺疂璐﹀彿")); - return; - } + if (StringUtil.isNullOrEmpty(name)) { + out.print(JsonUtil.loadFalseResult(1, "璇蜂笂浼犳敮浠樺疂瀹炲悕鍚嶇О")); + return; + } - UserInfo user = userInfoService.getUserById(uid); + if (StringUtil.isNullOrEmpty(account)) { + out.print(JsonUtil.loadFalseResult(1, "璇蜂笂浼犳敮浠樺疂璐﹀彿")); + return; + } - boolean bind = redisManager.isBindAlipayAccountSMSStateValid(user.getPhone()); - if (!bind) { - out.print(JsonUtil.loadFalseResult(90002, "鎵嬫満楠岃瘉瓒呮椂")); - return; - } + UserInfo user = userInfoService.getUserById(uid); - String key = "bindalipay-" + uid; + boolean bind = redisManager.isBindAlipayAccountSMSStateValid(user.getPhone()); + if (!bind) { + out.print(JsonUtil.loadFalseResult(90002, "鎵嬫満楠岃瘉瓒呮椂")); + return; + } - if (!StringUtil.isNullOrEmpty(redisManager.getCommonString(key))) { - out.print(JsonUtil.loadFalseResult(1001, "鏈嶅姟鍣ㄧ箒蹇欙紝璇风◢鍚庨噸璇�")); - return; - } - redisManager.cacheCommonString(key, "1", 120); + String key = RedisKeyEnum.getRedisKey(RedisKeyEnum.bindAlipay, uid + ""); + if (!StringUtil.isNullOrEmpty(redisManager.getCommonString(key))) { + out.print(JsonUtil.loadFalseResult(1001, "鏈嶅姟鍣ㄧ箒蹇欙紝璇风◢鍚庨噸璇�")); + return; + } + redisManager.cacheCommonString(key, "1", 120); - // 鏀粯瀹濈粦瀹� - ForbiddenUserIdentifyCode ic = forbiddenUserIdentifyCodeService - .listByTypeAndIdentifyCode(ForbiddenUserIdentifyCodeTypeEnum.alipayAccount, account); - if (ic != null && ic.getEffective() != null && ic.getEffective()) { - out.print(JsonUtil.loadFalseResult(Constant.CODE_FORBIDDEN_USER, Constant.FORBIDDEN_USER_REASON_DESC)); - // 灏佺鐢ㄦ埛 - // 灏佺缁戝畾鐨勬甯哥敤鎴� - if (user != null && user.getState() != null && user.getState() == UserInfo.STATE_NORMAL) { - userAccountService.forbiddenUser(uid, "灏佺锛氱粦瀹氳灏佺鐨勬敮浠樺疂"); - } - return; - } + // 鏀粯瀹濈粦瀹� + ForbiddenUserIdentifyCode ic = forbiddenUserIdentifyCodeService + .listByTypeAndIdentifyCode(ForbiddenUserIdentifyCodeTypeEnum.alipayAccount, account); + if (ic != null && ic.getEffective() != null && ic.getEffective()) { + out.print(JsonUtil.loadFalseResult(Constant.CODE_FORBIDDEN_USER, Constant.FORBIDDEN_USER_REASON_DESC)); + // 灏佺鐢ㄦ埛 + // 灏佺缁戝畾鐨勬甯哥敤鎴� + if (user != null && user.getState() != null && user.getState() == UserInfo.STATE_NORMAL) { + userAccountService.forbiddenUser(uid, "灏佺锛氱粦瀹氳灏佺鐨勬敮浠樺疂"); + } + return; + } - // 鍙互灞曠ず缁欑敤鎴风湅鐨勯敊璇爜 - String[] ALIPAY_CODES = new String[] { "SYSTEM_ERROR", "PERMIT_CHECK_PERM_LIMITED", "PERM_AML_NOT_REALNAME_REV", - "PERM_AML_NOT_REALNAME_REV", "PAYEE_USER_INFO_ERROR", "PAYEE_ACC_OCUPIED", - "PERMIT_CHECK_PERM_IDENTITY_THEFT", "PERMIT_NON_BANK_LIMIT_PAYEE", "EXCEED_LIMIT_UNRN_DM_AMOUNT" }; - BindingAccount oldBindingAccount = bindingAccountService.getBindingAccountByUidAndType(uid, - BindingAccount.TYPE_ALIPAY); - try { - BigDecimal balance = user.getMyHongBao(); - BindingAccount bindingAccount = bindingAccountService.changeAlipayBindingWithVerify(uid, name, account); - // 浣欓鍏呰冻 - if (balance.compareTo(new BigDecimal("0.1")) >= 0) - out.print(JsonUtil.loadTrue(0, JsonUtil.getGson().toJson(bindingAccount), - "绯荤粺宸叉垚鍔熻浆璐�0.1鍏冨埌鎻愮幇璐﹀彿涓紝鎻愮幇璐﹀彿楠岃瘉閫氳繃锛屾伃鍠滀綘锛佸彲浠ユ彁鐜颁簡銆�")); - else - out.print(JsonUtil.loadTrue(0, JsonUtil.getGson().toJson(bindingAccount), - "绯荤粺宸叉垚鍔熻浆璐�0.1鍏冨埌鎻愮幇璐﹀彿涓紝鎻愮幇璐﹀彿楠岃瘉閫氳繃锛屾伃鍠滀綘锛佸彲浠ユ彁鐜颁簡銆傛敞锛氭0.1鍏冨皢浼氬湪鍚庣画浜х敓鐨勪綑棰濅腑鍚堢悊鎵i櫎锛屾暚璇风煡鏅撱��")); + // 鍙互灞曠ず缁欑敤鎴风湅鐨勯敊璇爜 + String[] ALIPAY_CODES = new String[]{"SYSTEM_ERROR", "PERMIT_CHECK_PERM_LIMITED", "PERM_AML_NOT_REALNAME_REV", + "PERM_AML_NOT_REALNAME_REV", "PAYEE_USER_INFO_ERROR", "PAYEE_ACC_OCUPIED", + "PERMIT_CHECK_PERM_IDENTITY_THEFT", "PERMIT_NON_BANK_LIMIT_PAYEE", "EXCEED_LIMIT_UNRN_DM_AMOUNT"}; + BindingAccount oldBindingAccount = bindingAccountService.getBindingAccountByUidAndType(uid, + BindingAccount.TYPE_ALIPAY); + try { + BigDecimal balance = user.getMyHongBao(); + BindingAccount bindingAccount = bindingAccountService.changeAlipayBindingWithVerify(uid, name, account); + // 浣欓鍏呰冻 + if (balance.compareTo(new BigDecimal("0.1")) >= 0) + out.print(JsonUtil.loadTrue(0, JsonUtil.getGson().toJson(bindingAccount), + "绯荤粺宸叉垚鍔熻浆璐�0.1鍏冨埌鎻愮幇璐﹀彿涓紝鎻愮幇璐﹀彿楠岃瘉閫氳繃锛屾伃鍠滀綘锛佸彲浠ユ彁鐜颁簡銆�")); + else + out.print(JsonUtil.loadTrue(0, JsonUtil.getGson().toJson(bindingAccount), + "绯荤粺宸叉垚鍔熻浆璐�0.1鍏冨埌鎻愮幇璐﹀彿涓紝鎻愮幇璐﹀彿楠岃瘉閫氳繃锛屾伃鍠滀綘锛佸彲浠ユ彁鐜颁簡銆傛敞锛氭0.1鍏冨皢浼氬湪鍚庣画浜х敓鐨勪綑棰濅腑鍚堢悊鎵i櫎锛屾暚璇风煡鏅撱��")); - userInfoModifyRecordService.addModifyRecord(uid, ModifyTypeEnum.bindAlipay, account); - } catch (AlipayTransferException e1) { - if (e1.getSubCode().equalsIgnoreCase("PAYEE_NOT_EXIST")) { - String msg = "绯荤粺鏈兘鎴愬姛杞处0.1鍏冿紝鎻愮幇璐﹀彿淇℃伅鏈夎锛岃鏍稿鍚庨噸鏂板~鍐欍��"; - out.print(JsonUtil.loadFalseResult(1, msg)); - } else { - for (String st : ALIPAY_CODES) { - if (st.equalsIgnoreCase(e1.getSubCode())) { - out.print(JsonUtil.loadFalseResult(2, e1.getMsg())); - return; - } - } - out.print(JsonUtil.loadFalseResult(3, "鏀粯瀹濇帴鍙e嚭閿欙紝楠岃瘉澶辫触锛岃鑱旂郴瀹㈡湇銆�")); - return; - } + userInfoModifyRecordService.addModifyRecord(uid, ModifyTypeEnum.bindAlipay, account); + } catch (AlipayTransferException e1) { + LogHelper.error("鏀粯瀹濋獙璇佸嚭閿�:" + new Gson().toJson(e1)); + if (e1.getSubCode().equalsIgnoreCase("PAYEE_NOT_EXIST")) { + String msg = "绯荤粺鏈兘鎴愬姛杞处0.1鍏冿紝鎻愮幇璐﹀彿淇℃伅鏈夎锛岃鏍稿鍚庨噸鏂板~鍐欍��"; + out.print(JsonUtil.loadFalseResult(1, msg)); + } else { + for (String st : ALIPAY_CODES) { + if (st.equalsIgnoreCase(e1.getSubCode())) { + out.print(JsonUtil.loadFalseResult(2, e1.getMsg())); + return; + } + } + out.print(JsonUtil.loadFalseResult(3, "鏀粯瀹濇帴鍙e嚭閿欙紝楠岃瘉澶辫触锛岃鑱旂郴瀹㈡湇銆�")); + return; + } - } catch (AlipayApiException e2) { - out.print(JsonUtil.loadFalseResult(4, e2.getErrMsg())); - return; - } catch (AlipayAccountException e3) { - // 璐︽埛鏃犱綑棰� - if (e3.getCode() == AlipayAccountException.CODE_NO_MONEY) { - if (oldBindingAccount != null) { - out.print(JsonUtil.loadFalseResult(5, "褰撳墠璐︽埛娌℃湁浣欓锛屾棤闇�淇敼锛岃鏈変綑棰濆悗淇敼")); - } else { - out.print(JsonUtil.loadFalseResult(5, "褰撳墠璐︽埛娌℃湁浣欓锛岃鏈変綑棰濆悗缁戝畾")); - } - return; - // 鎻愮幇娆℃暟闄愬埗 - } else if (e3.getCode() == AlipayAccountException.CODE_TIMES_LIMIT) { - out.print(JsonUtil.loadFalseResult(6, "姣忔湀浠呭彲淇敼1娆℃彁鐜拌处鍙凤紝璇蜂笅鏈堝啀璇曞惂銆�")); - return; - } else { - out.print(JsonUtil.loadFalseResult(7, e3.getMsg())); - return; - } + } catch (AlipayApiException e2) { + out.print(JsonUtil.loadFalseResult(4, e2.getErrMsg())); + return; + } catch (AlipayAccountException e3) { + // 璐︽埛鏃犱綑棰� + if (e3.getCode() == AlipayAccountException.CODE_NO_MONEY) { + if (oldBindingAccount != null) { + out.print(JsonUtil.loadFalseResult(5, "褰撳墠璐︽埛娌℃湁浣欓锛屾棤闇�淇敼锛岃鏈変綑棰濆悗淇敼")); + } else { + out.print(JsonUtil.loadFalseResult(5, "褰撳墠璐︽埛娌℃湁浣欓锛岃鏈変綑棰濆悗缁戝畾")); + } + return; + // 鎻愮幇娆℃暟闄愬埗 + } else if (e3.getCode() == AlipayAccountException.CODE_TIMES_LIMIT) { + out.print(JsonUtil.loadFalseResult(6, "姣忔湀浠呭彲淇敼1娆℃彁鐜拌处鍙凤紝璇蜂笅鏈堝啀璇曞惂銆�")); + return; + } else { + out.print(JsonUtil.loadFalseResult(7, e3.getMsg())); + return; + } - } catch (Exception e) { - try { - LogHelper.errorDetailInfo(e); - } catch (Exception e1) { - e1.printStackTrace(); - } - out.print(JsonUtil.loadFalseResult(8, "鏈嶅姟鍣ㄥ唴閮ㄩ敊璇紝楠岃瘉澶辫触锛岃鑱旂郴瀹㈡湇銆�")); - } finally { - redisManager.removeCommonString(key); - } - } + } catch (Exception e) { + try { + LogHelper.errorDetailInfo(e); + } catch (Exception e1) { + e1.printStackTrace(); + } + out.print(JsonUtil.loadFalseResult(8, "鏈嶅姟鍣ㄥ唴閮ㄩ敊璇紝楠岃瘉澶辫触锛岃鑱旂郴瀹㈡湇銆�")); + } finally { + redisManager.removeCommonString(key); + } + } - /** - * 鑾峰彇鐢ㄦ埛璧勯噾璇︽儏 - * - * @param acceptData - * @param uid - * @param out - */ - @RequestMapping(value = "getusermoney") - public void getMoneyDetail(AcceptData acceptData, Long uid, PrintWriter out) { + /** + * 鑾峰彇鐢ㄦ埛璧勯噾璇︽儏 + * + * @param acceptData + * @param uid + * @param out + */ + @RequestMapping(value = "getusermoney") + public void getMoneyDetail(AcceptData acceptData, Long uid, PrintWriter out) { - UserInfo user = userInfoService.getUserByIdWithMybatis(uid); - if (user == null) { - out.print(JsonUtil.loadFalseResult(2, "鐢ㄦ埛涓嶅瓨鍦�")); - return; - } - BigDecimal moneyToday = userMoneyService.getMoneyToday(uid); - if (moneyToday == null) { - moneyToday = new BigDecimal(0); - } - BigDecimal moneyMonth = userMoneyService.getMoneyMonth(uid); - if (moneyMonth == null) { - moneyMonth = new BigDecimal(0); - } + UserInfo user = userInfoService.getUserByIdWithMybatis(uid); + if (user == null) { + out.print(JsonUtil.loadFalseResult(2, "鐢ㄦ埛涓嶅瓨鍦�")); + return; + } + BigDecimal moneyToday = userMoneyService.getMoneyToday(uid); + if (moneyToday == null) { + moneyToday = new BigDecimal(0); + } + BigDecimal moneyMonth = userMoneyService.getMoneyMonth(uid); + if (moneyMonth == null) { + moneyMonth = new BigDecimal(0); + } - BigDecimal moneyLastMonth = userMoneyService.getMoneyLastMonth(uid); - BigDecimal unOpenmoney = hongBaoV2Service.getUnRecievedFanLiMoney(uid); - BigDecimal totalFanMoney = hongBaoV2Service.getTotalFanLiMoney(uid); - JSONObject data = new JSONObject(); - int spreadImgCount = spreadUserImgService.countUserSpreadImg(uid); - long shareCount = userShareGoodsRecordService.countShareRecordByUid(uid); + BigDecimal moneyLastMonth = userMoneyService.getMoneyLastMonth(uid); + BigDecimal unOpenmoney = hongBaoV2Service.getUnRecievedFanLiMoney(uid); + BigDecimal totalFanMoney = hongBaoV2Service.getTotalFanLiMoney(uid); + JSONObject data = new JSONObject(); + int spreadImgCount = spreadUserImgService.countUserSpreadImg(uid); + long shareCount = userShareGoodsRecordService.countShareRecordByUid(uid); - // IOS绔暟瀛楁寜鐓у瓧绗︿覆澶勭悊 - if ("ios".equalsIgnoreCase(acceptData.getPlatform()) && Integer.parseInt(acceptData.getVersion()) > 33) { - data.put("moneyToday", moneyToday.setScale(2, BigDecimal.ROUND_DOWN).toString()); - data.put("moneyMonth", moneyMonth.setScale(2, BigDecimal.ROUND_DOWN).toString()); - data.put("moneyLastMonth", moneyLastMonth.setScale(2, BigDecimal.ROUND_DOWN).toString()); - data.put("money", user.getMyHongBao().setScale(2, BigDecimal.ROUND_DOWN).toString()); - data.put("unGetMoney", unOpenmoney.setScale(2, BigDecimal.ROUND_DOWN).toString()); - data.put("totalFanLiMoney", totalFanMoney.setScale(2, BigDecimal.ROUND_DOWN).toString());// 绱杩斿埄 - data.put("totalTiChengMoney", - hongBaoV2Service.getTotalTiChengMoney(uid).setScale(2, BigDecimal.ROUND_DOWN).toString());// 绱鎻愭垚 - data.put("totalUnGetTiChengMoney", - hongBaoV2Service.getUnGetTiChengMoney(uid).setScale(2, BigDecimal.ROUND_DOWN).toString()); // 鏈埌璐︽彁鎴� - // 灞曠ず鎻愭垚鏁版嵁 - if (configService.iosOnLining(Integer.parseInt(acceptData.getVersion()))) - data.put("showTiCheng", false); - else - data.put("showTiCheng", spreadImgCount + shareCount > 0); - } else { - data.put("moneyToday", moneyToday.setScale(2, BigDecimal.ROUND_DOWN)); - data.put("moneyMonth", moneyMonth.setScale(2, BigDecimal.ROUND_DOWN)); - data.put("moneyLastMonth", moneyLastMonth.setScale(2, BigDecimal.ROUND_DOWN)); - data.put("money", user.getMyHongBao().setScale(2, BigDecimal.ROUND_DOWN)); - data.put("unGetMoney", unOpenmoney.setScale(2, BigDecimal.ROUND_DOWN)); - data.put("totalFanLiMoney", totalFanMoney.setScale(2, BigDecimal.ROUND_DOWN));// 绱杩斿埄 - data.put("totalTiChengMoney", - hongBaoV2Service.getTotalTiChengMoney(uid).setScale(2, BigDecimal.ROUND_DOWN));// 绱鎻愭垚 - data.put("totalUnGetTiChengMoney", - hongBaoV2Service.getUnGetTiChengMoney(uid).setScale(2, BigDecimal.ROUND_DOWN)); // 鏈埌璐︽彁鎴� - // 灞曠ず鎻愭垚鏁版嵁 - data.put("showTiCheng", spreadImgCount + shareCount > 0); - } + // IOS绔暟瀛楁寜鐓у瓧绗︿覆澶勭悊 + if ("ios".equalsIgnoreCase(acceptData.getPlatform()) && Integer.parseInt(acceptData.getVersion()) > 33) { + data.put("moneyToday", moneyToday.setScale(2, BigDecimal.ROUND_DOWN).toString()); + data.put("moneyMonth", moneyMonth.setScale(2, BigDecimal.ROUND_DOWN).toString()); + data.put("moneyLastMonth", moneyLastMonth.setScale(2, BigDecimal.ROUND_DOWN).toString()); + data.put("money", user.getMyHongBao().setScale(2, BigDecimal.ROUND_DOWN).toString()); + data.put("unGetMoney", unOpenmoney.setScale(2, BigDecimal.ROUND_DOWN).toString()); + data.put("totalFanLiMoney", totalFanMoney.setScale(2, BigDecimal.ROUND_DOWN).toString());// 绱杩斿埄 + data.put("totalTiChengMoney", + hongBaoV2Service.getTotalTiChengMoney(uid).setScale(2, BigDecimal.ROUND_DOWN).toString());// 绱鎻愭垚 + data.put("totalUnGetTiChengMoney", + hongBaoV2Service.getUnGetTiChengMoney(uid).setScale(2, BigDecimal.ROUND_DOWN).toString()); // 鏈埌璐︽彁鎴� + // 灞曠ず鎻愭垚鏁版嵁 + if (configService.iosOnLining(Integer.parseInt(acceptData.getVersion()), SystemInfoUtil.getSystem(acceptData))) + data.put("showTiCheng", false); + else + data.put("showTiCheng", spreadImgCount + shareCount > 0); + } else { + data.put("moneyToday", moneyToday.setScale(2, BigDecimal.ROUND_DOWN)); + data.put("moneyMonth", moneyMonth.setScale(2, BigDecimal.ROUND_DOWN)); + data.put("moneyLastMonth", moneyLastMonth.setScale(2, BigDecimal.ROUND_DOWN)); + data.put("money", user.getMyHongBao().setScale(2, BigDecimal.ROUND_DOWN)); + data.put("unGetMoney", unOpenmoney.setScale(2, BigDecimal.ROUND_DOWN)); + data.put("totalFanLiMoney", totalFanMoney.setScale(2, BigDecimal.ROUND_DOWN));// 绱杩斿埄 + data.put("totalTiChengMoney", + hongBaoV2Service.getTotalTiChengMoney(uid).setScale(2, BigDecimal.ROUND_DOWN));// 绱鎻愭垚 + data.put("totalUnGetTiChengMoney", + hongBaoV2Service.getUnGetTiChengMoney(uid).setScale(2, BigDecimal.ROUND_DOWN)); // 鏈埌璐︽彁鎴� + // 灞曠ず鎻愭垚鏁版嵁 + data.put("showTiCheng", spreadImgCount + shareCount > 0); + } - user.setNoOpenHongBao(unOpenmoney); - out.print(JsonUtil.loadTrueResult(data)); - } + user.setNoOpenHongBao(unOpenmoney); + out.print(JsonUtil.loadTrueResult(data)); + } - /** - * 鑾峰彇鐢ㄦ埛鐨凱ID淇℃伅 - * - * @param acceptData - * @param uid - * @param out - */ - @RequestMapping(value = "gettbpidinfo") - public void getUserPid(AcceptData acceptData, String uid, PrintWriter out) { - ClientTBPid clientTBPid = null; - // 鐢ㄦ埛宸茬粡鐧诲綍 - if (!StringUtil.isNullOrEmpty(uid)) { - TBPid tbPid = null; - if (acceptData.getPlatform().equalsIgnoreCase("android")) { - tbPid = tbPidService.getTBPid(Long.parseLong(uid), PidUser.TYPE_FANLI_ANDROID); - if (tbPid != null) { - String siteId = tbPid.getPid().split("_")[2]; - String adzoneId = tbPid.getPid().split("_")[3]; - TaoBaoUnionConfig config = taoBaoUnionConfigService.getConfigByAppIdCache(siteId); - clientTBPid = new ClientTBPid(config.getAppKey(), tbPid.getPid(), siteId, adzoneId); - } else { - clientTBPid = tbPidService.getAndroidDefault(); - } + /** + * 鑾峰彇鐢ㄦ埛鐨凱ID淇℃伅 + * + * @param acceptData + * @param uid + * @param out + */ + @RequestMapping(value = "gettbpidinfo") + public void getUserPid(AcceptData acceptData, String uid, PrintWriter out) { + ClientTBPid clientTBPid = null; + // 鐢ㄦ埛宸茬粡鐧诲綍 + if (!StringUtil.isNullOrEmpty(uid)) { + TBPid tbPid = null; + if (acceptData.getPlatform().equalsIgnoreCase("android")) { + tbPid = tbPidService.getTBPid(Long.parseLong(uid), PidUser.TYPE_FANLI_ANDROID); + if (tbPid != null) { + String siteId = tbPid.getPid().split("_")[2]; + String adzoneId = tbPid.getPid().split("_")[3]; + TaoBaoUnionConfig config = taoBaoUnionConfigService.getConfigByAppIdCache(siteId); + clientTBPid = new ClientTBPid(config.getAppKey(), tbPid.getPid(), siteId, adzoneId); + } else { + clientTBPid = tbPidService.getAndroidDefault(); + } - } else { + } else { - clientTBPid = tbPidService.getIOSDefault(); + clientTBPid = tbPidService.getIOSDefault(); - } + } - } else { - if (acceptData.getPlatform().equalsIgnoreCase("android")) - clientTBPid = tbPidService.getAndroidDefault(); - else - clientTBPid = tbPidService.getIOSDefault(); - } + } else { + if (acceptData.getPlatform().equalsIgnoreCase("android")) + clientTBPid = tbPidService.getAndroidDefault(); + else + clientTBPid = tbPidService.getIOSDefault(); + } - JSONObject data = new JSONObject(); - data.put("pidInfo", clientTBPid); - out.print(JsonUtil.loadTrueResult(data)); - } + JSONObject data = new JSONObject(); + data.put("pidInfo", clientTBPid); + out.print(JsonUtil.loadTrueResult(data)); + } - /** - * 閫�鍑虹櫥褰� - * - * @param acceptData - * @param uid - * -鐢ㄦ埛ID - * @param out - */ - @RequestMapping(value = "logout") - public void logOut(AcceptData acceptData, Long uid, PrintWriter out) { - if (uid == null || uid == 0) - return; - if ("android".equalsIgnoreCase(acceptData.getPlatform())) { - DeviceActive deviceActive = deviceActiveService.getFirstActiveInfo(acceptData.getDevice()); - // 闇�瑕佽В缁慔W鎺ㄩ�佺殑鐢ㄦ埛缁戝畾 - deviceTokenHWService.unBindDeviceToken(acceptData.getDevice()); - if (deviceActive != null) { - // 瑙g粦OPPO鎺ㄩ�佺殑鐢ㄦ埛缁戝畾 - deviceTokenOPPOService.unBindUid(uid, deviceActive.getId()); - // 瑙g粦VIVO鎺ㄩ�佺殑鐢ㄦ埛缁戝畾 - deviceTokenVIVOService.unBindUid(uid, deviceActive.getId()); - // 瑙g粦XM鎺ㄩ�佺殑鐢ㄦ埛缁戝畾 - deviceTokenXMService.unBindUid(deviceActive.getId()); - } - } - out.print(JsonUtil.loadTrueResult("")); - } + /** + * 閫�鍑虹櫥褰� + * + * @param acceptData + * @param uid -鐢ㄦ埛ID + * @param out + */ + @RequestMapping(value = "logout") + public void logOut(AcceptData acceptData, Long uid, PrintWriter out) { + if (uid == null || uid == 0) + return; + if ("android".equalsIgnoreCase(acceptData.getPlatform())) { + DeviceActive deviceActive = deviceActiveService.getFirstActiveInfo(acceptData.getDevice()); + // 闇�瑕佽В缁慔W鎺ㄩ�佺殑鐢ㄦ埛缁戝畾 + deviceTokenHWService.unBindDeviceToken(acceptData.getDevice()); + if (deviceActive != null) { + // 瑙g粦OPPO鎺ㄩ�佺殑鐢ㄦ埛缁戝畾 + deviceTokenOPPOService.unBindUid(uid, deviceActive.getId()); + // 瑙g粦VIVO鎺ㄩ�佺殑鐢ㄦ埛缁戝畾 + deviceTokenVIVOService.unBindUid(uid, deviceActive.getId()); + // 瑙g粦XM鎺ㄩ�佺殑鐢ㄦ埛缁戝畾 + deviceTokenXMService.unBindUid(deviceActive.getId()); + } + } + out.print(JsonUtil.loadTrueResult("")); + } - /** - * 鏂扮増鐧诲綍 V1.5.3 - * - * @param acceptData - * @param vcode - * @param phone - * @param code - * @param loginType - * 鐧诲綍鏂瑰紡锛� 1-鎵嬫満鐧诲綍 2-寰俊鐧诲綍 - * @param request - * @param out - */ - @RequestMapping(value = "loginNew", method = RequestMethod.POST) - public void loginNew(AcceptData acceptData, String vcode, String phone, String code, int loginType, - HttpServletRequest request, PrintWriter out) { + /** + * 鏂扮増鐧诲綍 V1.5.3 + * + * @param acceptData + * @param vcode + * @param phone + * @param code + * @param loginType 鐧诲綍鏂瑰紡锛� 1-鎵嬫満鐧诲綍 2-寰俊鐧诲綍 + * @param request + * @param out + */ + @RequestMapping(value = "loginNew", method = RequestMethod.POST) + public void loginNew(AcceptData acceptData, String vcode, String phone, String code, int loginType, + HttpServletRequest request, PrintWriter out) { - try { - BusinessSystem system = businessSystemService.getBusinessSystemCache(acceptData.getPlatform(), - acceptData.getPackages()); - if (system == null) { - out.print(JsonUtil.loadFalseResult("绯荤粺涓嶅瓨鍦�")); - return; - } + // 2.0浠ヤ笅鐗堟湰涓嶅厑璁哥櫥褰� + if (!VersionUtil.greaterThan_2_0(acceptData.getPlatform(), acceptData.getVersion())) { + out.print("璇峰崌绾у埌鏈�鏂扮増鏈�"); + return; + } - UserInfo userInfo = null; - // 鎵嬫満鐧诲綍 - if (loginType == 1) { - userInfo = userAccountService.loginPhone(request, loginType, vcode, phone, system.getAppid()); - } + try { + BusinessSystem system = getSystem(acceptData); + if (system == null) { + out.print(JsonUtil.loadFalseResult("绯荤粺涓嶅瓨鍦�")); + return; + } - // 寰俊鐧诲綍 - if (loginType == 2) { - userInfo = userAccountService.loginWinXin(request, acceptData, loginType, code, system.getAppid()); - } + UserInfo userInfo = null; + // 鎵嬫満鐧诲綍 + if (loginType == 1) { + userInfo = userAccountService.loginPhone(new ProxyIP(request.getRemoteHost(), request.getRemotePort()), loginType, vcode, phone, system); + } - if (userInfo == null) { - out.print(JsonUtil.loadFalseResult("鐧诲綍澶辫触")); - } else { - JSONObject data = new JSONObject(); - data.put("userInfo", UserUtil.filterForClientUser(userInfo)); - out.print(JsonUtil.loadTrueResult(data)); + // 寰俊鐧诲綍 + if (loginType == 2) { + userInfo = userAccountService.loginWeiXin(new ProxyIP(request.getRemoteHost(), request.getRemotePort()), loginType, code, system); + } - final UserInfo uuser = userInfo; - ThreadUtil.run(new Runnable() { - public void run() { - String device = acceptData.getDevice(); - try { - // 鍚屾鑷畾涔夊鑸� - homeNavbarUserService.synchroDeviceToUser(uuser.getId(), device); - } catch (Exception e) { - LogHelper.errorDetailInfo(e); - } + if (userInfo == null) { + out.print(JsonUtil.loadFalseResult("鐧诲綍澶辫触")); + } else { + JSONObject data = new JSONObject(); + data.put("userInfo", UserUtil.filterForClientUser(userInfo)); + out.print(JsonUtil.loadTrueResult(data)); - /* 鍚屾鏈櫥褰曚箣鍓嶈澶囨娊濂栨暟鎹� */ - try { - int platformType = 0; - String platform = acceptData.getPlatform(); - if ("android".equals(platform)) { - platformType = 1; - } else if ("ios".equals(platform)) { - platformType = 2; - } - userSystemCouponService.copyLotteryPrize(uuser.getId(), platformType, device); - } catch (Exception e) { - e.printStackTrace(); - } + final UserInfo uuser = userInfo; + ThreadUtil.run(new Runnable() { + public void run() { + String device = acceptData.getDevice(); + try { + // 鍚屾鑷畾涔夊鑸� + homeNavbarUserService.synchroDeviceToUser(uuser.getId(), device); + } catch (Exception e) { + LogHelper.errorDetailInfo(e); + } - // 缁戝畾oppo鎺ㄩ�� - DeviceActive active = deviceActiveService.getFirstActiveInfo(acceptData.getDevice()); - if (active != null) { - deviceTokenOPPOService.bindUid(uuser.getId(), active.getId()); - deviceTokenVIVOService.bindUid(uuser.getId(), active.getId()); - deviceTokenXMService.bindUid(active.getId(), uuser.getId()); - } - } - }); - } + // 缁戝畾oppo鎺ㄩ�� + DeviceActive active = deviceActiveService.getFirstActiveInfo(acceptData.getDevice()); + if (active != null) { + deviceTokenOPPOService.bindUid(uuser.getId(), active.getId()); + deviceTokenVIVOService.bindUid(uuser.getId(), active.getId()); + deviceTokenXMService.bindUid(active.getId(), uuser.getId()); + } + } + }); + } - } catch (UserAccountException e) { - out.print(JsonUtil.loadFalseResult(e.getCode(), e.getMsg())); - try { - LogHelper.cookieLog("鐧诲綍鍑洪敊:" + e.getCode() + "-" + e.getMessage()); - } catch (Exception e1) { - e1.printStackTrace(); - } - } catch (Exception e) { - out.print(JsonUtil.loadFalseResult("鐧诲綍澶辫触")); - try { - LogHelper.errorDetailInfo(e); - } catch (Exception e1) { - e1.printStackTrace(); - } - } - } + } catch (UserAccountException e) { + out.print(JsonUtil.loadFalseResult(e.getCode(), e.getMsg())); + try { + LogHelper.error("鐧诲綍鍑洪敊:" + e.getCode() + "-" + e.getMessage()); + } catch (Exception e1) { + e1.printStackTrace(); + } + } catch (Exception e) { + out.print(JsonUtil.loadFalseResult("鐧诲綍澶辫触")); + try { + LogHelper.errorDetailInfo(e); + } catch (Exception e1) { + e1.printStackTrace(); + } + } + } - /** - * 缁戝畾鐢佃瘽鍙风爜 V1.5.3 - * - * @param acceptData - * @param vcode - * @param phone - * @param out - */ - @RequestMapping(value = "bindPhoneNew") - public void bindPhoneNew(AcceptData acceptData, Long uid, String vcode, String phone, PrintWriter out) { + /** + * 缁戝畾鐢佃瘽鍙风爜 V1.5.3 + * + * @param acceptData + * @param vcode + * @param phone + * @param out + */ + @RequestMapping(value = "bindPhoneNew") + public void bindPhoneNew(AcceptData acceptData, Long uid, String vcode, String phone, PrintWriter out) { - BusinessSystem system = businessSystemService.getBusinessSystemCache(acceptData.getPlatform(), - acceptData.getPackages()); - if (system == null) { - out.print(JsonUtil.loadFalseResult("绯荤粺涓嶅瓨鍦�")); - return; - } + BusinessSystem system = getSystem(acceptData); + if (system == null) { + out.print(JsonUtil.loadFalseResult("绯荤粺涓嶅瓨鍦�")); + return; + } - if (StringUtil.isNullOrEmpty(vcode)) { - out.print(JsonUtil.loadFalseResult("楠岃瘉鐮佷笉鑳戒负绌�")); - return; - } + if (StringUtil.isNullOrEmpty(vcode)) { + out.print(JsonUtil.loadFalseResult("楠岃瘉鐮佷笉鑳戒负绌�")); + return; + } - if (StringUtil.isNullOrEmpty(phone)) { - out.print(JsonUtil.loadFalseResult("鐢佃瘽鍙风爜涓嶈兘涓虹┖")); - return; - } + if (StringUtil.isNullOrEmpty(phone)) { + out.print(JsonUtil.loadFalseResult("鐢佃瘽鍙风爜涓嶈兘涓虹┖")); + return; + } - phone = phone.replaceAll(" ", ""); + phone = phone.replaceAll(" ", ""); - String oldVCode = redisManager.getSMSVCode(phone, SMSHistory.TYPE_BIND); - if (Constant.IS_OUTNET) { - if (!vcode.equalsIgnoreCase(oldVCode)) { - out.print(JsonUtil.loadFalseResult(9001, "楠岃瘉鐮侀敊璇紝閲嶆柊杈撳叆")); - return; - } - redisManager.clearSMSFrequencyLimit(phone, SMSHistory.TYPE_BIND); - } + String oldVCode = redisManager.getSMSVCode(phone, SMSHistory.TYPE_BIND); + if (Constant.IS_OUTNET) { + if (!vcode.equalsIgnoreCase(oldVCode)) { + out.print(JsonUtil.loadFalseResult(9001, "楠岃瘉鐮侀敊璇紝閲嶆柊杈撳叆")); + return; + } + redisManager.clearSMSFrequencyLimit(phone, SMSHistory.TYPE_BIND); + } - try { - // 缁戝畾鐢ㄦ埛 - userAccountService.bindPhoneNew(uid, phone); + try { + // 缁戝畾鐢ㄦ埛 + userAccountService.bindPhoneNew(uid, phone); - UserInfo user = userInfoService.getUserByIdWithMybatis(uid); - // 鍒ゆ柇鐢佃瘽鍙风爜鏄惁宸茬粡灏佺 - ForbiddenUserIdentifyCode ic = forbiddenUserIdentifyCodeService - .listByTypeAndIdentifyCode(ForbiddenUserIdentifyCodeTypeEnum.phone, phone); - if (ic != null && ic.getEffective() != null && ic.getEffective()) { - out.print(JsonUtil.loadFalseResult(Constant.CODE_FORBIDDEN_USER, Constant.FORBIDDEN_USER_REASON_DESC)); - // 灏佺鐢ㄦ埛 - // 灏佺缁戝畾鐨勬甯哥敤鎴� - if (user != null && user.getState() != null && user.getState() == UserInfo.STATE_NORMAL) { - userAccountService.forbiddenUser(uid, "灏佺锛氱粦瀹氳灏佺鐨勭數璇濆彿鐮�"); - } - return; - } + UserInfo user = userInfoService.getUserByIdWithMybatis(uid); + // 鍒ゆ柇鐢佃瘽鍙风爜鏄惁宸茬粡灏佺 + ForbiddenUserIdentifyCode ic = forbiddenUserIdentifyCodeService + .listByTypeAndIdentifyCode(ForbiddenUserIdentifyCodeTypeEnum.phone, phone); + if (ic != null && ic.getEffective() != null && ic.getEffective()) { + out.print(JsonUtil.loadFalseResult(Constant.CODE_FORBIDDEN_USER, Constant.FORBIDDEN_USER_REASON_DESC)); + // 灏佺鐢ㄦ埛 + // 灏佺缁戝畾鐨勬甯哥敤鎴� + if (user != null && user.getState() != null && user.getState() == UserInfo.STATE_NORMAL) { + userAccountService.forbiddenUser(uid, "灏佺锛氱粦瀹氳灏佺鐨勭數璇濆彿鐮�"); + } + return; + } - JSONObject data = new JSONObject(); - data.put("userInfo", UserUtil.filterForClientUser(user)); - out.print(JsonUtil.loadTrueResult(data)); + JSONObject data = new JSONObject(); + data.put("userInfo", UserUtil.filterForClientUser(user)); + out.print(JsonUtil.loadTrueResult(data)); - } catch (UserAccountException e) { - out.print(JsonUtil.loadFalseResult(e.getCode(), e.getMsg())); - } catch (Exception e) { - out.print(JsonUtil.loadFalseResult(1, "缁戝畾澶辫触")); - } - } + } catch (UserAccountException e) { + out.print(JsonUtil.loadFalseResult(e.getCode(), e.getMsg())); + } catch (Exception e) { + out.print(JsonUtil.loadFalseResult(1, "缁戝畾澶辫触")); + } + } - /** - * 鏇存敼寰俊 - * - * @param acceptData - * @param uid - * @param code - * @param out - */ - @RequestMapping(value = "bindWeiXin") - public void bindWeiXin(AcceptData acceptData, Long uid, String code, PrintWriter out) { - BusinessSystem system = businessSystemService.getBusinessSystemCache(acceptData.getPlatform(), - acceptData.getPackages()); + /** + * 鏇存敼寰俊 + * + * @param acceptData + * @param uid + * @param code + * @param out + */ + @RequestMapping(value = "bindWeiXin") + public void bindWeiXin(AcceptData acceptData, Long uid, String code, PrintWriter out) { + BusinessSystem system = getSystem(acceptData); - if (system == null) { - out.print(JsonUtil.loadFalseResult("绯荤粺涓嶅瓨鍦�")); - return; - } + if (system == null) { + out.print(JsonUtil.loadFalseResult("绯荤粺涓嶅瓨鍦�")); + return; + } - if (StringUtil.isNullOrEmpty(code)) { - out.print(JsonUtil.loadFalseResult("璇蜂笂浼燾ode")); - return; - } + if (StringUtil.isNullOrEmpty(code)) { + out.print(JsonUtil.loadFalseResult("璇蜂笂浼燾ode")); + return; + } - try { - userAccountService.bindWeiXin(acceptData, uid, code); + try { + userAccountService.bindWeiXin(acceptData, uid, code); - UserInfo user = userInfoService.getUserByIdWithMybatis(uid); - // 鍒ゆ柇taoBaoUid鏄惁宸茬粡灏佺 - ForbiddenUserIdentifyCode ic = forbiddenUserIdentifyCodeService - .listByTypeAndIdentifyCode(ForbiddenUserIdentifyCodeTypeEnum.wxUnionId, user.getWxUnionId()); - if (ic != null && ic.getEffective() != null && ic.getEffective()) { - out.print(JsonUtil.loadFalseResult(Constant.CODE_FORBIDDEN_USER, Constant.FORBIDDEN_USER_REASON_DESC)); - // 灏佺鐢ㄦ埛 - // 灏佺缁戝畾鐨勬甯哥敤鎴� - if (user != null && user.getState() != null && user.getState() == UserInfo.STATE_NORMAL) { - userAccountService.forbiddenUser(uid, "灏佺锛氱粦瀹氳灏佺鐨勫井淇″彿"); - } - return; - } + UserInfo user = userInfoService.getUserByIdWithMybatis(uid); + // 鍒ゆ柇taoBaoUid鏄惁宸茬粡灏佺 + ForbiddenUserIdentifyCode ic = forbiddenUserIdentifyCodeService + .listByTypeAndIdentifyCode(ForbiddenUserIdentifyCodeTypeEnum.wxUnionId, user.getWxUnionId()); + if (ic != null && ic.getEffective() != null && ic.getEffective()) { + out.print(JsonUtil.loadFalseResult(Constant.CODE_FORBIDDEN_USER, Constant.FORBIDDEN_USER_REASON_DESC)); + // 灏佺鐢ㄦ埛 + // 灏佺缁戝畾鐨勬甯哥敤鎴� + if (user != null && user.getState() != null && user.getState() == UserInfo.STATE_NORMAL) { + userAccountService.forbiddenUser(uid, "灏佺锛氱粦瀹氳灏佺鐨勫井淇″彿"); + } + return; + } - JSONObject data = new JSONObject(); - data.put("userInfo", UserUtil.filterForClientUser(user)); - out.print(JsonUtil.loadTrueResult(data)); - } catch (UserAccountException e) { - out.print(JsonUtil.loadFalseResult(e.getCode(), e.getMsg())); - } - } + JSONObject data = new JSONObject(); + data.put("userInfo", UserUtil.filterForClientUser(user)); + out.print(JsonUtil.loadTrueResult(data)); + } catch (UserAccountException e) { + out.print(JsonUtil.loadFalseResult(e.getCode(), e.getMsg())); + } + } } -- Gitblit v1.8.0