From ccc08633a17cd142323eb6921f769af813376368 Mon Sep 17 00:00:00 2001 From: jirho Date: Tue, 24 Sep 2024 13:36:19 -0300 Subject: [PATCH] Se agrega doctring a funcion de compara Hrarios y se mejoran los nombres de las variables para que cumplan el estandar. --- app/Http/Controllers/ApiPersonaController.php | 79 +++++++++++-------- 1 file changed, 44 insertions(+), 35 deletions(-) diff --git a/app/Http/Controllers/ApiPersonaController.php b/app/Http/Controllers/ApiPersonaController.php index 1140532..d697623 100644 --- a/app/Http/Controllers/ApiPersonaController.php +++ b/app/Http/Controllers/ApiPersonaController.php @@ -39,7 +39,6 @@ class ApiPersonaController extends Controller if ($request->has('telefono')) { $persona = UaderMapuchePersona::BuscarPersonaPorTelefono($request->get('telefono')); - if ($persona) { return ApiPersonaController::extraerDatosJson($persona); } @@ -376,8 +375,8 @@ class ApiPersonaController extends Controller return response()->json(['error' => trans('persona.DECLARACION_JURADA_NO_ENCONTRADA')], HttpStatus::NOT_FOUND); } - $designaciones = $declaracion_jurada->CargosGrupo()->where('estado', 'A')->get(); - if(empty($designaciones)){ + $cargos = $declaracion_jurada->CargosGrupo()->where('estado', 'A')->get(); + if(empty($cargos)){ return response()->json(['error' => trans('persona.NO_TIENE_DESIGNACIONES')], HttpStatus::NOT_FOUND); } @@ -385,17 +384,17 @@ class ApiPersonaController extends Controller $aux_horario = null; $unidadAcademica = null; - foreach ($designaciones as $designacion) { + foreach ($cargos as $cargo) { if($unidadAcademica == null){ - $unidadAcademica = $designacion->Sede->ua_guarani; + $unidadAcademica = $cargo->Sede->ua_guarani; } - if($designacion->id_funcion == $funcion && $designacion->Sede->uacad == $sede){ + if($cargo->id_funcion == $funcion && $cargo->Sede->uacad == $sede){ # Si vino - foreach ($designacion->GrupoHorario as $grupo_horario) { + foreach ($cargo->GrupoHorario as $grupo_horario) { foreach ($grupo_horario->Horarios as $horario) { @@ -459,8 +458,8 @@ class ApiPersonaController extends Controller return response()->json(['error' => trans('persona.DECLARACION_JURADA_NO_ENCONTRADA')], HttpStatus::NOT_FOUND); } - $designaciones = $declaracion_jurada->CargosGrupo()->where('estado', 'A')->get(); - if(empty($designaciones)){ + $cargos = $declaracion_jurada->CargosGrupo()->where('estado', 'A')->get(); + if(empty($cargos)){ return response()->json(['error' => trans('persona.NO_TIENE_DESIGNACIONES')], HttpStatus::NOT_FOUND); } @@ -468,17 +467,17 @@ class ApiPersonaController extends Controller $aux_horario = null; $sede = null; - foreach ($designaciones as $designacion) { + foreach ($cargos as $cargo) { if($sede == null){ - $sede = $designacion->Sede->uacad; + $sede = $cargo->Sede->uacad; } - if($designacion->id_funcion == $funcion && $designacion->Sede->ua_guarani == $unidadAcademica){ + if($cargo->id_funcion == $funcion && $cargo->Sede->ua_guarani == $unidadAcademica){ # Si vino - foreach ($designacion->GrupoHorario as $grupo_horario) { + foreach ($cargo->GrupoHorario as $grupo_horario) { foreach ($grupo_horario->Horarios as $horario) { @@ -602,37 +601,37 @@ class ApiPersonaController extends Controller return response()->json(['error' => trans('persona.DECLARACION_JURADA_NO_ENCONTRADA')], HttpStatus::NOT_FOUND); } - $designaciones = $declaracion_jurada->CargosGrupo()->where('estado', 'A')->get(); - if(empty($designaciones)){ + $cargos = $declaracion_jurada->CargosGrupo()->where('estado', 'A')->get(); + if(empty($cargos)){ return response()->json(['error' => trans('persona.NO_TIENE_DESIGNACIONES')], HttpStatus::NOT_FOUND); } - $designacionesUnidadAcademica = array(); + $cargosUnidadAcademica = array(); - foreach ($designaciones as $designacion) { + foreach ($cargos as $cargo) { - if($designacion->Sede->ua_guarani == $unidadAcademica){ + if($cargo->Sede->ua_guarani == $unidadAcademica){ - $designacionesUnidadAcademica[] = $designacion; + $cargosUnidadAcademica[] = $cargo; } } - if(empty($designacionesUnidadAcademica)){ + if(empty($cargosUnidadAcademica)){ return response()->json(['error' => trans('persona.NO_TIENE_DESIGNACIONES_UA')], HttpStatus::NOT_FOUND); } $funciones = array(); $funcion = null; - foreach ($designacionesUnidadAcademica as $designacionUA) { + foreach ($cargosUnidadAcademica as $cargoUnidadAcademica) { $funcion = [ - 'tipo' => $designacionUA->id_funcion, + 'tipo' => $cargoUnidadAcademica->id_funcion, 'unidad_academica' => $unidadAcademica, - 'sede' => $designacionUA->Sede->uacad + 'sede' => $cargoUnidadAcademica->Sede->uacad ]; - if(!in_array($funcion, $funciones)){ # para que no se repitan las funciones por tarea o designacion + if(!in_array($funcion, $funciones)){ # para que no se repitan las funciones por cargo $funciones[] = $funcion; } } @@ -661,37 +660,37 @@ class ApiPersonaController extends Controller return response()->json(['error' => trans('persona.DECLARACION_JURADA_NO_ENCONTRADA')], HttpStatus::NOT_FOUND); } - $designaciones = $declaracion_jurada->CargosGrupo()->where('estado', 'A')->get(); - if(empty($designaciones)){ + $cargos = $declaracion_jurada->CargosGrupo()->where('estado', 'A')->get(); + if(empty($cargos)){ return response()->json(['error' => trans('persona.NO_TIENE_DESIGNACIONES')], HttpStatus::NOT_FOUND); } - $designacionesSede = array(); + $cargosSedes = array(); $unidadAcademica = null; - foreach ($designaciones as $designacion) { + foreach ($cargos as $cargo) { - if($designacion->Sede->uacad == $sede){ + if($cargo->Sede->uacad == $sede){ - $designacionesSede[] = $designacion; + $cargosSedes[] = $cargo; if($unidadAcademica == null){ - $unidadAcademica = $designacion->Sede->ua_guarani; + $unidadAcademica = $cargo->Sede->ua_guarani; } } } - if(empty($designacionesSede)){ + if(empty($cargosSedes)){ return response()->json(['error' => trans('persona.NO_TIENE_DESIGNACIONES_SEDE')], HttpStatus::NOT_FOUND); } $funciones = array(); $funcion = null; - foreach ($designacionesSede as $designacionSede) { + foreach ($cargosSedes as $cargoSede) { $funcion = [ - 'tipo' => $designacionSede->id_funcion, + 'tipo' => $cargoSede->id_funcion, 'unidad_academica' => $unidadAcademica, 'sede' => $sede ]; @@ -710,7 +709,17 @@ class ApiPersonaController extends Controller return response()->json($datos, HttpStatus::OK); } - # FUNCION STANDALONE: + # FUNCIONES STANDALONE: + + /** + * Compara dos horarios por su hora de entrada. + * + * Utilizada para ordenar un arreglo de horarios. + * + * @param array $a El primer horario a comparar. + * @param array $b El segundo horario a comparar. + * @return int Un valor negativo si $a es menor que $b, cero si son iguales, o un valor positivo si $a es mayor que $b. + */ public static function compararHorarios($a, $b) { return strcmp($a['hora_entra'], $b['hora_entra']); }