Commit 4d93da82 by 段启岩

获取认证信息列表

parent 67075a01
package cn.meteor.beyondclouds.modules.user.api;
import cn.meteor.beyondclouds.core.annotation.Anonymous;
import cn.meteor.beyondclouds.core.annotation.CurrentSubject;
import cn.meteor.beyondclouds.core.api.Response;
import cn.meteor.beyondclouds.core.authentication.Subject;
import cn.meteor.beyondclouds.modules.user.dto.AuthenticationResultDTO;
import cn.meteor.beyondclouds.modules.user.dto.UserAuthDTO;
import cn.meteor.beyondclouds.modules.user.exception.AuthenticationServiceException;
import cn.meteor.beyondclouds.modules.user.exception.UserServiceException;
import cn.meteor.beyondclouds.modules.user.form.LocalAuthFrom;
......@@ -16,6 +19,7 @@ import org.springframework.validation.BindingResult;
import org.springframework.web.bind.annotation.*;
import javax.validation.Valid;
import java.util.List;
/**
* @author meteor
......@@ -77,4 +81,11 @@ public class AuthenticationApi {
return Response.error(e);
}
}
@ApiOperation(("获取我的认证列表"))
@GetMapping("/auths")
public Response<List<UserAuthDTO>> auths(@CurrentSubject Subject subject){
return Response.success(authenticationService.getAuths(String.valueOf(subject.getId())));
}
}
......@@ -380,13 +380,6 @@ public class UserApi {
}
}
@ApiOperation(("获取我的认证列表"))
@GetMapping("/auths")
public Response<List<UserAuthDTO>> auths(@CurrentSubject Subject subject){
return Response.success(userService.getAuths(String.valueOf(subject.getId())));
}
}
......@@ -2,6 +2,10 @@ package cn.meteor.beyondclouds.modules.user.enums;
import lombok.Getter;
/**
* @author meteor
*/
@Getter
public enum AuthType {
......
package cn.meteor.beyondclouds.modules.user.service;
import cn.meteor.beyondclouds.modules.user.dto.AuthenticationResultDTO;
import cn.meteor.beyondclouds.modules.user.dto.UserAuthDTO;
import cn.meteor.beyondclouds.modules.user.exception.AuthenticationServiceException;
import cn.meteor.beyondclouds.modules.user.exception.UserServiceException;
import java.util.List;
/**
* 认证服务
* @author meteor
......@@ -32,4 +35,11 @@ public interface IAuthenticationService {
* @return
*/
AuthenticationResultDTO smsAuthentication(String mobile, String verifyCode) throws UserServiceException, AuthenticationServiceException;
/**
* 获取我的认证列表
* @param userId
* @return
*/
List<UserAuthDTO> getAuths(String userId);
}
......@@ -99,10 +99,4 @@ public interface IUserService extends IService<User> {
*/
UserInfoDTO getUserInfo(String userId, boolean updateVisited) throws UserServiceException;
/**
* 获取我的认证列表
* @param userId
* @return
*/
List<UserAuthDTO> getAuths(String userId);
}
......@@ -8,9 +8,11 @@ import cn.meteor.beyondclouds.core.queue.message.UserActionMessage;
import cn.meteor.beyondclouds.core.redis.RedisKey;
import cn.meteor.beyondclouds.modules.queue.service.IMessageQueueService;
import cn.meteor.beyondclouds.modules.user.dto.AuthenticationResultDTO;
import cn.meteor.beyondclouds.modules.user.dto.UserAuthDTO;
import cn.meteor.beyondclouds.modules.user.entity.UserAuthApp;
import cn.meteor.beyondclouds.modules.user.entity.UserAuthLocal;
import cn.meteor.beyondclouds.modules.user.enums.AuthStatus;
import cn.meteor.beyondclouds.modules.user.enums.AuthType;
import cn.meteor.beyondclouds.modules.user.enums.AuthenticationErrorCode;
import cn.meteor.beyondclouds.modules.user.enums.UserErrorCode;
import cn.meteor.beyondclouds.modules.user.exception.AuthenticationServiceException;
......@@ -26,7 +28,9 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.util.StringUtils;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
......@@ -174,4 +178,43 @@ public class AuthenticationServiceImpl implements IAuthenticationService {
messageQueueService.sendUserActionMessage(UserActionMessage.loginMessage(userId));
}
@Override
public List<UserAuthDTO> getAuths(String userId) {
List<UserAuthDTO> auths = new ArrayList<>();
//查询local表里的认证信息
QueryWrapper queryLocalAuths = new QueryWrapper();
queryLocalAuths.eq("user_id", userId);
List<UserAuthLocal> localAuths = userAuthLocalService.list(queryLocalAuths);
for (UserAuthLocal localAuth:localAuths
) {
UserAuthDTO auth = new UserAuthDTO();
auth.setAuthId(localAuth.getUaLocalId());
auth.setAuthType(AuthType.LOCAL.getType());
auth.setAccountType(localAuth.getAccountType());
auth.setAccount(localAuth.getAccount());
auth.setCreateTime(localAuth.getCreateTime());
auth.setUpdateTime(localAuth.getUpdateTime());
auths.add(auth);
}
//查询第三方表里的认证信息
QueryWrapper queryAppAuths = new QueryWrapper();
queryAppAuths.eq("user_id", userId);
List<UserAuthApp> appAuths = userAuthAppService.list(queryAppAuths);
for (UserAuthApp appAuth:appAuths
) {
UserAuthDTO auth = new UserAuthDTO();
auth.setAuthId(appAuth.getUaAppId());
auth.setAuthType(AuthType.APP.getType());
auth.setAccountType(appAuth.getAppType());
auth.setAccount(appAuth.getAppUserId());
auth.setCreateTime(appAuth.getCreateTime());
auth.setUpdateTime(appAuth.getUpdateTime());
auths.add(auth);
}
return auths;
}
}
......@@ -2,20 +2,28 @@ package cn.meteor.beyondclouds.modules.user.service.impl;
import cn.meteor.beyondclouds.common.dto.QQAuthResultDTO;
import cn.meteor.beyondclouds.common.helper.IRedisHelper;
import cn.meteor.beyondclouds.core.queue.message.DataItemChangeMessage;
import cn.meteor.beyondclouds.core.queue.message.DataItemType;
import cn.meteor.beyondclouds.core.redis.RedisKey;
import cn.meteor.beyondclouds.modules.mail.dto.EmailDTO;
import cn.meteor.beyondclouds.modules.mail.service.IMailService;
import cn.meteor.beyondclouds.modules.mail.util.EmailUtils;
import cn.meteor.beyondclouds.core.queue.message.DataItemChangeMessage;
import cn.meteor.beyondclouds.modules.queue.service.IMessageQueueService;
import cn.meteor.beyondclouds.core.queue.message.DataItemType;
import cn.meteor.beyondclouds.modules.user.dto.UserAuthDTO;
import cn.meteor.beyondclouds.modules.user.dto.UserInfoDTO;
import cn.meteor.beyondclouds.modules.user.entity.*;
import cn.meteor.beyondclouds.modules.user.enums.*;
import cn.meteor.beyondclouds.modules.user.entity.User;
import cn.meteor.beyondclouds.modules.user.entity.UserAuthApp;
import cn.meteor.beyondclouds.modules.user.entity.UserAuthLocal;
import cn.meteor.beyondclouds.modules.user.entity.UserStatistics;
import cn.meteor.beyondclouds.modules.user.enums.AccountType;
import cn.meteor.beyondclouds.modules.user.enums.AuthStatus;
import cn.meteor.beyondclouds.modules.user.enums.ThirdPartyAppType;
import cn.meteor.beyondclouds.modules.user.enums.UserErrorCode;
import cn.meteor.beyondclouds.modules.user.exception.UserServiceException;
import cn.meteor.beyondclouds.modules.user.mapper.UserMapper;
import cn.meteor.beyondclouds.modules.user.service.*;
import cn.meteor.beyondclouds.modules.user.service.IUserAuthAppService;
import cn.meteor.beyondclouds.modules.user.service.IUserAuthLocalService;
import cn.meteor.beyondclouds.modules.user.service.IUserService;
import cn.meteor.beyondclouds.modules.user.service.IUserStatisticsService;
import cn.meteor.beyondclouds.util.Md5Utils;
import cn.meteor.beyondclouds.util.UUIDUtils;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
......@@ -29,7 +37,6 @@ import org.springframework.util.Assert;
import org.springframework.util.CollectionUtils;
import org.springframework.util.StringUtils;
import java.util.ArrayList;
import java.util.List;
/**
......@@ -407,44 +414,4 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements IU
userInfoDTO.setStatistics(userStatistics);
return userInfoDTO;
}
@Override
public List<UserAuthDTO> getAuths(String userId) {
List<UserAuthDTO> auths = new ArrayList<>();
//查询local表里的认证信息
QueryWrapper queryLocalAuths = new QueryWrapper();
queryLocalAuths.eq("user_id", userId);
List<UserAuthLocal> localAuths = userAuthLocalService.list(queryLocalAuths);
for (UserAuthLocal localAuth:localAuths
) {
UserAuthDTO auth = new UserAuthDTO();
auth.setAuthId(localAuth.getUaLocalId());
auth.setAuthType(AuthType.LOCAL.getType());
auth.setAccountType(localAuth.getAccountType());
auth.setAccount(localAuth.getAccount());
auth.setCreateTime(localAuth.getCreateTime());
auth.setUpdateTime(localAuth.getUpdateTime());
auths.add(auth);
}
//查询第三方表里的认证信息
QueryWrapper queryAppAuths = new QueryWrapper();
queryAppAuths.eq("user_id", userId);
List<UserAuthApp> appAuths = userAuthAppService.list(queryAppAuths);
for (UserAuthApp appAuth:appAuths
) {
UserAuthDTO auth = new UserAuthDTO();
auth.setAuthId(appAuth.getUaAppId());
auth.setAuthType(AuthType.APP.getType());
auth.setAccountType(appAuth.getAppType());
auth.setAccount(appAuth.getAppUserId());
auth.setCreateTime(appAuth.getCreateTime());
auth.setUpdateTime(appAuth.getUpdateTime());
auths.add(auth);
}
return auths;
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment