protected function programaciones($grupo_id = null) { $programaciones = Programacion::activo(); if (Auth::user()->esEjecutivo() && Auth::user()->grupo) { $grupo = Auth::user()->grupo()->with('zonas')->first(); } if ($grupo_id) { $grupo = Grupo::with('zonas')->find($grupo_id); } if ($grupo_id || Auth::user()->esEjecutivo() && Auth::user()->grupo) { $zonas = $grupo->zonas->map(function ($zona) { return $zona->id; }); $programaciones->whereIn('zona_id', $zonas->toArray()); } return $programaciones; }