using Dlhis.Sys.Identity.Request;
using Dlhis.Sys.Identity.Response;
using Dlhis.Sys.Identity.Services;
using Kurisu.Core.DataAccess.Dto;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc;
namespace Dlhis.Sys.Identity.Controllers;
///
/// 用户
///
[Route("api/[controller]")]
[ApiController]
public class UsersController : ControllerBase
{
private readonly IUserService _userService;
public UsersController(IUserService userService)
{
_userService = userService;
}
///
/// 用户分页
///
///
///
[Authorize(Roles = "admin")]
[HttpGet("page")]
public async Task> GetPageAsync([FromQuery] UserPageRequest request)
{
return await _userService.GetPageAsync(request);
}
///
/// 获取用户列表
///
///
[Authorize(Roles = "admin")]
[HttpGet("list")]
public async Task> GetUsersAsync()
{
return await _userService.GetUsersAsync();
}
///
/// 根据id获取用户
///
///
///
[Authorize]
[HttpGet]
public async Task GetUserByIdAsync(int id)
{
return await _userService.GetUserByIdAsync(id);
}
[Authorize]
[HttpPost("by-ids")]
public async Task> GetUserByIdsAsync(List ids)
{
return await _userService.GetUserByIdsAsync(ids);
}
///
/// 上传头像
///
///
///
[Authorize]
[HttpPost("avatar")]
public async Task UploadUserAvatarAsync([FromForm] UserAvatarUploadRequest request)
{
await _userService.UploadUserAvatarAsync(request);
}
}