Spaces:
Running
Running
from library.librerias import * | |
from models.insumos import Insumos | |
router = APIRouter( | |
prefix="/insumos", | |
tags=["Insumos"], | |
responses={404: {"description": "No encontrado"}}, | |
) | |
"""CREATE TABLE insumos ( | |
ID_Insumo INTEGER PRIMARY KEY AUTOINCREMENT, | |
Descripcion TEXT, | |
Tipo TEXT, | |
Costo REAL, | |
Cantidad INTEGER | |
);""" | |
def get_insumos(): | |
try: | |
with DatabaseConnection().get_connection() as conn: | |
cursor = conn.cursor() | |
cursor.execute("SELECT * FROM insumos") | |
insumos = cursor.fetchall() | |
return insumos | |
except Exception as e: | |
print(e) | |
return [] | |
# @router.post("/") | |
def post_insumo(insumo: Insumos): | |
try: | |
with DatabaseConnection().get_connection() as conn: | |
cursor = conn.cursor() | |
cursor.execute( | |
"INSERT INTO insumos (Descripcion, Tipo, Costo, Cantidad) VALUES (?, ?, ?, ?)", | |
( | |
insumo.Descripcion, | |
insumo.Tipo, | |
insumo.Costo, | |
insumo.Cantidad, | |
), | |
) | |
conn.commit() | |
return {"message": "Insumo creado"} | |
except Exception as e: | |
print(e) | |
return [] | |
# @router.put("/") | |
def put_insumo(insumo: Insumos): | |
try: | |
with DatabaseConnection().get_connection() as conn: | |
cursor = conn.cursor() | |
cursor.execute( | |
"UPDATE insumos SET Descripcion = ?, Tipo = ?, Costo = ?, Cantidad = ? WHERE ID_Insumo = ?", | |
( | |
insumo.Descripcion, | |
insumo.Tipo, | |
insumo.Costo, | |
insumo.Cantidad, | |
insumo.ID_Insumo, | |
), | |
) | |
conn.commit() | |
return {"message": "Insumo actualizado"} | |
except Exception as e: | |
print(e) | |
return [] | |
# search by descripcion in insumos table with like | |
def get_insumo_by_descripcion(Descripcion: str): | |
try: | |
with DatabaseConnection().get_connection() as conn: | |
cursor = conn.cursor() | |
cursor.execute( | |
"SELECT * FROM insumos WHERE Descripcion LIKE ?", (f"%{Descripcion}%",) | |
) | |
insumo = cursor.fetchall() | |
return insumo | |
except Exception as e: | |
print(e) | |
return [] | |