using Microsoft.AspNetCore.Mvc; using Modelo; using Entidades.Dto; using AlquilaFacil.Builder; namespace AlquilaFacil.Controllers; [ApiController] public class PermisoController : ControllerBase { [HttpPost("api/admin/grupos")] public IActionResult CrearPermiso([FromHeader(Name = "Auth")] string Auth, PermisoDto perm) { //WIP var ret1 = RepositorioPermisos.Singleton.CheckPermisos(Auth, 17); if (String.IsNullOrWhiteSpace(perm.Descripcion)) return BadRequest(new { message = "No puede tener una descripcion vacia" }); if (perm.Descripcion.Length > 25) return BadRequest(new { message = "la descripcion no puede tener más de 25 caractéres" }); var permiso = new PermisoBuilder().SetDescripcion(perm.Descripcion).Build(); var ret = RepositorioPermisos.Singleton.CrearPermiso(permiso); return ret ? Ok() : BadRequest(); } [HttpGet("/api/permisos/todos")] public IActionResult ObtenerTodosLosPermisos([FromHeader(Name = "Auth")] string Auth) { var ret = RepositorioPermisos.Singleton.CheckPermisos(Auth, 18); if (ret == false) return BadRequest(new { message = "No tiene permiso para ver Todos los permisos" }); var permisos = RepositorioPermisos.Singleton.ListarPermisos(); var perms = permisos.Select(permiso => new PermisoDtoBuilder() .ConId(permiso.Id) .ConDescripcion(permiso.Descripcion) .Build()); return Ok(perms); } }