From e6269b00183bf7f46c494fa15ab75d702d2764ab Mon Sep 17 00:00:00 2001
From: yujian <yujian@123.com>
Date: 星期四, 12 九月 2019 15:16:01 +0800
Subject: [PATCH] 红包口令 失效金额bug
---
fanli/src/main/java/com/yeshi/fanli/service/impl/user/UserAccountServiceImpl.java | 71 ++++++++++++++++++++++++++++-------
1 files changed, 57 insertions(+), 14 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 9185a59..14ef53e 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
@@ -12,6 +12,7 @@
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
+import org.springframework.context.annotation.Lazy;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.yeshi.utils.JsonUtil;
@@ -33,9 +34,10 @@
import com.yeshi.fanli.entity.bus.user.UserConnectHistory;
import com.yeshi.fanli.entity.bus.user.UserExtraTaoBaoInfo;
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.exception.UserAccountException;
import com.yeshi.fanli.exception.user.ForbiddenUserIdentifyCodeException;
+import com.yeshi.fanli.exception.user.UserAccountException;
import com.yeshi.fanli.log.LogHelper;
import com.yeshi.fanli.service.inter.hongbao.ThreeSaleSerivce;
import com.yeshi.fanli.service.inter.msg.UserAccountMsgNotificationService;
@@ -47,6 +49,7 @@
import com.yeshi.fanli.service.inter.user.UserExtraTaoBaoInfoService;
import com.yeshi.fanli.service.inter.user.UserInfoDeleteRecordService;
import com.yeshi.fanli.service.inter.user.UserInfoExtraService;
+import com.yeshi.fanli.service.inter.user.UserInfoModifyRecordService;
import com.yeshi.fanli.service.inter.user.UserInfoService;
import com.yeshi.fanli.util.Constant;
import com.yeshi.fanli.util.FileUtil;
@@ -108,7 +111,12 @@
@Resource
private JedisPool jedisPool;
-
+
+
+ @Lazy
+ @Resource
+ private UserInfoModifyRecordService userInfoModifyRecordService;
+
@Transactional
@Override
public LoginResult login(HttpServletRequest request, Boolean first, String appId, String code, String phone,
@@ -689,8 +697,9 @@
user.setRank(0);
if (StringUtil.isNullOrEmpty(user.getPortrait()))
user.setPortrait(Constant.systemCommonConfig.getDefaultPortrait());
-
userInfoMapper.insertSelective(user);
+
+ // 鏄电О涓虹┖鏃� 榛樿鏄电О
if (StringUtil.isNullOrEmpty(user.getNickName())) {
UserInfo updateUserInfo = new UserInfo(user.getId());
updateUserInfo.setNickName(Constant.systemCommonConfig.getDefaultNickName() + user.getId());
@@ -703,6 +712,14 @@
} catch (Exception e) {
e.printStackTrace();
}
+
+
+ if (!StringUtil.isNullOrEmpty(user.getPhone()))
+ userInfoModifyRecordService.addModifyRecord(uid, ModifyTypeEnum.bindPhone, user.getPhone());
+
+ if (!StringUtil.isNullOrEmpty(user.getWxUnionId()))
+ userInfoModifyRecordService.addModifyRecord(uid, ModifyTypeEnum.bindWeiXin, user.getWxUnionId());
+
}
@Override
@@ -727,6 +744,9 @@
update.setPhone(phone);
userInfoMapper.updateByPrimaryKeySelective(update);
userAccountMsgNotificationService.bindingSuccess(uid, MsgAccountDetailFactory.TYPE_PHONE);
+
+
+ userInfoModifyRecordService.addModifyRecord(uid, ModifyTypeEnum.bindPhone, phone);
}
@Override
@@ -829,18 +849,29 @@
updateUserInfo.setWxOpenId(weiXinUser.getOpenid());
updateUserInfo.setWxPic(weiXinUser.getHeadimgurl());
updateUserInfo.setWxUnionId(weiXinUser.getUnionid());
- updateUserInfo.setNickName(weiXinUser.getNickname());
- updateUserInfo.setPortrait(weiXinUser.getHeadimgurl());
- if (StringUtil.isNullOrEmpty(weiXinUser.getNickname())) {
- updateUserInfo.setNickName(Constant.systemCommonConfig.getDefaultNickName());
+
+ // 灏嗛粯璁ゆ樀绉版浛鎹㈡垚寰俊鏄电О
+ String defaultNickName = Constant.systemCommonConfig.getDefaultNickName();
+ if (!StringUtil.isNullOrEmpty(defaultNickName) && !StringUtil.isNullOrEmpty(weiXinUser.getNickname())) {
+ defaultNickName = defaultNickName + uid;
+ if ((defaultNickName.equals(user.getNickName()) || "杩斿埄鍒�".equals(user.getNickName()))) {
+ updateUserInfo.setNickName(weiXinUser.getNickname());
+ }
}
- if (StringUtil.isNullOrEmpty(weiXinUser.getHeadimgurl())) {
- updateUserInfo.setPortrait(Constant.systemCommonConfig.getDefaultPortrait());
+ // 灏嗛粯璁ゅご鍍忔浛鎹㈡垚寰俊澶村儚
+ String defaultPortrait = Constant.systemCommonConfig.getDefaultPortrait();
+ if (!StringUtil.isNullOrEmpty(weiXinUser.getHeadimgurl()) && !StringUtil.isNullOrEmpty(defaultPortrait)
+ && defaultPortrait.equals(user.getPortrait())) {
+ updateUserInfo.setPortrait(weiXinUser.getHeadimgurl());
}
+
userInfoMapper.updateByPrimaryKeySelective(updateUserInfo);
userAccountMsgNotificationService.changeBindingSuccess(uid, MsgAccountDetailFactory.TYPE_WX);
+
+
+ userInfoModifyRecordService.addModifyRecord(uid, ModifyTypeEnum.bindWeiXin, weiXinUser.getUnionid());
}
@Override
@@ -1001,7 +1032,7 @@
} else {
userInfo = new UserInfo();
userInfo.setAppId(appId);
- userInfo.setNickName(Constant.systemCommonConfig.getDefaultNickName());
+ //userInfo.setNickName(Constant.systemCommonConfig.getDefaultNickName());
userInfo.setPortrait(Constant.systemCommonConfig.getDefaultPortrait());
userInfo.setPhone(phone);
userInfo.setLoginType(loginType);
@@ -1015,6 +1046,8 @@
} catch (Exception e) {
e.printStackTrace();
}
+
+ userInfoModifyRecordService.addModifyRecord(userInfo.getId(), ModifyTypeEnum.bindPhone, phone);
}
return userInfo;
@@ -1099,6 +1132,8 @@
} catch (Exception e) {
e.printStackTrace();
}
+
+ userInfoModifyRecordService.addModifyRecord(userInfo.getId(), ModifyTypeEnum.bindWeiXin, weiXinUser.getUnionid());
}
return userInfo;
}
@@ -1164,6 +1199,9 @@
// 鍙戦�佹秷鎭�
userAccountMsgNotificationService.bindingSuccess(uid, MsgAccountDetailFactory.TYPE_PHONE);
+
+ userInfoModifyRecordService.addModifyRecord(uid, ModifyTypeEnum.bindPhone, phone);
+
}
@Override
@@ -1205,11 +1243,13 @@
// 灏嗛粯璁ゆ樀绉版浛鎹㈡垚寰俊鏄电О
String defaultNickName = Constant.systemCommonConfig.getDefaultNickName();
- if (!StringUtil.isNullOrEmpty(weiXinUser.getNickname()) && !StringUtil.isNullOrEmpty(defaultNickName)
- && defaultNickName.equals(user.getNickName())) {
- updateUserInfo.setNickName(weiXinUser.getNickname());
+ if (!StringUtil.isNullOrEmpty(defaultNickName) && !StringUtil.isNullOrEmpty(weiXinUser.getNickname())) {
+ defaultNickName = defaultNickName + uid;
+ if ((defaultNickName.equals(user.getNickName()) || "杩斿埄鍒�".equals(user.getNickName()))) {
+ updateUserInfo.setNickName(weiXinUser.getNickname());
+ }
}
-
+
// 灏嗛粯璁ゅご鍍忔浛鎹㈡垚寰俊澶村儚
String defaultPortrait = Constant.systemCommonConfig.getDefaultPortrait();
if (!StringUtil.isNullOrEmpty(weiXinUser.getHeadimgurl()) && !StringUtil.isNullOrEmpty(defaultPortrait)
@@ -1232,6 +1272,9 @@
userAccountBindingHistoryService.addUserAccountBindingHistory(history);
userAccountMsgNotificationService.bindingSuccess(uid, MsgAccountDetailFactory.TYPE_WX);
+
+
+ userInfoModifyRecordService.addModifyRecord(uid, ModifyTypeEnum.bindWeiXin, wxUnionId);
}
@Override
--
Gitblit v1.8.0