using Dlhis.Sys.Identity.Request;
using Dlhis.Sys.Identity.Response;
using Dlhis.Sys.Identity.Services;
using Kurisu.AspNetCore.DataAccess.Dto;
using Kurisu.AspNetCore.DataAccess.SqlSugar.Aop;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc;
namespace Dlhis.Sys.Identity.Controllers;
///
/// 用户
///
[Authorize]
[Route("api/[controller]")]
[ApiController]
public class UsersController : ControllerBase
{
private readonly IUserService _userService;
public UsersController(IUserService userService)
{
_userService = userService;
}
///
/// 用户分页
///
///
///
[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(IdsRequest request)
{
return await _userService.GetUserByIdsAsync(request.Ids);
}
///
/// 创建用户
///
///
///
[HttpPost("create")]
public async Task CreateUserAsync(UserCreateRequest request)
{
await _userService.CreateUserAsync(request);
}
///
/// 上传头像
///
///
///
[Authorize]
[HttpPost("avatar")]
public async Task UploadUserAvatarAsync([FromForm] UserAvatarUploadRequest request)
{
await _userService.UploadUserAvatarAsync(request);
}
///
/// 重置登陆
///
///
[Transactional]
[Authorize]
[HttpPost("reloginInfo")]
public async Task ResetLoginTenantAsync(UserResetLoginTenantRequest request)
{
await _userService.ResetLoginTenantAsync(request);
}
///
/// 密码重置
///
///
[HttpPost("password/reset")]
public async Task ResetPasswordAsync(UserResetPasswordRequest request)
{
await _userService.ResetPasswordAsync(request);
}
}