feat(api): 添加 GET /api/userInfo 接口兼容前端调用
This commit is contained in:
parent
6f92062305
commit
368d71d977
|
|
@ -43,12 +43,53 @@ public class UserController : ControllerBase
|
|||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取用户信息
|
||||
/// 获取用户简要信息(GET方式)
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// GET /api/userInfo
|
||||
///
|
||||
/// 获取当前登录用户的简要信息,直接返回用户数据(不嵌套在userinfo对象中)
|
||||
/// 用于前端 getUserInfo() 调用
|
||||
/// </remarks>
|
||||
/// <returns>用户信息数据</returns>
|
||||
[HttpGet("userInfo")]
|
||||
[Authorize]
|
||||
[ProducesResponseType(typeof(ApiResponse<UserInfoDto>), StatusCodes.Status200OK)]
|
||||
[ProducesResponseType(typeof(ApiResponse<UserInfoDto>), StatusCodes.Status401Unauthorized)]
|
||||
public async Task<ApiResponse<UserInfoDto>> GetUserInfoSimple()
|
||||
{
|
||||
var userId = GetCurrentUserId();
|
||||
if (userId == null)
|
||||
{
|
||||
return ApiResponse<UserInfoDto>.Unauthorized();
|
||||
}
|
||||
|
||||
try
|
||||
{
|
||||
var userInfo = await _userService.GetUserInfoAsync(userId.Value);
|
||||
if (userInfo == null)
|
||||
{
|
||||
_logger.LogWarning("User not found: UserId={UserId}", userId);
|
||||
return ApiResponse<UserInfoDto>.Fail("用户不存在");
|
||||
}
|
||||
|
||||
return ApiResponse<UserInfoDto>.Success(userInfo);
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
_logger.LogError(ex, "Failed to get user info: UserId={UserId}", userId);
|
||||
return ApiResponse<UserInfoDto>.Fail("获取用户信息失败");
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取用户完整信息(POST方式)
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// POST /api/user
|
||||
///
|
||||
/// 获取当前登录用户的详细信息,包含余额、积分、VIP等级等
|
||||
/// 返回数据嵌套在 userinfo 对象中,用于前端 getUser() 调用
|
||||
/// Requirements: 4.1-4.5
|
||||
/// </remarks>
|
||||
/// <returns>用户信息数据</returns>
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user