diff --git a/api/src/db/models/app_user.py b/api/src/db/models/app_user.py index 33eecc1..819641e 100644 --- a/api/src/db/models/app_user.py +++ b/api/src/db/models/app_user.py @@ -49,8 +49,8 @@ class AppUser(Base): # back_populates="updater", # foreign_keys="RfProjectReport.updated_by", # ) -# audit_logs: Mapped[list["AuditLog"]] = relationship( # type: ignore -# "AuditLog", back_populates="user" -# ) + audit_logs: Mapped[list["AuditLog"]] = relationship( # type: ignore + "AuditLog", back_populates="user" + ) user_orgs: Mapped[list["UserOrg"]] = relationship("UserOrg", back_populates="user") org_units: Mapped[list["OrgUnit"]] = relationship("OrgUnit", secondary="v3.user_org", viewonly=True) diff --git a/api/src/db/models/audit_log.py b/api/src/db/models/audit_log.py index 89682da..de69570 100644 --- a/api/src/db/models/audit_log.py +++ b/api/src/db/models/audit_log.py @@ -55,9 +55,9 @@ class AuditLog(Base): event_type: Mapped[str] = mapped_column(String) event_data: Mapped[dict | None] = mapped_column(JSON) -# user: Mapped["AppUser | None"] = relationship( -# "AppUser", back_populates="audit_logs" -# ) + user: Mapped["AppUser | None"] = relationship( + "AppUser", back_populates="audit_logs" + ) # org_unit: Mapped["OrgUnit | None"] = relationship( # "OrgUnit", back_populates="audit_logs" # ) diff --git a/api/src/repository/auditlog_repository.py b/api/src/repository/auditlog_repository.py index 7914adb..19f3363 100644 --- a/api/src/repository/auditlog_repository.py +++ b/api/src/repository/auditlog_repository.py @@ -4,6 +4,8 @@ from typing import Iterable, Optional from sqlalchemy import select from sqlalchemy.ext.asyncio import AsyncSession from sqlalchemy.sql.functions import func +from sqlalchemy.orm import joinedload + # from sqlalchemy.orm import selectinload # from app.domain.models import AuditLog @@ -65,6 +67,8 @@ class AuditLogRepository: if date_to is not None: query = query.where(AuditLog.event_dt <= date_to) query_count = query_count.where(AuditLog.event_dt <= date_to) + + query = query.options(joinedload(AuditLog.user)) query = query.order_by(AuditLog.event_dt.desc())