Add audit trail: AuditLog entity, AuditService, admin logs page

- AuditLog entity: action, entityType, entityId, data (JSON), performedBy, ipAddress
- AuditService: logs actions with current user and IP
- Audit on: order_created, order_paid, order_cancelled, order_refunded
- Admin /admin/logs: paginated table with action badges, details, user, IP
- Navigation link 'Logs' in admin header

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
Serreau Jovann
2026-03-22 20:48:10 +01:00
parent 6ae9b1c7ff
commit 66ac2379ec
12 changed files with 350 additions and 6 deletions

View File

@@ -6,7 +6,7 @@ parameters:
- src/Kernel.php
ignoreErrors:
-
message: '#Property App\\Entity\\(EmailTracking|MessengerLog|User|Payout|Event|Category|Billet|BilletDesign|BilletBuyer|BilletBuyerItem|BilletOrder|OrganizerInvitation)::\$id .* never assigned#'
message: '#Property App\\Entity\\(EmailTracking|MessengerLog|User|Payout|Event|Category|Billet|BilletDesign|BilletBuyer|BilletBuyerItem|BilletOrder|OrganizerInvitation|AuditLog)::\$id .* never assigned#'
reportUnmatched: false
paths:
- src/Entity/EmailTracking.php
@@ -21,6 +21,7 @@ parameters:
- src/Entity/BilletBuyerItem.php
- src/Entity/BilletOrder.php
- src/Entity/OrganizerInvitation.php
- src/Entity/AuditLog.php
-
message: '#Parameter \#1 \$params of method Stripe\\Service\\.*::create\(\) expects#'
path: src/Controller/OrderController.php