24 lines
483 B
Python
24 lines
483 B
Python
from sqlalchemy.orm import Session
|
|
|
|
from app.models import AuditLog
|
|
|
|
|
|
def write_audit(
|
|
db: Session,
|
|
action: str,
|
|
actor_id: int | None = None,
|
|
target_type: str | None = None,
|
|
target_id: str | None = None,
|
|
detail: dict | None = None,
|
|
) -> AuditLog:
|
|
log = AuditLog(
|
|
actor_id=actor_id,
|
|
action=action,
|
|
target_type=target_type,
|
|
target_id=target_id,
|
|
detail_json=detail,
|
|
)
|
|
db.add(log)
|
|
db.flush()
|
|
return log
|