Implement superadmin audit log for mutations
Some checks failed
linter / quality (push) Has been cancelled
tests / ci (push) Has been cancelled
tests / ui (push) Has been cancelled

This commit is contained in:
Codex Agent
2026-01-02 11:57:49 +01:00
parent 8b4950c79d
commit 412ecbe691
82 changed files with 1766 additions and 192 deletions

View File

@@ -5,6 +5,7 @@ namespace App\Filament\Resources;
use App\Filament\Clusters\WeeklyOps\WeeklyOpsCluster;
use App\Filament\Resources\GiftVoucherResource\Pages;
use App\Models\GiftVoucher;
use App\Services\Audit\SuperAdminAuditLogger;
use App\Services\GiftVouchers\GiftVoucherService;
use BackedEnum;
use Carbon\Carbon;
@@ -97,6 +98,13 @@ class GiftVoucherResource extends Resource
->visible(fn (GiftVoucher $record): bool => $record->canBeRefunded())
->action(function (GiftVoucher $record, GiftVoucherService $service): void {
$service->refund($record, 'customer_request');
app(SuperAdminAuditLogger::class)->record(
'gift_voucher.refunded',
$record,
SuperAdminAuditLogger::fieldsMetadata(['status', 'refunded_at']),
source: static::class
);
})
->successNotificationTitle('Gutschein erstattet'),
Action::make('resend')
@@ -118,6 +126,13 @@ class GiftVoucherResource extends Resource
$record,
Carbon::parse($data['recipient_delivery_scheduled_at'])
);
app(SuperAdminAuditLogger::class)->record(
'gift_voucher.delivery_scheduled',
$record,
SuperAdminAuditLogger::fieldsMetadata($data),
source: static::class
);
})
->visible(fn (GiftVoucher $record): bool => ! empty($record->recipient_email)),
Action::make('mark_redeemed')
@@ -136,6 +151,13 @@ class GiftVoucherResource extends Resource
'manual_marked' => true,
]),
])->save();
app(SuperAdminAuditLogger::class)->record(
'gift_voucher.marked_redeemed',
$record,
SuperAdminAuditLogger::fieldsMetadata(['status', 'redeemed_at', 'metadata']),
source: static::class
);
})
->successNotificationTitle('Als eingelöst markiert'),
]);