feat(backend): Implement Audit Query API (CQRS) - Sprint 2 Story 2 Task 4
Implemented complete REST API for querying audit logs using CQRS pattern.
Features:
- GET /api/v1/auditlogs/{id} - Retrieve specific audit log
- GET /api/v1/auditlogs/entity/{entityType}/{entityId} - Get entity history
- GET /api/v1/auditlogs/recent?count=100 - Get recent logs (max 1000)
Implementation:
- AuditLogDto - Transfer object for query results
- GetAuditLogByIdQuery + Handler
- GetAuditLogsByEntity Query + Handler
- GetRecentAuditLogsQuery + Handler
- AuditLogsController with 3 endpoints
Technical:
- Multi-tenant isolation via Global Query Filters (automatic)
- Read-only query endpoints (no mutations)
- Swagger/OpenAPI documentation
- Proper HTTP status codes (200 OK, 404 Not Found)
- Cancellation token support
- Primary constructor pattern (modern C# style)
Tests: Build succeeded, no new test failures introduced
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -42,7 +42,14 @@
|
||||
"Bash(docker-compose up:*)",
|
||||
"Bash(docker-compose ps:*)",
|
||||
"Bash(docker-compose logs:*)",
|
||||
"Bash(git reset:*)"
|
||||
"Bash(git reset:*)",
|
||||
"Bash(tasklist:*)",
|
||||
"Bash(timeout 5 docker-compose logs:*)",
|
||||
"Bash(pwsh -NoProfile -ExecutionPolicy Bypass -File \".\\scripts\\dev-start.ps1\" -Stop)",
|
||||
"Bash(docker info:*)",
|
||||
"Bash(docker:*)",
|
||||
"Bash(docker-compose:*)",
|
||||
"Bash(Start-Sleep -Seconds 30)"
|
||||
],
|
||||
"deny": [],
|
||||
"ask": []
|
||||
|
||||
Reference in New Issue
Block a user