add logging in admin controllers
continuous-integration/drone/push Build is failing Details

consoleTests
maxime 1 year ago
parent a98f15d103
commit d46b15d95c

@ -5,8 +5,13 @@ using Services;
namespace API.Controllers.Admin;
/// <summary>
/// WARNING: This controller does not requires the requester to be authenticated, see https://codefirst.iut.uca.fr/git/IQBall/Server-Panel/issues/2
/// </summary>
/// <param name="service"></param>
[ApiController]
public class TeamsAdminController(ITeamService service) : ControllerBase
public class TeamsAdminController(ITeamService service, ILogger<TeamsAdminController> logger) : ControllerBase
{
public record CountTeamsResponse(int Value);
@ -14,15 +19,10 @@ public class TeamsAdminController(ITeamService service) : ControllerBase
[HttpGet("/admin/teams/count")]
public async Task<CountTeamsResponse> CountTeams()
{
logger.LogTrace("Counting teams");
return new CountTeamsResponse(await service.CountTotalTeams());
}
// [HttpGet("/admin/users/count")]
// public async Task<CountUsersResponse> CountUsers()
// {
// return new CountUsersResponse(await service.UsersCount());
// }
[HttpGet("/admin/teams")]
public Task<IEnumerable<Team>> ListTeams(
[Range(0, int.MaxValue, ErrorMessage = "Only positive number allowed")]
@ -31,6 +31,7 @@ public class TeamsAdminController(ITeamService service) : ControllerBase
int n
)
{
logger.LogTrace("Listing teams");
return service.ListTeams(start, n);
}
@ -39,6 +40,7 @@ public class TeamsAdminController(ITeamService service) : ControllerBase
[HttpPost("/admin/teams")]
public async Task<IActionResult> AddTeam([FromBody] AddTeamRequest req)
{
logger.LogTrace("Adding teams");
var team = await service.AddTeam(req.Name, req.Picture, req.FirstColor, req.SecondColor);
return Ok(team);
@ -49,6 +51,7 @@ public class TeamsAdminController(ITeamService service) : ControllerBase
[HttpPut("/admin/teams/{teamId:int}")]
public async Task<IActionResult> UpdateTeam(int teamId, [FromBody] UpdateTeamRequest req)
{
logger.LogTrace("Updating teams");
await service.UpdateTeam(new Team(teamId, req.Name, req.Picture, req.MainColor, req.SecondaryColor));
return Ok();
@ -59,6 +62,8 @@ public class TeamsAdminController(ITeamService service) : ControllerBase
[HttpPost("/admin/teams/remove-all")]
public async Task<IActionResult> DeleteTeams([FromBody] DeleteTeamsRequest req)
{
logger.LogTrace("Deleting teams");
await service.RemoveTeams(req.Teams);
return Ok();
}

@ -5,8 +5,12 @@ using Services;
namespace API.Controllers.Admin;
/// <summary>
/// WARNING: This controller does not requires the requester to be authenticated, see https://codefirst.iut.uca.fr/git/IQBall/Server-Panel/issues/2
/// </summary>
/// <param name="service"></param>
[ApiController]
public class UsersAdminController(IUserService service) : ControllerBase
public class UsersAdminController(IUserService service, ILogger<UsersAdminController> logger) : ControllerBase
{
public record CountUsersResponse(int Value);
@ -17,20 +21,17 @@ public class UsersAdminController(IUserService service) : ControllerBase
string search
)
{
logger.LogTrace("Counting Users");
return new CountUsersResponse(await service.UsersCount(search));
}
[HttpGet("/admin/users/count")]
public async Task<CountUsersResponse> CountUsers()
{
logger.LogTrace("Counting Users");
return new CountUsersResponse(await service.UsersCount());
}
// [HttpGet("/admin/users/count")]
// public async Task<CountUsersResponse> CountUsers()
// {
// return new CountUsersResponse(await service.UsersCount());
// }
[HttpGet("/admin/users")]
public async Task<IEnumerable<User>> ListUsers(
@ -42,6 +43,8 @@ public class UsersAdminController(IUserService service) : ControllerBase
string? search
)
{
logger.LogTrace("Listing Users");
var result = await service.ListUsers(start, n, search);
return result;
}
@ -52,6 +55,8 @@ public class UsersAdminController(IUserService service) : ControllerBase
int id
)
{
logger.LogTrace("Getting a specific User ({})", id);
var result = await service.GetUser(id);
if (result == null)
return NotFound();
@ -73,6 +78,8 @@ public class UsersAdminController(IUserService service) : ControllerBase
[HttpPost("/admin/users")]
public Task<User> AddUser([FromBody] AddUserRequest req)
{
logger.LogTrace("Adding a User");
return service.CreateUser(req.Username, req.Email, req.Password, UsersController.DefaultProfilePicture,
req.IsAdmin);
}
@ -82,6 +89,8 @@ public class UsersAdminController(IUserService service) : ControllerBase
[HttpPost("/admin/users/remove-all")]
public async Task<IActionResult> RemoveUsers([FromBody] RemoveUsersRequest req)
{
logger.LogTrace("Removing Users");
await service.RemoveUsers(req.Identifiers);
return Ok();
}
@ -103,6 +112,8 @@ public class UsersAdminController(IUserService service) : ControllerBase
{
try
{
logger.LogTrace("Updating Users");
await service.UpdateUser(new User(id, req.Username, req.Email, UsersController.DefaultProfilePicture,
req.IsAdmin));
return Ok();

Loading…
Cancel
Save