Add neutral diagnostic framework for future reporting modules: - DiagnosticReporterInterface, Registry, Manager, PayloadSanitizer - Laravel exception hook in bootstrap/app.php - Module permission declarations (requires_permissions in module.json) - Core diagnostic report points (module boot/install/update failures) - Module documentation update (moduldoku.md) Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
26 lines
663 B
PHP
26 lines
663 B
PHP
<?php
|
|
|
|
namespace App\Services;
|
|
|
|
use App\Models\Job;
|
|
use App\Models\JobAudit;
|
|
|
|
class JobAuditService
|
|
{
|
|
public function logChange(Job $job, string $action, array $oldValues = [], array $newValues = []): JobAudit
|
|
{
|
|
return JobAudit::create([
|
|
'job_id' => $job->id,
|
|
'user_id' => auth()->id(),
|
|
'action' => $action,
|
|
'old_values' => $oldValues ?: null,
|
|
'new_values' => $newValues ?: null,
|
|
'ip_address' => request()->ip(),
|
|
]);
|
|
}
|
|
|
|
public function logDeletion(Job $job): JobAudit
|
|
{
|
|
return $this->logChange($job, 'deleted', $job->attributesToArray());
|
|
}
|
|
}
|