anhelados / routers /gastos_imprevistos.py
JairoDanielMT's picture
Update routers/gastos_imprevistos.py
325fa40 verified
raw
history blame
No virus
2.69 kB
from library.librerias import *
from models.gastos_imprevistos import GastosImprevistos
router = APIRouter(
prefix="/gastos_imprevistos",
tags=["Gastos_imprevistos"],
responses={404: {"description": "No encontrado"}},
)
"""CREATE TABLE gastos_imprevistos (
ID_Gasto_Imprevisto INTEGER PRIMARY KEY AUTOINCREMENT,
Descripcion TEXT,
Monto REAL,
Fecha DATE
);"""
@router.get("/")
def get_gastos_imprevistos():
try:
with DatabaseConnection().get_connection() as conn:
cursor = conn.cursor()
cursor.execute("SELECT * FROM gastos_imprevistos")
gastos_imprevistos = cursor.fetchall()
return gastos_imprevistos
except Exception as e:
print(e)
return []
@router.post("/")
def post_gasto_imprevisto(gasto_imprevisto: GastosImprevistos):
try:
with DatabaseConnection().get_connection() as conn:
cursor = conn.cursor()
cursor.execute(
"INSERT INTO gastos_imprevistos (Descripcion, Monto, Fecha) VALUES (?, ?, ?)",
(
gasto_imprevisto.Descripcion,
gasto_imprevisto.Monto,
gasto_imprevisto.Fecha,
),
)
conn.commit()
return {"message": "Gasto_imprevisto creado"}
except Exception as e:
print(e)
return []
@router.put("/")
def put_gasto_imprevisto(gasto_imprevisto: GastosImprevistos):
try:
with DatabaseConnection().get_connection() as conn:
cursor = conn.cursor()
cursor.execute(
"UPDATE gastos_imprevistos SET Descripcion = ?, Monto = ?, Fecha = ? WHERE ID_Gasto_Imprevisto = ?",
(
gasto_imprevisto.Descripcion,
gasto_imprevisto.Monto,
gasto_imprevisto.Fecha,
gasto_imprevisto.ID_Gasto_Imprevisto,
),
)
conn.commit()
return {"message": "Gasto_imprevisto actualizado"}
except Exception as e:
print(e)
return []
# search by descripcion in gastos_imprevistos table with like
@router.get("/{Descripcion}")
def get_gasto_imprevisto_by_descripcion(Descripcion: str):
try:
with DatabaseConnection().get_connection() as conn:
cursor = conn.cursor()
cursor.execute(
"SELECT * FROM gastos_imprevistos WHERE Descripcion LIKE ?",
(f"%{Descripcion}%",),
)
gasto_imprevisto = cursor.fetchall()
return gasto_imprevisto
except Exception as e:
print(e)
return []