@php $moduloActivo = session('modulo_activo', 'tecnologia'); @endphp Reporte de Solicitudes - SISSER v2

Sistema de Solicitudes de Servicios (SISSER v2)

Reporte de Solicitudes - Módulo: {{ ucfirst($moduloActivo) }}

Generado el: {{ date('d/m/Y H:i A') }}

@if($moduloActivo === 'mantenimiento') @else @endif @if($moduloActivo === 'mantenimiento') @else @endif @foreach($solicitudes as $solicitud) @php $estados = [ 'I' => 'Ingresada', 'A' => 'Asignada', 'EE' => 'En Espera', 'EJ' => 'En Ejecución', 'CO' => 'Ejecutado/Por Conformar', 'CF' => 'Conformada', 'CE' => 'Cerrada' ]; $lbl = $estados[$solicitud->estado] ?? $solicitud->estado; // Obtenemos el último analista asignado para consistencia, ocultándolo si el estado es Ingresada (no asignado aún) $lastAsignacion = $solicitud->asignaciones->last(); $analista = ($lastAsignacion && $solicitud->estado != 'I') ? $lastAsignacion->analista : null; $ejec = $solicitud->ejecuciones->last(); @endphp @endforeach
Nro FechaDescripción / Equipo / ODTDescripciónOrigen (Gerencia/Ubicación) Solicitante Estado Analista/TécnicoSolución / Diagnóstico / FallaSolución / ObservaciónCalificación
{{ $solicitud->numero }} {{ $solicitud->created_at->format('d/m/Y H:i') }}
{{ $solicitud->descripcion }}
@if($moduloActivo === 'mantenimiento') @if($solicitud->equipo || $solicitud->numero_activo)
Equipo: {{ $solicitud->equipo ?? 'N/A' }} @if($solicitud->numero_activo) (Activo: {{ $solicitud->numero_activo }}) @endif
@endif @if($ejec && $ejec->numero_odt)
ODT: {{ $ejec->numero_odt }}
@endif @endif
{{ optional($solicitud->departamento)->nombre }}
G: {{ optional(optional($solicitud->usuario)->gerencia)->nombre ?? 'N/A' }}
A: {{ optional($solicitud->areaTrabajo)->nombre ?? 'N/A' }}
{{ optional($solicitud->usuario)->name }} {{ optional($solicitud->usuario)->apellido }} {{ $lbl }} {{ $analista ? $analista->name . ' ' . $analista->apellido : 'N/A' }} @if($moduloActivo === 'mantenimiento') @if($solicitud->tipo_mantenimiento || $solicitud->tipo_falla)
Tipo: {{ $solicitud->tipo_mantenimiento ?? 'N/A' }} @if(is_array($solicitud->tipo_falla) && count($solicitud->tipo_falla) > 0) | Falla: {{ implode(', ', $solicitud->tipo_falla) }} @elseif(is_string($solicitud->tipo_falla) && $solicitud->tipo_falla) | Falla: {{ $solicitud->tipo_falla }} @endif
@endif @if($solicitud->estado == 'EE') @php $obs = $solicitud->observaciones; $motivo = ''; if ($obs && str_contains($obs, '[En Espera]:')) { $parts = explode('[En Espera]:', $obs); $motivo = trim(end($parts)); } else { $motivo = $obs; } @endphp
MOTIVO (ESPERA):
{{ $motivo ?: 'Sin motivo' }}
@else @if($ejec) @if($ejec->diagnostico_falla)
Diag: {{ $ejec->diagnostico_falla }}
@endif @if($ejec->solucion)
Sol: {{ $ejec->solucion }}
@endif @if(!$ejec->diagnostico_falla && !$ejec->solucion) N/A @endif @else N/A @endif @endif @else @if($solicitud->estado == 'EE') @php $obs = $solicitud->observaciones; $motivo = ''; if ($obs && str_contains($obs, '[En Espera]:')) { $parts = explode('[En Espera]:', $obs); $motivo = trim(end($parts)); } else { $motivo = $obs; } @endphp
MOTIVO (ESPERA):
{{ $motivo ?: 'Sin motivo' }}
@else @if($ejec) {{ $ejec->solucion }} @else N/A @endif @endif @endif
@if($solicitud->calificacion) {{ $solicitud->calificacion }} / 5 @else N/A @endif