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

@@ -0,0 +1,40 @@
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Builder;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Prunable;
use Illuminate\Database\Eloquent\Relations\BelongsTo;
use Illuminate\Database\Eloquent\Relations\MorphTo;
class SuperAdminActionLog extends Model
{
/** @use HasFactory<\Database\Factories\SuperAdminActionLogFactory> */
use HasFactory;
use Prunable;
protected $guarded = [];
protected $casts = [
'metadata' => 'array',
'occurred_at' => 'datetime',
];
public function actor(): BelongsTo
{
return $this->belongsTo(User::class, 'actor_id');
}
public function subject(): MorphTo
{
return $this->morphTo();
}
public function prunable(): Builder
{
return static::query()->where('occurred_at', '<=', now()->subMonths(6));
}
}