Files
boc/landvex-admin-backend/app/services/__pycache__/audit_service.cpython-39.pyc
T

49 lines
5.7 KiB
Plaintext
Raw Normal View History

a
Ó6Gjã@s€dZddlmZmZddlmZmZmZmZddlm Z m
Z
m Z ddl m
Z
ddlmZddlmZmZeƒZGdd „d ƒZd
S) u^
Audit Service för LandveX Admin Backend.
Hanterar audit-logging för alla systemändringar.
é)ÚdatetimeÚtimezone)ÚOptionalÚDictÚAnyÚList)ÚselectÚdescÚfunc)Ú AsyncSession)Ú get_settings)ÚAuditLogÚ AuditActionc@sxeZdZdZedœddZd#eeeeeeeeeeee ee
fee ee
fee eeeeeeeeee eeeeeeee ee
fe
dœd d
Zd$eeeeee e
efd
œddZd%eeeee e
efdœddZd&eeeee e
efdœddZd'eeee e
dœddZd(eeedœddZeeedœddZe ee
fee ee
fd œd!d"„ZdS))Ú AuditServiceu$Service för att hantera audit logs.©ÚsessioncCs
||_dS©Nr)Úselfr©rúS/home/bernt/.openclaw/workspace/landvex-admin-backend/app/services/audit_service.pyÚ__init__szAuditService.__init__NÚuserT)ÚactionÚ entity_typeÚ entity_idÚactor_idÚ
actor_typeÚactor_ipÚactor_user_agentÚprevious_valuesÚ
new_valuesÚchanged_fieldsÚ
request_idÚrequest_methodÚ request_pathÚ request_bodyÚsuccessÚ
error_messageÚ tenant_idÚ
tenant_schemaÚmetadataÚreturncÃsld}|r| |¡}t||||p d||||| |
| | |
||r<dnd||||d}|j |¡|j ¡IdH|S)zSkapa en audit log entry.NÚsystemÚN)rrrrrrrrr r!r"r#r$r%r&r'r(r)Z
metadata_json)Ú_sanitize_request_bodyr
rÚaddÚflush)rrrrrrrrrr r!r"r#r$r%r&r'r(r)r*Zsanitized_bodyZ audit_entryrrrÚlogs6

í zAuditService.logédr)rrÚlimitÚoffsetr+c Ãttƒ tj|k¡ tj|k¡ ttjƒ¡ |¡  |¡}tt
  tj ¡ƒ tj|k¡ tj|k¡}|j
 |¡IdH}|j
 |¡IdH}t| ¡ ¡ƒ| ¡fSr)rr
ÚwhererrÚorder_byr Ú timestampr5r4r
ÚcountÚidrÚexecuteÚlistÚscalarsÚallÚscalar) rrrr4r5ÚqueryÚ count_queryÚresultÚ count_resultrrrÚ
get_by_entityNs*ÿþýüûÿ ÿþÿzAuditService.get_by_entity)r(r4r5r+cÃs„ttƒ tj|k¡ ttjƒ¡ |¡ |¡}tt  
tj ¡ƒ tj|k¡}|j  
|¡IdH}|j  
|¡IdH}t| ¡ ¡ƒ| ¡fSr)rr
r6r(r7r r8r5r4r
r9r:rr;r<r=r>r?)rr(r4r5r@rArBrCrrrÚ
get_by_tenantbs"ÿþýüÿÿÿzAuditService.get_by_tenant)rr4r5r+cÃs„ttƒ tj|k¡ ttjƒ¡ |¡ |¡}tt  
tj ¡ƒ tj|k¡}|j  
|¡IdH}|j  
|¡IdH}t| ¡ ¡ƒ| ¡fSr)rr