Apigateway/Microservicios/MsUsuarios/Controllers/PerfilesController.cs

91 lines
2.4 KiB
C#
Raw Normal View History

2023-02-02 10:50:02 -05:00
using MSAdminUsuarios.Context;
using Microsoft.AspNetCore.Mvc;
namespace MSAdminUsuarios.Controllers
{
[ApiController]
[Route("[controller]")]
public class PerfilesController : ControllerBase
{
private readonly ModelContext _context;
public PerfilesController(ModelContext context)
{
_context = context;
}
[HttpGet]
public async Task<IActionResult> GetPerfiles()
{
try
{
var consulta = from dm in _context.PERFILESMs
where dm.BL_ESTADO_PFL>=0
2023-12-22 15:55:01 -05:00
orderby dm.NU_PK_PFL ascending
2023-02-02 10:50:02 -05:00
select dm;
return Ok(consulta);
}
catch (Exception ex)
{
return BadRequest(ex);
}
}
[HttpPost]
public async Task<IActionResult> GuardarPerfiles(PERFIL guardado)
{
try
{
if (guardado == null) return ValidationProblem();
2023-12-06 14:11:53 -05:00
if (guardado.TX_UUID_PFL == null)
{
Guid uuid = Guid.NewGuid();
var UUID = uuid.ToString();
guardado.TX_UUID_PFL = UUID;
}
2023-02-02 10:50:02 -05:00
_context.PERFILESMs.Add(guardado);
await _context.SaveChangesAsync();
return Ok();
}
catch (Exception ex)
{
return BadRequest(ex.Message);
}
}
[HttpPatch]
public async Task<IActionResult> EditarPerfiles(PERFIL editado)
{
try
{
if (editado == null) return ValidationProblem();
var existe = _context.PERFILESMs.Find(editado.NU_PK_PFL);
2023-12-22 15:55:01 -05:00
if (existe == null)
{
return BadRequest("Perfil no encontrado");
}
2023-02-02 10:50:02 -05:00
existe.TX_PERFIL_PFL = editado.TX_PERFIL_PFL;
existe.NU_ROL_PFL = editado.NU_ROL_PFL;
2023-02-02 10:50:02 -05:00
existe.BL_ESTADO_PFL = editado.BL_ESTADO_PFL;
_context.PERFILESMs.Update(existe);
await _context.SaveChangesAsync();
return Ok();
}
catch (Exception ex)
{
return BadRequest(ex.Message);
}
}
}
}