Apigateway/Microservicios/MsUsuarios/Controllers/UsuariosTempController.cs

71 lines
2.1 KiB
C#
Raw Normal View History

2023-11-07 08:35:29 -05:00
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc;
using Microsoft.EntityFrameworkCore;
using MSAdminUsuarios.Context;
using MSAdminUsuarios.Models;
namespace MSAdminUsuarios.Controllers
{
[Route("[controller]")]
[ApiController]
public class UsuariosTempController : ControllerBase
{
private readonly ModelContext _context;
private readonly ILogger<UsuariosTempController> _logger;
private ErrorModel _errorModel;
public UsuariosTempController(ModelContext context, ILogger<UsuariosTempController> logger)
{
_context = context;
_logger = logger;
_errorModel = new ErrorModel();
}
[HttpGet]
public async Task<IActionResult> Get()
{
_errorModel = new ErrorModel();
try
{
List<USUARIOSTEMP> externos = await _context.USUARIOSTEMP.OrderBy(q => q.NU_PK_USUTMP).ToListAsync();
return Ok(externos);
}
catch (Exception)
{
_errorModel.error = true;
_errorModel.cuerpo.Add("Error con la base de datos.");
return BadRequest(_errorModel);
}
}
[HttpPost]
public async Task<IActionResult> Post(USUARIOSTEMP nuevo)
{
_errorModel = new ErrorModel();
try
{
if (nuevo == null)
{
_errorModel.error = true;
_errorModel.cuerpo.Add("No se envió solicitud.");
return Conflict(_errorModel);
}
_context.USUARIOSTEMP.Add(nuevo);
await _context.SaveChangesAsync();
_errorModel.error = false;
_errorModel.cuerpo.Add("Solicitud de usuario temporal guardado correctamente.");
return Ok(_errorModel);
}
catch (Exception)
{
_errorModel.error = true;
_errorModel.cuerpo.Add("Error con la base de datos.");
return BadRequest(_errorModel);
}
}
}
}