This commit is contained in:
Leon
2025-10-11 17:39:34 +02:00
parent d10e9a8fe0
commit 8848d89286

View File

@@ -8,33 +8,31 @@ from app.schemas.entries import EntryCreate
logger = get_logger(__name__) logger = get_logger(__name__)
def get_all_entries(db: Session, skip: int = 0, limit: int = 100): def get_all_entries(db: Session, skip: int = 0, limit: int | None = None):
"""Retrieve all entries from all newsletters, sorted by received date.""" """Retrieve all entries from all newsletters, sorted by received date."""
logger.debug(f"Querying all entries with skip={skip}, limit={limit}") logger.debug(f"Querying all entries with skip={skip}, limit={limit}")
return ( query = (
db.query(Entry) db.query(Entry)
.options(joinedload(Entry.newsletter)) .options(joinedload(Entry.newsletter))
.order_by(Entry.received_at.desc()) .order_by(Entry.received_at.desc())
.offset(skip) .offset(skip)
.limit(limit)
.all()
) )
if limit is not None:
query = query.limit(limit)
return query.all()
def get_entries_by_newsletter( def get_entries_by_newsletter(
db: Session, newsletter_id: str, skip: int = 0, limit: int = 100 db: Session, newsletter_id: str, skip: int = 0, limit: int | None = None
): ):
"""Retrieve entries for a specific newsletter.""" """Retrieve entries for a specific newsletter."""
logger.debug( logger.debug(
f"Querying entries for newsletter_id={newsletter_id}, skip={skip}, limit={limit}" f"Querying entries for newsletter_id={newsletter_id}, skip={skip}, limit={limit}"
) )
return ( query = db.query(Entry).filter(Entry.newsletter_id == newsletter_id).offset(skip)
db.query(Entry) if limit is not None:
.filter(Entry.newsletter_id == newsletter_id) query = query.limit(limit)
.offset(skip) return query.all()
.limit(limit)
.all()
)
def get_entry_by_message_id(db: Session, message_id: str): def get_entry_by_message_id(db: Session, message_id: str):