Commit 67075a01 by 段启岩

Merge remote-tracking branch 'origin/fix-issue#63'

parents b0679510 dafe64ec
...@@ -9,6 +9,7 @@ import cn.meteor.beyondclouds.core.api.Response; ...@@ -9,6 +9,7 @@ import cn.meteor.beyondclouds.core.api.Response;
import cn.meteor.beyondclouds.core.authentication.Subject; import cn.meteor.beyondclouds.core.authentication.Subject;
import cn.meteor.beyondclouds.core.flow.AccessInfo; import cn.meteor.beyondclouds.core.flow.AccessInfo;
import cn.meteor.beyondclouds.core.flow.ParamType; import cn.meteor.beyondclouds.core.flow.ParamType;
import cn.meteor.beyondclouds.modules.user.dto.UserAuthDTO;
import cn.meteor.beyondclouds.modules.user.dto.UserInfoDTO; import cn.meteor.beyondclouds.modules.user.dto.UserInfoDTO;
import cn.meteor.beyondclouds.modules.user.dto.UserInfoWithStatisticsDTO; import cn.meteor.beyondclouds.modules.user.dto.UserInfoWithStatisticsDTO;
import cn.meteor.beyondclouds.modules.user.entity.User; import cn.meteor.beyondclouds.modules.user.entity.User;
...@@ -32,6 +33,7 @@ import org.springframework.validation.BindingResult; ...@@ -32,6 +33,7 @@ import org.springframework.validation.BindingResult;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import javax.validation.Valid; import javax.validation.Valid;
import java.util.List;
/** /**
* @author meteor * @author meteor
...@@ -378,6 +380,13 @@ public class UserApi { ...@@ -378,6 +380,13 @@ public class UserApi {
} }
} }
@ApiOperation(("获取我的认证列表"))
@GetMapping("/auths")
public Response<List<UserAuthDTO>> auths(@CurrentSubject Subject subject){
return Response.success(userService.getAuths(String.valueOf(subject.getId())));
}
} }
package cn.meteor.beyondclouds.modules.user.dto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
/**
* @program: beyond-clouds
* @description:
* @author: Mr.Zhang
* @create: 2020-02-12 15:32
**/
@Data
@ApiModel("认证信息")
public class UserAuthDTO {
private String authId;
@ApiModelProperty(value = "认证类型")
private String authType;
@ApiModelProperty(value = "账号类型")
private int accountType;
@ApiModelProperty(value = "账号")
private String account;
private Date createTime;
private Date updateTime;
}
package cn.meteor.beyondclouds.modules.user.enums;
import lombok.Getter;
@Getter
public enum AuthType {
/*
* 认证方式
*
* */
APP("app"),
LOCAL("local"),
;
private String type;
AuthType(String type) {
this.type = type;
}
}
package cn.meteor.beyondclouds.modules.user.service; package cn.meteor.beyondclouds.modules.user.service;
import cn.meteor.beyondclouds.common.dto.QQAuthResultDTO; import cn.meteor.beyondclouds.common.dto.QQAuthResultDTO;
import cn.meteor.beyondclouds.modules.user.dto.UserAuthDTO;
import cn.meteor.beyondclouds.modules.user.dto.UserInfoDTO; import cn.meteor.beyondclouds.modules.user.dto.UserInfoDTO;
import cn.meteor.beyondclouds.modules.user.entity.User; import cn.meteor.beyondclouds.modules.user.entity.User;
import cn.meteor.beyondclouds.modules.user.entity.UserStatistics; import cn.meteor.beyondclouds.modules.user.entity.UserStatistics;
import cn.meteor.beyondclouds.modules.user.exception.UserServiceException; import cn.meteor.beyondclouds.modules.user.exception.UserServiceException;
import com.baomidou.mybatisplus.extension.service.IService; import com.baomidou.mybatisplus.extension.service.IService;
import java.util.List;
/** /**
* @author meteor * @author meteor
*/ */
...@@ -95,4 +98,11 @@ public interface IUserService extends IService<User> { ...@@ -95,4 +98,11 @@ public interface IUserService extends IService<User> {
* @return * @return
*/ */
UserInfoDTO getUserInfo(String userId, boolean updateVisited) throws UserServiceException; UserInfoDTO getUserInfo(String userId, boolean updateVisited) throws UserServiceException;
/**
* 获取我的认证列表
* @param userId
* @return
*/
List<UserAuthDTO> getAuths(String userId);
} }
...@@ -9,12 +9,10 @@ import cn.meteor.beyondclouds.modules.mail.util.EmailUtils; ...@@ -9,12 +9,10 @@ import cn.meteor.beyondclouds.modules.mail.util.EmailUtils;
import cn.meteor.beyondclouds.core.queue.message.DataItemChangeMessage; import cn.meteor.beyondclouds.core.queue.message.DataItemChangeMessage;
import cn.meteor.beyondclouds.modules.queue.service.IMessageQueueService; import cn.meteor.beyondclouds.modules.queue.service.IMessageQueueService;
import cn.meteor.beyondclouds.core.queue.message.DataItemType; 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.dto.UserInfoDTO;
import cn.meteor.beyondclouds.modules.user.entity.*; import cn.meteor.beyondclouds.modules.user.entity.*;
import cn.meteor.beyondclouds.modules.user.enums.AccountType; import cn.meteor.beyondclouds.modules.user.enums.*;
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.exception.UserServiceException;
import cn.meteor.beyondclouds.modules.user.mapper.UserMapper; import cn.meteor.beyondclouds.modules.user.mapper.UserMapper;
import cn.meteor.beyondclouds.modules.user.service.*; import cn.meteor.beyondclouds.modules.user.service.*;
...@@ -31,6 +29,7 @@ import org.springframework.util.Assert; ...@@ -31,6 +29,7 @@ import org.springframework.util.Assert;
import org.springframework.util.CollectionUtils; import org.springframework.util.CollectionUtils;
import org.springframework.util.StringUtils; import org.springframework.util.StringUtils;
import java.util.ArrayList;
import java.util.List; import java.util.List;
/** /**
...@@ -408,4 +407,44 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements IU ...@@ -408,4 +407,44 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements IU
userInfoDTO.setStatistics(userStatistics); userInfoDTO.setStatistics(userStatistics);
return userInfoDTO; 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