From 1e4e20573dfc917e7b43068da35ee532a192aacd Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期五, 03 一月 2020 15:09:14 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/div' into div

---
 fanli/src/main/java/com/yeshi/fanli/service/impl/user/UserAccountServiceImpl.java |   43 +++++++++++++++++++++++++++++++++----------
 1 files changed, 33 insertions(+), 10 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/service/impl/user/UserAccountServiceImpl.java b/fanli/src/main/java/com/yeshi/fanli/service/impl/user/UserAccountServiceImpl.java
index e99044f..e2b39fd 100644
--- a/fanli/src/main/java/com/yeshi/fanli/service/impl/user/UserAccountServiceImpl.java
+++ b/fanli/src/main/java/com/yeshi/fanli/service/impl/user/UserAccountServiceImpl.java
@@ -60,7 +60,9 @@
 import com.yeshi.fanli.service.inter.user.msg.UserAccountMsgNotificationService;
 import com.yeshi.fanli.service.inter.user.tb.UserExtraTaoBaoInfoService;
 import com.yeshi.fanli.util.Constant;
+import com.yeshi.fanli.util.FilePathEnum;
 import com.yeshi.fanli.util.FileUtil;
+import com.yeshi.fanli.util.RedisKeyEnum;
 import com.yeshi.fanli.util.RedisManager;
 import com.yeshi.fanli.util.StringUtil;
 import com.yeshi.fanli.util.ThreadUtil;
@@ -912,7 +914,7 @@
 			fw.close();
 
 			String logUrl = COSManager.getInstance()
-					.uploadFile(new File(logPath), "beifen/" + new File(logPath).getName()).getUrl();
+					.uploadFile(new File(logPath), FilePathEnum.beifen.getPath() + new File(logPath).getName()).getUrl();
 			return logUrl;
 		} catch (IOException e) {
 			e.printStackTrace();
@@ -1018,7 +1020,9 @@
 		// 娓呯┖闄愬埗
 		redisManager.clearSMSFrequencyLimit(phone, SMSHistory.TYPE_LOGIN);
 		// 娓呯悊娆℃暟
-		redisManager.removeCommonString("sendMSNLoginCount" + phone);
+		String key = RedisKeyEnum.getRedisKey(RedisKeyEnum.SMSLoginCount, phone);
+		redisManager.removeCommonString(key);
+
 
 		// 閲囩敤redis浜嬪姟闃叉涓�涓墜鏈哄彿澶氭娉ㄥ唽闂
 		String watchKey = StringUtil.Md5("REGISTER:" + phone);
@@ -1128,7 +1132,7 @@
 						InputStream asInputStream = HttpUtil.getAsInputStream(weiXinUser.getHeadimgurl());
 						if (asInputStream != null) {
 							FileUploadResult result = COSManager.getInstance().uploadFile(asInputStream,
-									String.format("/portrait/wx/%s_%s.jpg", weiXinUser.getUnionid(),
+									String.format(FilePathEnum.userPortrait.getPath() + "%s_%s.jpg", weiXinUser.getUnionid(),
 											System.currentTimeMillis() + ""));
 							if (result != null && !StringUtil.isNullOrEmpty(result.getUrl()))
 								portrait = result.getUrl();
@@ -1205,9 +1209,9 @@
 
 		UserInfo userInfo = userInfoMapper.getEffectiveUserInfoByWXUnionId(weiXinUser.getUnionid());
 		if (userInfo == null) {
-			String longinKey = StringUtil.Md5("WXLogin:" + weiXinUser.getUnionid());
-			redisManager.cacheCommonString(longinKey, JsonUtil.getSimpleGson().toJson(weiXinUser), 60 * 20);
-			throw new UserAccountException(101, longinKey);
+			String key = RedisKeyEnum.getRedisKey(RedisKeyEnum.emptyKey, StringUtil.Md5("WXLogin:" + weiXinUser.getUnionid()));
+			redisManager.cacheCommonString(key, JsonUtil.getSimpleGson().toJson(weiXinUser), 60 * 20);
+			throw new UserAccountException(101, key);
 		}
 		// 鏇存柊璐︽埛鐧诲綍淇℃伅
 		updateLonginInfo(userInfo, loginType, request);
@@ -1278,14 +1282,33 @@
 
 	}
 
+	@Transactional(rollbackFor=UserAccountException.class)
 	@Override
 	public void bindWeiXin(AcceptData acceptData, Long uid, String code) throws UserAccountException {
+		WXAccountInfoDTO wxAccount = Constant.getWXAccount(acceptData.getPlatform(), acceptData.getVersion());
+		WeiXinUser weiXinUser = WXLoginUtil.getWeiXinUser(code, wxAccount.getAppId(), wxAccount.getAppSecret());
+		if (weiXinUser == null) {
+			throw new UserAccountException(2, "寰俊甯愬彿鎺堟潈澶辫触");
+		}
+
+		String wxUnionId = weiXinUser.getUnionid();
+		if (StringUtil.isNullOrEmpty(wxUnionId)) {
+			throw new UserAccountException(2, "寰俊甯愬彿鎺堟潈澶辫触");
+		}
+		bindWeiXin(uid, weiXinUser);
+	}
+	
+	
+	
+	
+	@Transactional(rollbackFor=UserAccountException.class)
+	@Override
+	public void bindWeiXin(Long uid,WeiXinUser weiXinUser) throws UserAccountException {
 		UserInfo user = userInfoMapper.selectAvailableByPrimaryKey(uid);
 		if (user == null) {
 			throw new UserAccountException(1, "鐢ㄦ埛涓嶅瓨鍦�");
 		}
-		WXAccountInfoDTO wxAccount = Constant.getWXAccount(acceptData.getPlatform(), acceptData.getVersion());
-		WeiXinUser weiXinUser = WXLoginUtil.getWeiXinUser(code, wxAccount.getAppId(), wxAccount.getAppSecret());
+		
 		if (weiXinUser == null) {
 			throw new UserAccountException(2, "寰俊甯愬彿鎺堟潈澶辫触");
 		}
@@ -1334,7 +1357,7 @@
 				LogHelper.test("寰俊澶村儚涓嬭浇澶辫触: " + weiXinUser.getUnionid() + " " + headimgurl);
 			} else {
 				FileUploadResult result = COSManager.getInstance().uploadFile(asInputStream, String
-						.format("/portrait/wx/%s_%s.jpg", weiXinUser.getUnionid(), System.currentTimeMillis() + ""));
+						.format(FilePathEnum.userPortrait.getPath() + "%s_%s.jpg", weiXinUser.getUnionid(), System.currentTimeMillis() + ""));
 				if (result != null && !StringUtil.isNullOrEmpty(result.getUrl())) {
 					headimgurl = result.getUrl();
 				} else {
@@ -1394,7 +1417,7 @@
 			InputStream asInputStream = HttpUtil.getAsInputStream(weiXinUser.getHeadimgurl());
 			if (asInputStream != null) {
 				FileUploadResult result = COSManager.getInstance().uploadFile(asInputStream, String
-						.format("/portrait/wx/%s_%s.jpg", weiXinUser.getUnionid(), System.currentTimeMillis() + ""));
+						.format(FilePathEnum.userPortrait.getPath() +"%s_%s.jpg", weiXinUser.getUnionid(), System.currentTimeMillis() + ""));
 				if (result != null && !StringUtil.isNullOrEmpty(result.getUrl()))
 					portrait = result.getUrl();
 			} else {

--
Gitblit v1.8.0