* Managed API to handle User maintenance
* Managed Users view in application
This commit is contained in:
52
FaKrosnoApi/Controllers/UsersController.cs
Normal file
52
FaKrosnoApi/Controllers/UsersController.cs
Normal file
@@ -0,0 +1,52 @@
|
||||
using Microsoft.AspNetCore.Mvc;
|
||||
using OrdersManagementDataModel.Dtos;
|
||||
using OrdersManagementDataModel.Services;
|
||||
|
||||
namespace FaKrosnoApi.Controllers;
|
||||
|
||||
[ApiController]
|
||||
[Route("api/[controller]")]
|
||||
public class UsersController(IUserService service) : Controller
|
||||
{
|
||||
[HttpGet]
|
||||
public async Task<ActionResult<IEnumerable<UserDto>>> GetAll()
|
||||
{
|
||||
IEnumerable<UserDto?> users = await service.GetAll();
|
||||
return Ok(users);
|
||||
}
|
||||
|
||||
[HttpGet("by-id")]
|
||||
public async Task<ActionResult<UserDto?>> GetById([FromQuery] Guid id)
|
||||
{
|
||||
UserDto? user = await service.GetById(id);
|
||||
return user != null ? Ok(user) : NotFound();
|
||||
}
|
||||
|
||||
[HttpGet("by-username")]
|
||||
public async Task<ActionResult<UserDto?>> GetByUsername([FromQuery] string username)
|
||||
{
|
||||
UserDto? user = await service.GetByUsername(username);
|
||||
return user != null ? Ok(user) : NotFound();
|
||||
}
|
||||
|
||||
[HttpPost]
|
||||
public async Task<ActionResult<UserDto>> Add([FromBody] UserDto user)
|
||||
{
|
||||
await service.Add(user);
|
||||
return Ok(user);
|
||||
}
|
||||
|
||||
[HttpPut]
|
||||
public async Task<ActionResult<UserDto>> Update([FromBody] UserDto user)
|
||||
{
|
||||
await service.Update(user);
|
||||
return Ok(user);
|
||||
}
|
||||
|
||||
[HttpDelete]
|
||||
public async Task<ActionResult<UserDto>> Delete([FromQuery] Guid id)
|
||||
{
|
||||
await service.Delete(id);
|
||||
return Ok();
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user