Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
Walter Felipe
pad-upe
Commits
784b7095
Commit
784b7095
authored
May 23, 2023
by
alissonalbuquerque
Browse files
fix(avaliacao_professor): correção de avaliação de professores
parent
7363401c
Changes
1
Hide whitespace changes
Inline
Side-by-side
app/Http/Controllers/PadController.php
View file @
784b7095
...
@@ -364,12 +364,11 @@ class PadController extends Controller
...
@@ -364,12 +364,11 @@ class PadController extends Controller
$modalidades
=
Constants
::
listModalidade
();
$modalidades
=
Constants
::
listModalidade
();
$status
=
Status
::
listStatus
();
$status
=
Status
::
listStatus
();
$avaliacoes
=
$this
->
get_avaliacoes
(
$user_pad
,
$avaliador_pad
);
$avaliacoes
=
$this
->
get_avaliacoes_with_pagination
(
$user_pad
,
$avaliador_pad
);
$avaliacoes_ensino
=
!
empty
(
$avaliacoes
[
'ensino'
])
&&
$avaliacoes
[
'ensino'
]
->
count
()
?
$avaliacoes
[
'ensino'
]
->
paginate
(
5
)
:
[];
$avaliacoes_ensino
=
!
empty
(
$avaliacoes
[
'ensino'
])
?
$avaliacoes
[
'ensino'
]
->
paginate
(
5
)
:
[];
$avaliacoes_pesquisa
=
!
empty
(
$avaliacoes
[
'pesquisa'
])
&&
$avaliacoes
[
'pesquisa'
]
->
count
()
?
$avaliacoes
[
'pesquisa'
]
->
paginate
(
5
)
:
[];
$avaliacoes_pesquisa
=
!
empty
(
$avaliacoes
[
'pesquisa'
])
?
$avaliacoes
[
'pesquisa'
]
->
paginate
(
5
)
:
[];
$avaliacoes_extensao
=
!
empty
(
$avaliacoes
[
'extensao'
])
&&
$avaliacoes
[
'extensao'
]
->
count
()
?
$avaliacoes
[
'extensao'
]
->
paginate
(
5
)
:
[];
$avaliacoes_extensao
=
!
empty
(
$avaliacoes
[
'extensao'
])
?
$avaliacoes
[
'extensao'
]
->
paginate
(
5
)
:
[];
$avaliacoes_gestao
=
!
empty
(
$avaliacoes
[
'gestao'
])
&&
$avaliacoes
[
'gestao'
]
->
count
()
?
$avaliacoes
[
'gestao'
]
->
paginate
(
5
)
:
[];
$avaliacoes_gestao
=
!
empty
(
$avaliacoes
[
'gestao'
])
?
$avaliacoes
[
'gestao'
]
->
paginate
(
5
)
:
[];
//Informando quais tipos (ensino, pesquisa, extensão ou gestão) de atividades podem ser avaliadas pelo usuário logado.
//Informando quais tipos (ensino, pesquisa, extensão ou gestão) de atividades podem ser avaliadas pelo usuário logado.
$avalPad
=
$user
->
avaliadorPad
()
->
first
();
$avalPad
=
$user
->
avaliadorPad
()
->
first
();
...
@@ -586,6 +585,194 @@ class PadController extends Controller
...
@@ -586,6 +585,194 @@ class PadController extends Controller
'gestao'
=>
$avaliacoes_gestao
'gestao'
=>
$avaliacoes_gestao
];
];
}
}
private
function
get_avaliacoes_with_pagination
(
$user_pad
,
$avaliador_pad
)
{
$avaliacoes_ensino
=
[];
$avaliacoes_pesquisa
=
[];
$avaliacoes_extensao
=
[];
$avaliacoes_gestao
=
[];
$dimensoes_permitidas
=
AvaliadorPadDimensao
::
where
(
'avaliador_pad_id'
,
'='
,
$avaliador_pad
->
id
)
->
select
(
'avaliador_pad_dimensao.dimensao'
)
->
get
();
$dimensoes
=
[];
foreach
(
$dimensoes_permitidas
as
$dimensao
)
{
array_push
(
$dimensoes
,
$dimensao
->
dimensao
);
}
if
(
in_array
(
Dimensao
::
ENSINO
,
$dimensoes
))
{
$ensino_grouped_ids
=
[
[
'ids'
=>
EnsinoAtendimentoDiscente
::
whereUserPadId
(
$user_pad
->
id
)
->
pluck
(
'id'
)
->
toArray
(),
'type'
=>
AvaliacaoUtil
::
ENSINO_ATENDIMENTO_DISCENTE
],
[
'ids'
=>
EnsinoAula
::
whereUserPadId
(
$user_pad
->
id
)
->
pluck
(
'id'
)
->
toArray
(),
'type'
=>
AvaliacaoUtil
::
ENSINO_AULA
],
[
'ids'
=>
EnsinoCoordenacaoRegencia
::
whereUserPadId
(
$user_pad
->
id
)
->
pluck
(
'id'
)
->
toArray
(),
'type'
=>
AvaliacaoUtil
::
ENSINO_COORDENACAO_REGENCIA
],
[
'ids'
=>
EnsinoMembroDocente
::
whereUserPadId
(
$user_pad
->
id
)
->
pluck
(
'id'
)
->
toArray
(),
'type'
=>
AvaliacaoUtil
::
ENSINO_MEMBRO_DOCENTE
],
[
'ids'
=>
EnsinoOrientacao
::
whereUserPadId
(
$user_pad
->
id
)
->
pluck
(
'id'
)
->
toArray
(),
'type'
=>
AvaliacaoUtil
::
ENSINO_ORIENTACAO
],
[
'ids'
=>
EnsinoOutros
::
whereUserPadId
(
$user_pad
->
id
)
->
pluck
(
'id'
)
->
toArray
(),
'type'
=>
AvaliacaoUtil
::
ENSINO_OUTROS
],
[
'ids'
=>
EnsinoParticipacao
::
whereUserPadId
(
$user_pad
->
id
)
->
pluck
(
'id'
)
->
toArray
(),
'type'
=>
AvaliacaoUtil
::
ENSINO_PARTICIPACAO
],
[
'ids'
=>
EnsinoProjeto
::
whereUserPadId
(
$user_pad
->
id
)
->
pluck
(
'id'
)
->
toArray
(),
'type'
=>
AvaliacaoUtil
::
ENSINO_PROJETO
],
[
'ids'
=>
EnsinoSupervisao
::
whereUserPadId
(
$user_pad
->
id
)
->
pluck
(
'id'
)
->
toArray
(),
'type'
=>
AvaliacaoUtil
::
ENSINO_SUPERVISAO
],
];
//
$avaliacoes_ensino_ids
=
[];
foreach
(
$ensino_grouped_ids
as
$ensino_group
)
{
$avaliacao_ids
=
Avaliacao
::
whereIn
(
'tarefa_id'
,
$ensino_group
[
'ids'
])
->
whereType
(
$ensino_group
[
'type'
])
->
pluck
(
'id'
)
->
toArray
();
$avaliacoes_ensino_ids
=
array_merge
(
$avaliacoes_ensino_ids
,
$avaliacao_ids
);
}
$avaliacoes_ensino
=
Avaliacao
::
whereIn
(
'id'
,
$avaliacoes_ensino_ids
)
->
orderBy
(
'status'
);
//
}
if
(
in_array
(
Dimensao
::
PESQUISA
,
$dimensoes
))
{
$pesquisa_grouped_ids
=
[
[
'ids'
=>
PesquisaCoordenacao
::
whereUserPadId
(
$user_pad
->
id
)
->
pluck
(
'id'
)
->
toArray
(),
'type'
=>
AvaliacaoUtil
::
PESQUISA_COORDENACAO
],
[
'ids'
=>
PesquisaLideranca
::
whereUserPadId
(
$user_pad
->
id
)
->
pluck
(
'id'
)
->
toArray
(),
'type'
=>
AvaliacaoUtil
::
PESQUISA_LIDERANCA
],
[
'ids'
=>
PesquisaOrientacao
::
whereUserPadId
(
$user_pad
->
id
)
->
pluck
(
'id'
)
->
toArray
(),
'type'
=>
AvaliacaoUtil
::
PESQUISA_ORIENTACAO
],
[
'ids'
=>
PesquisaOutros
::
whereUserPadId
(
$user_pad
->
id
)
->
pluck
(
'id'
)
->
toArray
(),
'type'
=>
AvaliacaoUtil
::
PESQUISA_OUTROS
],
];
$avaliacoes_pesquisa_ids
=
[];
foreach
(
$pesquisa_grouped_ids
as
$pesquisa_group
)
{
$avaliacao_ids
=
Avaliacao
::
whereIn
(
'tarefa_id'
,
$pesquisa_group
[
'ids'
])
->
whereType
(
$pesquisa_group
[
'type'
])
->
pluck
(
'id'
)
->
toArray
();
$avaliacoes_pesquisa_ids
=
array_merge
(
$avaliacoes_pesquisa_ids
,
$avaliacao_ids
);
}
$avaliacoes_pesquisa
=
Avaliacao
::
whereIn
(
'id'
,
$avaliacoes_pesquisa_ids
)
->
orderBy
(
'status'
);
}
if
(
in_array
(
Dimensao
::
EXTENSAO
,
$dimensoes
))
{
$extensao_grouped_ids
=
[
[
'ids'
=>
ExtensaoCoordenacao
::
whereUserPadId
(
$user_pad
->
id
)
->
pluck
(
'id'
)
->
toArray
(),
'type'
=>
AvaliacaoUtil
::
EXTENSAO_COORDENACAO
],
[
'ids'
=>
ExtensaoOrientacao
::
whereUserPadId
(
$user_pad
->
id
)
->
pluck
(
'id'
)
->
toArray
(),
'type'
=>
AvaliacaoUtil
::
EXTENSAO_ORIENTACAO
],
[
'ids'
=>
ExtensaoOutros
::
whereUserPadId
(
$user_pad
->
id
)
->
pluck
(
'id'
)
->
toArray
(),
'type'
=>
AvaliacaoUtil
::
EXTENSAO_OUTROS
]
];
$avaliacoes_extensao_ids
=
[];
foreach
(
$extensao_grouped_ids
as
$extensao_group
)
{
$avaliacao_ids
=
Avaliacao
::
whereIn
(
'tarefa_id'
,
$extensao_group
[
'ids'
])
->
whereType
(
$extensao_group
[
'type'
])
->
pluck
(
'id'
)
->
toArray
();
$avaliacoes_extensao_ids
=
array_merge
(
$avaliacoes_extensao_ids
,
$avaliacao_ids
);
}
$avaliacoes_extensao
=
Avaliacao
::
whereIn
(
'id'
,
$avaliacoes_extensao_ids
)
->
orderBy
(
'status'
);
}
if
(
in_array
(
Dimensao
::
GESTAO
,
$dimensoes
))
{
$gestao_grouped_ids
=
[
[
'ids'
=>
GestaoCoordenacaoLaboratoriosDidaticos
::
whereUserPadId
(
$user_pad
->
id
)
->
pluck
(
'id'
)
->
toArray
(),
'type'
=>
AvaliacaoUtil
::
GESTAO_COORDENACAO_LABORATORIOS_DIDATICOS
,
],
[
'ids'
=>
GestaoCoordenacaoProgramaInstitucional
::
whereUserPadId
(
$user_pad
->
id
)
->
pluck
(
'id'
)
->
toArray
(),
'type'
=>
AvaliacaoUtil
::
GESTAO_COORDENACAO_PROGRAMA_INSTITUCIONAL
],
[
'ids'
=>
GestaoMembroCamaras
::
whereUserPadId
(
$user_pad
->
id
)
->
pluck
(
'id'
)
->
toArray
(),
'type'
=>
AvaliacaoUtil
::
GESTAO_MEMBRO_CAMARAS
],
[
'ids'
=>
GestaoMembroComissao
::
whereUserPadId
(
$user_pad
->
id
)
->
pluck
(
'id'
)
->
toArray
(),
'type'
=>
AvaliacaoUtil
::
GESTAO_MEMBRO_COMISSAO
],
[
'ids'
=>
GestaoMembroConselho
::
whereUserPadId
(
$user_pad
->
id
)
->
pluck
(
'id'
)
->
toArray
(),
'type'
=>
AvaliacaoUtil
::
GESTAO_MEMBRO_CONSELHO
],
[
'ids'
=>
GestaoMembroTitularConselho
::
whereUserPadId
(
$user_pad
->
id
)
->
pluck
(
'id'
)
->
toArray
(),
'type'
=>
AvaliacaoUtil
::
GESTAO_MEMBRO_TITULAR_CONSELHO
],
[
'ids'
=>
GestaoOutros
::
whereUserPadId
(
$user_pad
->
id
)
->
pluck
(
'id'
)
->
toArray
(),
'type'
=>
AvaliacaoUtil
::
GESTAO_OUTROS
],
[
'ids'
=>
GestaoRepresentanteUnidadeEducacao
::
whereUserPadId
(
$user_pad
->
id
)
->
pluck
(
'id'
)
->
toArray
(),
'type'
=>
AvaliacaoUtil
::
GESTAO_REPRESENTANTE_UNIDADE_EDUCACAO
]
];
$avaliacoes_gestao_ids
=
[];
foreach
(
$gestao_grouped_ids
as
$gestao_group
)
{
$avaliacao_ids
=
Avaliacao
::
whereIn
(
'tarefa_id'
,
$gestao_group
[
'ids'
])
->
whereType
(
$gestao_group
[
'type'
])
->
pluck
(
'id'
)
->
toArray
();
$avaliacoes_gestao_ids
=
array_merge
(
$avaliacoes_gestao_ids
,
$avaliacao_ids
);
}
$avaliacoes_gestao
=
Avaliacao
::
whereIn
(
'id'
,
$avaliacoes_gestao_ids
)
->
orderBy
(
'status'
);
}
return
[
'ensino'
=>
$avaliacoes_ensino
,
'pesquisa'
=>
$avaliacoes_pesquisa
,
'extensao'
=>
$avaliacoes_extensao
,
'gestao'
=>
$avaliacoes_gestao
];
}
private
function
get_carga_horaria_total
(
$avaliacoes
)
private
function
get_carga_horaria_total
(
$avaliacoes
)
{
{
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment