05/04 Update code to replace Area related to Facility

This commit is contained in:
2026-05-04 13:46:37 -04:00
parent 2bdd6c1a26
commit a0136bd99b
17 changed files with 174 additions and 95 deletions
+14 -4
View File
@@ -92,7 +92,12 @@ def _build_report_data(report: ScheduledReport, start: datetime, end: datetime)
def _iq(q):
if fid_filter:
return q.join(Area, Issue.area_id == Area.id).filter(Area.facility_id.in_(fid_filter))
return q.outerjoin(Area, Issue.area_id == Area.id).filter(
db.or_(
Issue.facility_id.in_(fid_filter),
Area.facility_id.in_(fid_filter)
)
)
return q
if report.report_type in ('summary', 'facility'):
@@ -156,13 +161,18 @@ def _build_csv(report: ScheduledReport, start: datetime, end: datetime) -> bytes
'Description', 'Status', 'Assigned To'])
q = Issue.query
if fid_filter:
q = q.join(Area, Issue.area_id == Area.id).filter(Area.facility_id.in_(fid_filter))
q = q.outerjoin(Area, Issue.area_id == Area.id).filter(
db.or_(
Issue.facility_id.in_(fid_filter),
Area.facility_id.in_(fid_filter)
)
)
for i in q.filter(Issue.status != 'resolved').order_by(Issue.reported_at.desc()).all():
writer.writerow([
i.id,
i.reported_at.strftime('%Y-%m-%d %H:%M'),
i.area.facility.name,
i.area.name,
i.resolved_facility.name if i.resolved_facility else '',
i.area.name if i.area else '',
i.severity,
i.description.replace('\n', ' '),
i.status,