Refactor: Enforce type safety, fix close deadlock, implement assignee restrictions and notify admin fallbacks
Some checks failed
Tests / PHP 8.3 (push) Has been cancelled
Tests / PHP 8.4 (push) Has been cancelled
Tests / PHP 8.5 (push) Has been cancelled

This commit is contained in:
2026-05-20 10:42:30 +00:00
parent 44a7f53deb
commit fc9158b928
16 changed files with 409 additions and 10 deletions

View File

@@ -177,6 +177,9 @@ class EditFeedback extends EditRecord
$newStatus = $data['status'] ?? null;
if ($newStatus === 'closed' && $this->getRecord()->status !== 'closed') {
// Save pending attachments first so ClosingService validation sees them
$this->savePendingAttachments();
$closingService = App::make(ClosingService::class);
$closingService->close($this->getRecord(), auth()->user());
}
@@ -184,7 +187,7 @@ class EditFeedback extends EditRecord
return $data;
}
protected function afterSave(): void
protected function savePendingAttachments(): void
{
if (empty($this->pendingAttachments)) {
return;
@@ -213,6 +216,13 @@ class EditFeedback extends EditRecord
'size' => $this->safeFileSize($disk, $path),
]);
}
$this->pendingAttachments = []; // Clear to prevent double saving in afterSave
}
protected function afterSave(): void
{
$this->savePendingAttachments();
}
protected function safeMimeType($disk, string $path): ?string