@extends('layout.template') @section('title', 'ICAT') @php $perfilUsuarioAgenda = (int) (auth()->user()->perfil_id ?? 0); $puedeGestionarAgenda = \Illuminate\Support\Facades\Gate::allows('permiso', ['Agenda', 'alta_agenda']) || (auth()->user()->isAdministrator() || auth()->user()->hasProfile('Unidad') || auth()->user()->hasProfile('Vinculación')); @endphp @if ($puedeGestionarAgenda) @section('content') @php $esEdicion = !is_null($agenda); $estatusAgenda = $esEdicion ? (int) ($agenda->estatus ?? 0) : 0; $agendaBloqueada = $esEdicion && in_array($estatusAgenda, [3, 4], true); $calculoAgenda = $esEdicion && $agenda->calculo ? json_decode($agenda->calculo, true) : []; $diasAgenda = is_array($calculoAgenda) && isset($calculoAgenda['dias']) ? $calculoAgenda['dias'] : []; $dias = ['lunes' => 'LUNES', 'martes' => 'MARTES', 'miercoles' => 'MIERCOLES', 'jueves' => 'JUEVES', 'viernes' => 'VIERNES', 'sabado' => 'SABADO', 'domingo' => 'DOMINGO']; $resumenEdicionJs = null; if ($esEdicion && isset($agenda)) { $hpm = $agenda->horas_por_mes ?? null; if (is_string($hpm)) { $hpm = json_decode($hpm, true); } $hsw = $agenda->horas_semanas ?? null; if (is_string($hsw)) { $hsw = json_decode($hsw, true); } $resInhab = is_array($calculoAgenda) && isset($calculoAgenda['resumen']['dias_inhabiles_en_periodo']) ? (int) $calculoAgenda['resumen']['dias_inhabiles_en_periodo'] : 0; $resumenEdicionJs = [ 'fecha_inicio' => \Carbon\Carbon::parse($agenda->fecha_inicio)->format('d/m/Y'), 'fecha_termino' => \Carbon\Carbon::parse($agenda->fecha_termino)->format('d/m/Y'), 'horas_totales' => (int) ($agenda->horas_totales ?? 0), 'horas_por_mes' => is_array($hpm) ? $hpm : [], 'horas_semanas' => is_array($hsw) ? $hsw : [], 'sesiones' => (int) ($agenda->sesiones ?? 0), 'inhabiles_en_periodo' => $resInhab, ]; } @endphp

@if ($esEdicion) Editar Agenda {{ $agenda->clave ?? '' }} @else Agendar Evaluación @endif

@if ($esEdicion && !empty($agenda->evaluador_nombre)) Evaluador: {{ $agenda->evaluador_nombre }} @endif
@if ($esEdicion) @endif
@if (session('success'))
{{ session('success') }}
@endif @if (session('error'))
{{ session('error') }}
@endif @if ($errors->any())
    @foreach ($errors->all() as $error)
  • {{ $error }}
  • @endforeach
@endif
@csrf @if ($esEdicion) @endif
Programación de horarios
@php $horariosInicio = []; $horariosFin = []; for ($h = 6; $h <= 21; $h++) { $horariosInicio[] = sprintf('%02d:00', $h); } for ($h = 6; $h <= 22; $h++) { $horariosFin[] = sprintf('%02d:00', $h); } @endphp
@foreach ($dias as $diaClave => $diaNombre) @php $infoDia = old("dias.{$diaClave}") ?? ($diasAgenda[$diaNombre] ?? []); $estaActivo = isset($infoDia['activo']) || (isset($infoDia['inicio']) && isset($infoDia['fin'])); $horaInicio = $infoDia['inicio'] ?? ''; $horaFin = $infoDia['fin'] ?? ''; @endphp
@endforeach @if (!$agendaBloqueada)
@endif
Cálculo de días
  • Hrs Totales: 0
  • Hrs por Mes: 0
  • Hrs por semana:
  • Sesiones: 0
  • {{--
  • Dias Inhabiles: 0
  • --}}
  • Horario general: -
@if ($esEdicion && $agenda->estatus != 1)
@endif @puede('Agenda', 'evaluador_agenda') @if (!$agendaBloqueada)
Cancelar
@endif @endpuede @puede('Agenda', 'autorizar_agenda') @if ($esEdicion && $estatusAgenda === 1)
@endif @endpuede @puede('Agenda', 'vinculacion_agenda') @if ($esEdicion && $estatusAgenda === 3)
@endif @endpuede @if ($esEdicion && $estatusAgenda === 4)
@endif
@if ($esEdicion && $estatusAgenda === 1) @endif @puede('Agenda', 'vinculacion_agenda') @if ($esEdicion && $estatusAgenda === 3) @endif @endpuede @endsection @push('scripts') @endpush @endif