@extends('layouts.app') @section('titulo','Elementos de la Central') @push('styles') @endpush @section('ruta')
Revisiones > Revisión en {{$revision->lugar->nombre}} > Central {{$central->nombre}} > Elementos
@endsection @section('contenido1')
{{ $central->nombre }} - Elementos
Información General
Central: {{ $central->nombre }}
Total Elementos: {{ $elementos->count() }}
Lazos Configurados: {{ $elementosPorLazo->count() }}
Distribución por Tipo
@php $sensores = $elementos->filter(function($elem) { return $elem->tipoElemento && $elem->tipoElemento->tipo == 1; }); $modulos = $elementos->filter(function($elem) { return $elem->tipoElemento && $elem->tipoElemento->tipo == 2; }); $revisadosCount = $elementos->filter(function($elem) use ($revision) { return $elem->ultimaPrueba && $elem->ultimaPrueba->id_revision == $revision->id; })->count(); @endphp
Sensores: {{ $sensores->count() }}
Módulos: {{ $modulos->count() }}
Revisados: {{ $revisadosCount }}
@if(($vista ?? 'lazo') === 'lazo')
@foreach($elementosPorLazo->sortKeys() as $numeroLazo => $elementosLazo)
@php // Separar sensores de módulos usando el tipo de la base de datos $sensores = $elementosLazo->filter(function($elemento) { return $elemento->tipoElemento && $elemento->tipoElemento->tipo == 1; })->sortBy('numero'); $modulos = $elementosLazo->filter(function($elemento) { return $elemento->tipoElemento && $elemento->tipoElemento->tipo == 2; })->sortBy('numero'); @endphp @if($sensores->count() > 0)
Sensores {{ $sensores->count() }}
@foreach($sensores as $elemento) @endforeach
Lazo Número Tipo Nombre Comprobado Nº Zona Nombre Zona Acciones
{{ $numeroLazo }} {{ $elemento->numero }} @if($elemento->tipoElemento) @php $abrev = $elemento->tipoElemento->abreviatura; @endphp @if($abrev == 'OPTI') {{ $abrev }} @elseif($abrev == 'TER') {{ $abrev }} @elseif($abrev == 'MULT') {{ $abrev }} @elseif($abrev == 'SMART 4') {{ $abrev }} @else {{ $abrev }} @endif @else N/A @endif {{ $elemento->nombre }} @php $up = $elemento->ultimaPrueba; @endphp @if($up && $up->estado) @if($up->estado === 'funciona') Funciona @elseif($up->estado === 'no funciona') No Funciona @elseif($up->estado === 'pendiente') Pendiente @endif @endif {{ $elemento->zona->numero ?? 'N/A' }} {{ $elemento->zona->nombre ?? 'Sin zona' }}
@csrf
@csrf
@csrf @method('DELETE')
@endif @if($modulos->count() > 0)
Módulos {{ $modulos->count() }}
@foreach($modulos as $elemento) @endforeach
Lazo Número Tipo Nombre Comprobado Nº Zona Nombre Zona Acciones
{{ $numeroLazo }} {{ $elemento->numero }} @if($elemento->tipoElemento) @php $abrev = $elemento->tipoElemento->abreviatura; @endphp @if($abrev == 'PUL') {{ $abrev }} @elseif($abrev == 'SIRE') {{ $abrev }} @elseif($abrev == 'MON') {{ $abrev }} @elseif($abrev == 'CON') {{ $abrev }} @elseif($abrev == 'AUX') {{ $abrev }} @elseif($abrev == 'ASPR') {{ $abrev }} @elseif($abrev == 'SPRK') {{ $abrev }} @elseif($abrev == 'ZMX') {{ $abrev }} @elseif($abrev == 'CDI') {{ $abrev }} @elseif($abrev == 'BOOSTER') {{ $abrev }} @else {{ $abrev }} @endif @else N/A @endif {{ $elemento->nombre }} @php $up = $elemento->ultimaPrueba; @endphp @if($up && $up->estado) @if($up->estado === 'funciona') Funciona @elseif($up->estado === 'no funciona') No Funciona @elseif($up->estado === 'pendiente') Pendiente @endif @endif {{ $elemento->zona->numero ?? 'N/A' }} {{ $elemento->zona->nombre ?? 'Sin zona' }}
@csrf
@csrf
@csrf @method('DELETE')
@endif @if($sensores->count() == 0 && $modulos->count() == 0)
No hay elementos registrados en este lazo.
@endif
@endforeach
@elseif(($vista ?? 'lazo') === 'zona')
@foreach($elementosPorZona->sortKeys() as $numeroZona => $elementosZona)
@php $sensoresZona = $elementosZona->filter(function($elem) { return $elem->tipoElemento && $elem->tipoElemento->tipo == 1; }); $modulosZona = $elementosZona->filter(function($elem) { return $elem->tipoElemento && $elem->tipoElemento->tipo == 2; }); $funcionanZona = $elementosZona->filter(function($elem) use ($revision) { return $elem->ultimaPrueba && $elem->ultimaPrueba->id_revision == $revision->id && $elem->ultimaPrueba->estado === 'funciona'; })->count(); $pendientesZona = $elementosZona->filter(function($elem) use ($revision) { return $elem->ultimaPrueba && $elem->ultimaPrueba->id_revision == $revision->id && $elem->ultimaPrueba->estado === 'pendiente'; })->count(); $noFuncionanZona = $elementosZona->filter(function($elem) use ($revision) { return $elem->ultimaPrueba && $elem->ultimaPrueba->id_revision == $revision->id && $elem->ultimaPrueba->estado === 'no funciona'; })->count(); @endphp
@php // Separar sensores de módulos usando el tipo de la base de datos $sensores = $elementosZona->filter(function($elemento) { return $elemento->tipoElemento && $elemento->tipoElemento->tipo == 1; })->sortBy('numero'); $modulos = $elementosZona->filter(function($elemento) { return $elemento->tipoElemento && $elemento->tipoElemento->tipo == 2; })->sortBy('numero'); @endphp @if($sensores->count() > 0)
Sensores {{ $sensores->count() }}
@foreach($sensores as $elemento) @endforeach
Lazo Número Tipo Nombre Comprobado Nº Zona Nombre Zona Acciones
{{ $elemento->lazoRelation->numero ?? $elemento->lazo }} {{ $elemento->numero }} @include('user.contra_incendios.elemento.partials.tipo_badge', ['elemento' => $elemento]) {{ $elemento->nombre }} @php $up = $elemento->ultimaPrueba; @endphp @if($up && $up->estado) @if($up->estado === 'funciona') Funciona @elseif($up->estado === 'no funciona') No Funciona @elseif($up->estado === 'pendiente') Pendiente @endif @endif {{ $elemento->zona->numero ?? 'N/A' }} {{ $elemento->zona->nombre ?? 'Sin zona' }}
@csrf
@csrf
@csrf @method('DELETE')
@endif @if($modulos->count() > 0)
Módulos {{ $modulos->count() }}
@foreach($modulos as $elemento) @endforeach
Lazo Número Tipo Nombre Comprobado Nº Zona Nombre Zona Acciones
{{ $elemento->lazoRelation->numero ?? $elemento->lazo }} {{ $elemento->numero }} @include('user.contra_incendios.elemento.partials.tipo_badge', ['elemento' => $elemento]) {{ $elemento->nombre }} @php $up = $elemento->ultimaPrueba; @endphp @if($up && $up->estado) @if($up->estado === 'funciona') Funciona @elseif($up->estado === 'no funciona') No Funciona @elseif($up->estado === 'pendiente') Pendiente @endif @endif {{ $elemento->zona->numero ?? 'N/A' }} {{ $elemento->zona->nombre ?? 'Sin zona' }}
@csrf
@csrf
@csrf @method('DELETE')
@endif
@endforeach
@elseif(($vista ?? 'lazo') === 'pendientes')
@foreach($elementosPendientesPorZona->sortKeys() as $numeroZona => $elementosZona)
@php $sensoresZona = $elementosZona->filter(function($elem) { return $elem->tipoElemento && $elem->tipoElemento->tipo == 1; }); $modulosZona = $elementosZona->filter(function($elem) { return $elem->tipoElemento && $elem->tipoElemento->tipo == 2; }); @endphp
@php // Separar sensores de módulos usando el tipo de la base de datos $sensores = $elementosZona->filter(function($elemento) { return $elemento->tipoElemento && $elemento->tipoElemento->tipo == 1; })->sortBy('numero'); $modulos = $elementosZona->filter(function($elemento) { return $elemento->tipoElemento && $elemento->tipoElemento->tipo == 2; })->sortBy('numero'); @endphp @if($sensores->count() > 0)
Sensores {{ $sensores->count() }}
@foreach($sensores as $elemento) @endforeach
Lazo Número Tipo Nombre Comprobado Nº Zona Nombre Zona Acciones
{{ $elemento->lazoRelation->numero ?? $elemento->lazo }} {{ $elemento->numero }} @include('user.contra_incendios.elemento.partials.tipo_badge', ['elemento' => $elemento]) {{ $elemento->nombre }} Pendiente {{ $elemento->zona->numero ?? 'N/A' }} {{ $elemento->zona->nombre ?? 'Sin zona' }}
@csrf
@csrf
@csrf @method('DELETE')
@endif @if($modulos->count() > 0)
Módulos {{ $modulos->count() }}
@foreach($modulos as $elemento) @endforeach
Lazo Número Tipo Nombre Comprobado Nº Zona Nombre Zona Acciones
{{ $elemento->lazoRelation->numero ?? $elemento->lazo }} {{ $elemento->numero }} @include('user.contra_incendios.elemento.partials.tipo_badge', ['elemento' => $elemento]) {{ $elemento->nombre }} Pendiente {{ $elemento->zona->numero ?? 'N/A' }} {{ $elemento->zona->nombre ?? 'Sin zona' }}
@csrf
@csrf
@csrf @method('DELETE')
@endif
@endforeach
@endif @if($elementosPorLazo->count() == 0)
No hay elementos registrados
Comience añadiendo elementos a esta central.
Crear Primer Elemento
@endif @endsection @section('scripts') @endsection