<?php
namespace App\Controller\Visao\Gestor\Componentes;
use App\Controller\Customs\Custom2IMController;
use App\Repository\Cliente\Dados\EvsRepository;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Routing\Annotation\Route;
/**
* @Route("gestor-filtros")
*/
class FiltrosController extends Custom2IMController
{
const TEMPLATEBASE = 'visao/gestor/componentes/';
/**
* @var EvsRepository
*/
private $evsRepository;
/**
* @param EvsRepository $evsRepository
*/
public function __construct(EvsRepository $evsRepository)
{
$this->evsRepository = $evsRepository;
}
/**
* @return Response
*/
public function especialidades(Request $request): Response
{
$rotaRedirect = $request->query->get('rota', 'visao_gestor_dashboard');
$gestor_permissoes = $this->getSession()->get('gestor_permissoes');
$espcialidades = $this->evsRepository->buscarPerformanceDeTodasEspecialidades(
$this->getPrograma(),
$this->getPeriodo(),
$gestor_permissoes['where'] ?? ''
);
return $this->render('filtro-especialidades.html.twig', [
'especialidades' => $espcialidades,
'rota' => $rotaRedirect,
'ano' => $request->query->get('ano', $this->getPeriodo()['to']['ano'])
]);
}
/**
* @Route("/avaliados", name="visao_gestor_filtros_avaliados")
*
* @param Request $request
* @return Response
*/
public function avaliados(Request $request): Response
{
// // query string
$id_grupo = (int) $request->get('id_busca', null);
$id_avaliado = (int) $request->get('id_filtro', null);
$gestor_permissoes = $this->getSession()->get('gestor_permissoes');
$avaliados = $this->evsRepository->buscarPerformanceDeAvaliadosPorEspecialidade(
$this->getPrograma(),
$this->getPeriodo(),
$id_grupo,
$gestor_permissoes['where'] ?? ''
);
return $this->render('filtro-avaliados.html.twig', [
'avaliados' => $avaliados
,'avaliado_selecionado' => $id_avaliado
,'qs_id_busca' => $id_grupo
]);
}
}