using System.Text.Json; using Dapper; namespace CareFix.Api.Infrastructure; public sealed class AuditService(ControlDb db) { public async Task LogAsync(int? userId, int? ticketId, string action, object? detail, CancellationToken ct = default) { await using var c = await db.OpenAsync(ct); await c.ExecuteAsync("INSERT CF_AUDIT (UserId, TicketId, Action, Detail) VALUES (@userId, @ticketId, @action, @d)", new { userId, ticketId, action, d = detail is null ? null : JsonSerializer.Serialize(detail) }); } }