From 756f06e0eabe2e54728036ed9c3f91263fb91855 Mon Sep 17 00:00:00 2001
From: yujian <yujian>
Date: 星期五, 12 四月 2019 11:39:45 +0800
Subject: [PATCH] 专题位置管控
---
fanli/src/main/java/com/yeshi/fanli/controller/client/UserAccountController.java | 223 ++++++++++++++++++++++++++++++++++++++++++++++++++++---
1 files changed, 210 insertions(+), 13 deletions(-)
diff --git a/fanli/src/main/java/com/yeshi/fanli/controller/client/UserAccountController.java b/fanli/src/main/java/com/yeshi/fanli/controller/client/UserAccountController.java
index 18ad16d..974616b 100644
--- a/fanli/src/main/java/com/yeshi/fanli/controller/client/UserAccountController.java
+++ b/fanli/src/main/java/com/yeshi/fanli/controller/client/UserAccountController.java
@@ -9,6 +9,7 @@
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;
@@ -39,7 +40,6 @@
import com.yeshi.fanli.service.inter.order.OrderService;
import com.yeshi.fanli.service.inter.push.DeviceTokenHWService;
import com.yeshi.fanli.service.inter.taobao.TaoBaoUnionConfigService;
-import com.yeshi.fanli.service.inter.user.AccountMessageService;
import com.yeshi.fanli.service.inter.user.BindingAccountService;
import com.yeshi.fanli.service.inter.user.ExtractService;
import com.yeshi.fanli.service.inter.user.ForbiddenUserIdentifyCodeService;
@@ -102,9 +102,6 @@
private LostOrderService lostOrderService;
@Resource
- private AccountMessageService accountMessageService;
-
- @Resource
private HongBaoManageService hongBaoManageService;
@Resource
@@ -136,6 +133,7 @@
@Resource
private UserMoneyService userMoneyService;
+
private static final String PASSWORD_MAX_ERROR = "password_max_error";
private static final String EXTRACT_MIN_MONEY = "extract_min_money";
@@ -1075,15 +1073,8 @@
} else {
- tbPid = tbPidService.getTBPid(Long.parseLong(uid), PidUser.TYPE_FANLI_IOS);
- 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.getIOSDefault();
- }
+ clientTBPid = tbPidService.getIOSDefault();
+
}
} else {
@@ -1115,4 +1106,210 @@
deviceTokenHWService.unBindDeviceToken(acceptData.getDevice());
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) {
+
+ try {
+ BusinessSystem system = businessSystemService.getBusinessSystemCache(acceptData.getPlatform(),
+ acceptData.getPackages());
+ if (system == null) {
+ out.print(JsonUtil.loadFalseResult("绯荤粺涓嶅瓨鍦�"));
+ return;
+ }
+
+ UserInfo userInfo = null;
+ // 鎵嬫満鐧诲綍
+ if (loginType == 1) {
+ userInfo = userAccountService.loginPhone(request, loginType, vcode, phone, system.getAppid());
+ }
+
+ // 寰俊鐧诲綍
+ if (loginType == 2) {
+ userInfo = userAccountService.loginWinXin(request,loginType, code, system.getAppid());
+ }
+
+ if (userInfo == null) {
+ out.print(JsonUtil.loadFalseResult("鐧诲綍澶辫触"));
+ } else {
+ JSONObject data = new JSONObject();
+ data.put("userInfo", UserUtil.filterForClientUser(userInfo));
+ out.print(JsonUtil.loadTrueResult(data));
+
+ final UserInfo uuser = userInfo;
+ 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());
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ }
+ });
+ }
+
+ } 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();
+ }
+ }
+ }
+
+
+
+ /**
+ * 缁戝畾鐢佃瘽鍙风爜 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;
+ }
+
+ if (StringUtil.isNullOrEmpty(vcode)) {
+ out.print(JsonUtil.loadFalseResult("楠岃瘉鐮佷笉鑳戒负绌�"));
+ return;
+ }
+
+ if (StringUtil.isNullOrEmpty(phone)) {
+ out.print(JsonUtil.loadFalseResult("鐢佃瘽鍙风爜涓嶈兘涓虹┖"));
+ return;
+ }
+
+ 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);
+ }
+
+
+ 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) {
+ UserInfo update = new UserInfo(uid);
+ update.setState(UserInfo.STATE_FORBIDDEN);
+ update.setStateDesc("缁戝畾琚皝绂佺殑鐢佃瘽鍙风爜琚皝绂�");
+ userInfoService.updateByPrimaryKeySelective(update);
+ }
+ 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()));
+ } 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());
+
+ if (system == null) {
+ out.print(JsonUtil.loadFalseResult("绯荤粺涓嶅瓨鍦�"));
+ return;
+ }
+
+ if (StringUtil.isNullOrEmpty(code)) {
+ out.print(JsonUtil.loadFalseResult("璇蜂笂浼燾ode"));
+ return;
+ }
+
+ try {
+ userAccountService.bindWeiXin(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) {
+ UserInfo update = new UserInfo(uid);
+ update.setState(UserInfo.STATE_FORBIDDEN);
+ update.setStateDesc("缁戝畾琚皝绂佺殑寰俊鍙疯灏佺");
+ userInfoService.updateByPrimaryKeySelective(update);
+ }
+ 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()));
+ }
+ }
+
}
--
Gitblit v1.8.0