def get_list_reports(
list = fastapi.Depends(get_list_from_path),
open: bool | None = None,
+ name: str | None = None,
limit: int | None = None
) -> typing.List[reports.Report]:
- return list.get_reports(open=open, limit=limit)
+ return list.get_reports(open=open, name=name, limit=limit)
@router.get("/{list}/domains/{name}")
def get_list_domains(
# Fetch the domain history
return list.get_domain_history(name)
+
class CreateReport(pydantic.BaseModel):
# Domain
name : str
# Reports
reports : typing.List["Report"] = sqlmodel.Relationship(back_populates="list")
- def get_reports(self, open=None, limit=None):
+ def get_reports(self, open=None, name=None, limit=None):
"""
Fetches the most recent reports
"""
reports.Report.closed_at == True,
)
+ # Optionally filter by name
+ if name:
+ stmt = stmt.where(
+ reports.Report.name == name,
+ )
+
# Optionally apply the limit
if limit:
stmt = stmt.limit(limit)