ql_apimanager_backend/Apimanager_backend/Controllers/AdminController.cs
2024-11-06 23:12:12 +08:00

48 lines
1.5 KiB
C#

using Apimanager_backend.Dtos;
using Apimanager_backend.Services;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc;
namespace Apimanager_backend.Controllers
{
[Route("api/[controller]/[action]")]
[ApiController]
public class AdminController : ControllerBase
{
private readonly IAdminService adminService;
private readonly IUserService userService;
public AdminController(IAdminService service,IUserService userService)
{
this.adminService = service;
this.userService = userService;
}
#region
[HttpGet]
[Authorize("Admin")]
public async Task<ActionResult<ResponseBase<List<UserInfoDto>>>> UserList(int pageIndex,int pageSize,bool desc)
{
var users = await adminService.GetUsersAsync(pageIndex,pageSize,desc);
var res = new ResponseBase<List<UserInfoDto>>(
code:1000,
message:"Success",
data:users
);
return Ok(res);
}
#endregion
[HttpGet]
[Authorize("Admin")]
public async Task<ActionResult<ResponseBase<UserInfoDto?>>> UserInfo(int userId)
{
var userInfo = await userService.GetUserAsync(userId);
var res = new ResponseBase<UserInfoDto?>(
code: 1000,
message: "Success",
data: userInfo
);
return Ok(res);
}
}
}