diff --git a/app/Filament/Pages/Supporto/TicketGestione.php b/app/Filament/Pages/Supporto/TicketGestione.php index 2832a10..f9f999e 100644 --- a/app/Filament/Pages/Supporto/TicketGestione.php +++ b/app/Filament/Pages/Supporto/TicketGestione.php @@ -639,6 +639,7 @@ public function caricaAllegati(): void } $saved = 0; + $supportsAttachmentMetadata = Schema::hasColumn('ticket_attachments', 'metadata'); foreach ($files as $file) { if (! is_object($file) || ! method_exists($file, 'store')) { continue; @@ -646,7 +647,7 @@ public function caricaAllegati(): void $stored = app(TicketAttachmentUploadService::class)->store($file, 'ticket-gestione/' . $ticket->id); - $attachment = TicketAttachment::query()->create([ + $payload = [ 'ticket_id' => $ticket->id, 'ticket_update_id' => null, 'user_id' => Auth::id(), @@ -655,7 +656,13 @@ public function caricaAllegati(): void 'mime_type' => $stored['mime'], 'size' => $stored['size'], 'description' => $this->descrizioneAllegati ?: 'Allegato da gestione ticket', - ]); + ]; + + if ($supportsAttachmentMetadata) { + $payload['metadata'] = is_array($stored['metadata'] ?? null) ? $stored['metadata'] : []; + } + + $attachment = TicketAttachment::query()->create($payload); if ($attachment instanceof TicketAttachment) { $this->archiveTicketAttachmentDocument($ticket, $attachment);