Spaces:
Running
Running
from library.librerias import * | |
from models.produccion import Produccion | |
router = APIRouter( | |
prefix="/produccion", | |
tags=["Produccion"], | |
responses={404: {"description": "No encontrado"}}, | |
) | |
"""CREATE TABLE produccion ( | |
ID_Produccion INTEGER PRIMARY KEY AUTOINCREMENT, | |
ID_Maquina INTEGER, | |
Fecha DATE, | |
Cantidad_Producida INTEGER, | |
FOREIGN KEY (ID_Maquina) REFERENCES maquinas (ID_Maquina) | |
); | |
""" | |
def get_produccion(): | |
try: | |
with DatabaseConnection().get_connection() as conn: | |
cursor = conn.cursor() | |
cursor.execute("SELECT * FROM produccion") | |
produccion = cursor.fetchall() | |
return produccion | |
except Exception as e: | |
print(e) | |
return [] | |
# @router.post("/") | |
def post_produccion(produccion: Produccion): | |
try: | |
with DatabaseConnection().get_connection() as conn: | |
cursor = conn.cursor() | |
cursor.execute( | |
"INSERT INTO produccion (ID_Maquina, Fecha, Cantidad_Producida) VALUES (?, ?, ?)", | |
( | |
produccion.ID_Maquina, | |
produccion.Fecha, | |
produccion.Cantidad_Producida, | |
), | |
) | |
conn.commit() | |
return {"message": "Produccion creada"} | |
except Exception as e: | |
print(e) | |
return [] | |
# @router.put("/") | |
def put_produccion(produccion: Produccion): | |
try: | |
with DatabaseConnection().get_connection() as conn: | |
cursor = conn.cursor() | |
cursor.execute( | |
"UPDATE produccion SET ID_Maquina = ?, Fecha = ?, Cantidad_Producida = ? WHERE ID_Produccion = ?", | |
( | |
produccion.ID_Maquina, | |
produccion.Fecha, | |
produccion.Cantidad_Producida, | |
produccion.ID_Produccion, | |
), | |
) | |
conn.commit() | |
return {"message": "Produccion actualizada"} | |
except Exception as e: | |
print(e) | |
return [] | |
# @router.delete("/") | |
def delete_produccion(ID_Produccion: int): | |
try: | |
with DatabaseConnection().get_connection() as conn: | |
cursor = conn.cursor() | |
cursor.execute( | |
"DELETE FROM produccion WHERE ID_Produccion = ?", | |
(ID_Produccion,), | |
) | |
conn.commit() | |
return {"message": "Produccion eliminada"} | |
except Exception as e: | |
print(e) | |
return [] | |
# @router.get("/maquina/{ID_Maquina}") | |
def get_produccion_maquina(ID_Maquina: int): | |
try: | |
with DatabaseConnection().get_connection() as conn: | |
cursor = conn.cursor() | |
cursor.execute( | |
"SELECT * FROM produccion WHERE ID_Maquina = ?", (ID_Maquina,) | |
) | |
produccion = cursor.fetchall() | |
return produccion | |
except Exception as e: | |
print(e) | |
return [] | |
def get_produccion_fecha(Fecha: str): | |
try: | |
with DatabaseConnection().get_connection() as conn: | |
Fecha = datetime.strptime(Fecha, "%Y-%m-%d").date() | |
cursor = conn.cursor() | |
cursor.execute("SELECT * FROM produccion WHERE Fecha = ?", (Fecha,)) | |
produccion = cursor.fetchall() | |
return produccion | |
except Exception as e: | |
print(e) | |
return [] | |