diff --git a/app/Http/Controllers/Repuve/CancellationController.php b/app/Http/Controllers/Repuve/CancellationController.php index 6646fb6..dd4862f 100644 --- a/app/Http/Controllers/Repuve/CancellationController.php +++ b/app/Http/Controllers/Repuve/CancellationController.php @@ -245,7 +245,6 @@ public function cancelarTagNoAsignado(Request $request) 'folio' => 'required|string|exists:tags,folio', 'cancellation_reason_id' => 'required|exists:catalog_cancellation_reasons,id', 'cancellation_observations' => 'nullable|string', - 'id_chip' => 'nullable|string|max:255', 'module_id' => 'nullable|exists:modules,id', ]); @@ -263,6 +262,7 @@ public function cancelarTagNoAsignado(Request $request) // Validar que el tag NO esté asignado if ($tag->isAssigned()) { + DB::rollBack(); return ApiResponse::BAD_REQUEST->response([ 'message' => 'Este tag está asignado a un vehículo. Usa el endpoint de cancelación de constancia.', 'tag_status' => $tag->status->name, @@ -271,21 +271,13 @@ public function cancelarTagNoAsignado(Request $request) // Validar que no esté ya cancelado if ($tag->isCancelled()) { + DB::rollBack(); return ApiResponse::BAD_REQUEST->response([ 'message' => 'El tag ya está cancelado.', ]); } - - $additionalInfo = []; - if ($request->filled('id_chip')) { - $additionalInfo[] = "ID CHIP: {$request->id_chip}"; - } - $observations = $request->cancellation_observations; - if (!empty($additionalInfo)) { - $observations = ($observations ? $observations . ' | ' : '') . implode(' | ', $additionalInfo); - } $cancellationLog = TagCancellationLog::create([ 'tag_id' => $tag->id, @@ -295,6 +287,9 @@ public function cancelarTagNoAsignado(Request $request) 'cancelled_by' => Auth::id(), ]); + // Cargar las relaciones necesarias + $cancellationLog->load(['cancellationReason', 'cancelledBy']); + // Actualizar el módulo del tag si se proporciona if ($request->filled('module_id')) { $tag->module_id = $request->module_id; @@ -320,7 +315,7 @@ public function cancelarTagNoAsignado(Request $request) $cancellationData = [ 'fecha' => $lastCancellation ? $lastCancellation->cancellation_at->format('d/m/Y') : now()->format('d/m/Y'), 'folio' => $tag->folio ?? '', - 'id_chip' => $request->id_chip ?? '', + 'tag_number' => $tag->tag_number ?? 'N/A', 'motivo' => $lastCancellation && $lastCancellation->cancellationReason ? $lastCancellation->cancellationReason->name : 'No especificado', diff --git a/resources/views/pdfs/tag.blade.php b/resources/views/pdfs/tag.blade.php index c704ff1..6711fa9 100644 --- a/resources/views/pdfs/tag.blade.php +++ b/resources/views/pdfs/tag.blade.php @@ -121,8 +121,8 @@ {{ $cancellation['folio'] ?? '' }} - ID CHIP: - {{ $cancellation['id_chip'] ?? '' }} + TAG NUMBER: + {{ $cancellation['tag_number'] ?? 'N/A' }} MOTIVO: