|
@@ -488,32 +488,81 @@ public class AppUserInfoController {
|
|
String userType = request.getUserType();
|
|
String userType = request.getUserType();
|
|
appUserInfo.setUserType(userType);
|
|
appUserInfo.setUserType(userType);
|
|
switch (userType){
|
|
switch (userType){
|
|
- case "1":
|
|
|
|
|
|
+ case "1": //当为微信用户时
|
|
AppUserInfo wxInfo = new AppUserInfo();
|
|
AppUserInfo wxInfo = new AppUserInfo();
|
|
- wxInfo.setUnionId(request.getUnionId());
|
|
|
|
wxInfo.setStationId(request.getStationId());
|
|
wxInfo.setStationId(request.getStationId());
|
|
- AppUserInfo wxInfoResult = appUserInfoService.getAppUserInfo(wxInfo);
|
|
|
|
- if(wxInfoResult !=null){
|
|
|
|
- //如果存在微信用户
|
|
|
|
- appUserInfoService.updateAppUserInfo(appUserInfo);
|
|
|
|
|
|
+ //判断当前登录是否存在手机号
|
|
|
|
+ if(StringUtils.isNotBlank(request.getMobilePhone())){
|
|
|
|
+ wxInfo.setMobilePhone(request.getMobilePhone());
|
|
|
|
+ AppUserInfo wxInfoResult = appUserInfoService.getAppUserInfo(wxInfo);
|
|
|
|
+ if(wxInfoResult !=null){
|
|
|
|
+ //如果不为空,则说明存在支付宝小程序用户信息;
|
|
|
|
+ appUserInfoService.updateAppUserInfo(appUserInfo);
|
|
|
|
+ //获取客户公众号的openId,将微信公众号的openId添加到已存在的支付宝小程序用户信息上
|
|
|
|
+ //1.获取openId
|
|
|
|
+
|
|
|
|
+ //2.更新
|
|
|
|
+
|
|
|
|
+ //3.删除改用户已存在公众号信息
|
|
|
|
+
|
|
|
|
+ }else {
|
|
|
|
+ //否则,根据unionID查询用户信息
|
|
|
|
+ wxInfo.setUnionId(request.getUnionId());
|
|
|
|
+ wxInfo.setMobilePhone(null);
|
|
|
|
+ AppUserInfo appUserInfoByUnionID = appUserInfoService.getAppUserInfo(wxInfo);
|
|
|
|
+ if(appUserInfoByUnionID !=null){
|
|
|
|
+ //如果不为空,则说明存在公众号用户信息
|
|
|
|
+ appUserInfoService.updateAppUserInfo(appUserInfo);
|
|
|
|
+ }else {
|
|
|
|
+ //否则,新增用户信息
|
|
|
|
+ appUserInfoService.AddAppUserInfo(appUserInfo);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
}else {
|
|
}else {
|
|
- //如果不存在微信用户
|
|
|
|
- appUserInfoService.AddAppUserInfo(appUserInfo);
|
|
|
|
|
|
+ //如果没有手机号,则说明是用户公众号登录
|
|
|
|
+ wxInfo.setUnionId(request.getUnionId());
|
|
|
|
+ AppUserInfo appUserInfoNoPhone = appUserInfoService.getAppUserInfo(wxInfo);
|
|
|
|
+ if(appUserInfoNoPhone !=null){
|
|
|
|
+ appUserInfoService.updateAppUserInfo(appUserInfo);
|
|
|
|
+ }else {
|
|
|
|
+ appUserInfoService.AddAppUserInfo(appUserInfo);
|
|
|
|
+ }
|
|
}
|
|
}
|
|
break;
|
|
break;
|
|
case "2":
|
|
case "2":
|
|
AppUserInfo aLiInfo =new AppUserInfo();
|
|
AppUserInfo aLiInfo =new AppUserInfo();
|
|
aLiInfo.setStationId(request.getStationId());
|
|
aLiInfo.setStationId(request.getStationId());
|
|
- aLiInfo.setALiId(request.getUnionId());
|
|
|
|
- AppUserInfo aLiInfoResult = appUserInfoService.getAppUserInfo(aLiInfo);
|
|
|
|
- if(aLiInfoResult !=null){
|
|
|
|
- //如果存在支付宝用户信息
|
|
|
|
- appUserInfo.setALiId(request.getALiId());
|
|
|
|
- appUserInfoService.updateAppUserInfo(appUserInfo);
|
|
|
|
-
|
|
|
|
|
|
+ if(StringUtils.isNotBlank(request.getMobilePhone())){
|
|
|
|
+ //如果手机号不为空,则说明是支付宝小程序登录
|
|
|
|
+ aLiInfo.setMobilePhone(request.getMobilePhone());
|
|
|
|
+ AppUserInfo appUserInfos = appUserInfoService.getAppUserInfo(aLiInfo);
|
|
|
|
+ if(appUserInfos !=null){
|
|
|
|
+ //如果不为空,则说明用户存在微信小程序用户信息
|
|
|
|
+ appUserInfoService.updateAppUserInfo(appUserInfo);
|
|
|
|
+ //删除用户支付宝的公众号信息
|
|
|
|
+ //appUserInfoService.delAliInfo();
|
|
|
|
+ }else {
|
|
|
|
+ //如果为空
|
|
|
|
+ aLiInfo.setALiId(request.getALiId());
|
|
|
|
+ AppUserInfo appUserInfoByAliId = appUserInfoService.getAppUserInfo(aLiInfo);
|
|
|
|
+ if(appUserInfoByAliId !=null){
|
|
|
|
+ //如果不为空则说明存在支付宝公众号
|
|
|
|
+ appUserInfoService.updateAppUserInfo(appUserInfo);
|
|
|
|
+ }else {
|
|
|
|
+ appUserInfoService.AddAppUserInfo(appUserInfo);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
}else {
|
|
}else {
|
|
- appUserInfo.setALiId(request.getALiId());
|
|
|
|
- appUserInfoService.AddAppUserInfo(appUserInfo);
|
|
|
|
|
|
+ //如果手机号为空,则说明是公众号登录
|
|
|
|
+ aLiInfo.setALiId(request.getALiId());
|
|
|
|
+ AppUserInfo appUserInfoNoPhone = appUserInfoService.getAppUserInfo(aLiInfo);
|
|
|
|
+ if(appUserInfoNoPhone !=null){
|
|
|
|
+ //说明存在支付宝小程序用户信息
|
|
|
|
+ appUserInfoService.updateAppUserInfo(appUserInfo);
|
|
|
|
+ }else {
|
|
|
|
+ //不存在
|
|
|
|
+ appUserInfoService.AddAppUserInfo(appUserInfo);
|
|
|
|
+ }
|
|
}
|
|
}
|
|
break;
|
|
break;
|
|
}
|
|
}
|