schneespur/app/Services/JobAuditService.php
Michael ee3dbba6cc Initial release v1.0.0
Schneespur — Open-source winter service documentation software (PWA + Admin).
GPS tracking via OwnTracks, weather data, photo evidence, and legally
compliant service records for winter maintenance operators.

License: AGPL-3.0-or-later
2026-05-17 13:33:51 +00:00

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());
}
}