[add]: database connection

This commit is contained in:
VivianDee
2025-09-10 12:02:36 +01:00
parent 95732a470d
commit 8236462b83
5 changed files with 336 additions and 17 deletions
+8 -8
View File
@@ -24,7 +24,7 @@ class BatchResult(db.Model):
@classmethod
def save_batch(cls, session: Session, batch_number, total_batches, results_df, status="success"):
def save_batch(cls, batch_number, total_batches, results_df, status="success"):
"""Save batch results into DB using ORM bulk insert."""
try:
results_df["batch_number"] = batch_number
@@ -42,21 +42,21 @@ class BatchResult(db.Model):
for row in results_df.to_dict("records")
]
session.bulk_save_objects(records)
session.commit()
db.session.bulk_save_objects(records)
db.session.commit()
logger.info(f"Saved batch {batch_number} successfully.")
return True
except Exception as e:
session.rollback()
db.session.rollback()
logger.error(f"Error saving batch {batch_number}: {str(e)}")
return False
@classmethod
def get_batch_status(cls, session: Session, batch_number: int):
def get_batch_status(cls, batch_number: int):
"""Return summary info about one batch."""
try:
result = (
session.query(
db.session.query(
cls.batch_number,
cls.total_batches,
cls.processed_at,
@@ -75,11 +75,11 @@ class BatchResult(db.Model):
return None
@classmethod
def get_all_batches(cls, session: Session):
def get_all_batches(cls):
"""Return summaries for all batches."""
try:
results = (
session.query(
db.session.query(
cls.batch_number,
cls.total_batches,
cls.processed_at,