Coverage for backend \ app \ ParametrosSistema \ controllers \ parametroSistemaController.py: 77.78%
27 statements
« prev ^ index » next coverage.py v7.13.0, created at 2025-12-29 16:13 -0500
« prev ^ index » next coverage.py v7.13.0, created at 2025-12-29 16:13 -0500
1from fastapi import APIRouter, Depends
2from app.configuracionGeneral.schemasGenerales import respuestaApi
3from app.ParametrosSistema.services.parametroSistemaService import ParametroSistemaService
4from app.ParametrosSistema.schemas.parametroSistemaSchemas import *
5from app.database import obtenerSesion
6from app.configuracionGeneral.seguridadJWT import protegerRuta
8router = APIRouter(dependencies=[Depends(protegerRuta("ParametrosSistema", "ALL"))])
10@router.get("/", tags=["ParametrosSistema"], summary="Obtener todos los parámetros", status_code=200, response_model=respuestaApi)
11async def obtenerParametros(dbSession=Depends(obtenerSesion)):
12 servicio = ParametroSistemaService(dbSession)
13 return servicio.listarParametros()
15@router.get("/{idParametro}", tags=["ParametrosSistema"], summary="Obtener un parámetro por id", status_code=200, response_model=respuestaApi)
16async def obtenerParametroPorId(idParametro: int, dbSession=Depends(obtenerSesion)):
17 servicio = ParametroSistemaService(dbSession)
18 return servicio.obtenerParametroPorId(idParametro)
20@router.post("/", tags=["ParametrosSistema"], summary="Crear un parámetro", status_code=201, response_model=respuestaApi)
21async def crearParametro(parametro: ParametroSistemaCrearSchema, dbSession=Depends(obtenerSesion)):
22 servicio = ParametroSistemaService(dbSession)
23 return servicio.crearParametro(parametro)
25@router.put("/{idParametro}", tags=["ParametrosSistema"], summary="Actualizar un parámetro", status_code=200, response_model=respuestaApi)
26async def actualizarParametro(idParametro: int, parametro: ParametroSistemaActualizarSchema, dbSession=Depends(obtenerSesion)):
27 servicio = ParametroSistemaService(dbSession)
28 return servicio.modificarParametro(idParametro, parametro)
30@router.delete("/{idParametro}", tags=["ParametrosSistema"], summary="Eliminar (soft delete) un parámetro por id", status_code=200, response_model=respuestaApi)
31async def deshabilitarParametro(idParametro: int, dbSession=Depends(obtenerSesion)):
32 servicio = ParametroSistemaService(dbSession)
33 return servicio.deshabilitarParametro(idParametro)