Browse Source

Fix, se traian mal los horarios.

Se tuvo que ajustar la forma de relacionar las tablas uader_cargos_grupos con uader_horarios_comunes (no es solamente con id_declaracion_jurada, sino que habai que usar una tabla relacionarl uader_grupo_cargo_hora) .
main
jirho 10 months ago
parent
commit
f0d0f74abc
  1. 7
      src/app/Http/Controllers/ApiPersonaController.php
  2. 4
      src/app/Models/UaderCargosGrupo.php
  3. 5
      src/app/Models/UaderGrupoCargoHora.php
  4. 6
      src/app/Models/UaderMapuchePersona.php

7
src/app/Http/Controllers/ApiPersonaController.php

@ -743,6 +743,7 @@ class ApiPersonaController extends Controller
->CargosGrupo() ->CargosGrupo()
->where("estado", "A") ->where("estado", "A")
->get(); ->get();
if (empty($cargos)) { if (empty($cargos)) {
return response()->json( return response()->json(
["error" => trans("persona.NO_TIENE_DESIGNACIONES")], ["error" => trans("persona.NO_TIENE_DESIGNACIONES")],
@ -755,18 +756,20 @@ class ApiPersonaController extends Controller
$unidadAcademica = null; $unidadAcademica = null;
foreach ($cargos as $cargo) { foreach ($cargos as $cargo) {
if ($unidadAcademica == null) { if ($unidadAcademica == null) {
$unidadAcademica = $cargo->Sede->ua_guarani; $unidadAcademica = $cargo->Sede->ua_guarani;
} }
if ( if (
$cargo->id_funcion == $funcion && $cargo->id_funcion == $funcion &&
$cargo->Sede->uacad == $sede $cargo->sede == $sede
) { ) {
// Si vino // Si vino
foreach ($cargo->GrupoHorario as $grupo_horario) { foreach ($cargo->GrupoHorario as $grupo_horario) {
foreach ($grupo_horario->Horarios as $horario) { foreach ($grupo_horario->Horarios as $horario) {
if ( if (
$horario->dia_semanal == $dia && $horario->dia_semanal == $dia &&
$horario->tipo_horario == $tipoHorario $horario->tipo_horario == $tipoHorario

4
src/app/Models/UaderCargosGrupo.php

@ -9,6 +9,7 @@ class UaderCargosGrupo extends Model
{ {
use HasFactory; use HasFactory;
protected $primaryKey = 'id';
protected $table = 'uader_cargos_grupo'; protected $table = 'uader_cargos_grupo';
public function Sede() public function Sede()
@ -18,6 +19,7 @@ class UaderCargosGrupo extends Model
public function GrupoHorario() public function GrupoHorario()
{ {
return $this->hasMany(UaderGrupoCargoHora::class, 'id_declaracion_jurada', 'id_declaracion_jurada'); return $this->hasMany(UaderGrupoCargoHora::class, 'id_declaracion_jurada', 'id_declaracion_jurada')
->where('id_grupo_cargo', $this->id_grupo_cargo);
} }
} }

5
src/app/Models/UaderGrupoCargoHora.php

@ -9,10 +9,13 @@ class UaderGrupoCargoHora extends Model
{ {
use HasFactory; use HasFactory;
protected $primaryKey = 'id';
protected $table = 'uader_grupo_cargo_hora'; protected $table = 'uader_grupo_cargo_hora';
public function Horarios() public function Horarios()
{ {
return $this->hasMany(UaderHorariosComunes::class, 'id_declaracion_jurada', 'id_declaracion_jurada'); return $this->hasMany(UaderHorariosComunes::class, 'id_declaracion_jurada', 'id_declaracion_jurada')
->where('id_grupo_hora', $this->id_grupo_hora);
} }
} }

6
src/app/Models/UaderMapuchePersona.php

@ -140,7 +140,8 @@ class UaderMapuchePersona extends Model
->CargosGrupo() ->CargosGrupo()
->where("estado", "A") ->where("estado", "A")
->get(); ->get();
if (empty($cargos)) {
if ($cargos->isEmpty()) {
throw new NotFoundHttpException( throw new NotFoundHttpException(
__("persona.NO_TIENE_DESIGNACIONES") __("persona.NO_TIENE_DESIGNACIONES")
); );
@ -193,7 +194,8 @@ class UaderMapuchePersona extends Model
->CargosGrupo() ->CargosGrupo()
->where("estado", "A") ->where("estado", "A")
->get(); ->get();
if (empty($cargos)) {
if ($cargos->isEmpty()) {
throw new NotFoundHttpException( throw new NotFoundHttpException(
__("persona.NO_TIENE_DESIGNACIONES") __("persona.NO_TIENE_DESIGNACIONES")
); );

Loading…
Cancel
Save