/** * Método que gera o ranking de uso do afa por parte dos coordenadores */ public function listar_ranking_uso_sap() { $this->loadPlugin("jquery.tablesorter"); if (!$this->getData('mobile')) { $this->appendJs('https://maxcdn.bootstrapcdn.com/bootstrap/3.0.0/js/bootstrap.min.js'); } $ano = filter_input(INPUT_GET, 'ano', FILTER_VALIDATE_INT); $coordenadores = new Kernel_Models_Coordenador(); $afaConceitoAluno = new Kernel_Models_Afa(); $afaConceitoAlunoTipo = new ModelBase('afa.Afa_Tipo_Anotacao'); $afaConceitoAlunoSubT = new ModelBase("afa.afa_subtipo_anotacao"); $colunas = array("fk_usuario_coordenador", "score", "pk_afa_subtipo_anotacao", "fk_afa_tipo_anotacao"); $avaliacoes = $afaConceitoAluno->listarPorAno($ano, TRUE, $colunas); $totalAva = $avaliacoes->rowCount(); $arrayAva = array(); if ($totalAva) { while ($row = $avaliacoes->fetchObject()) { Matematica::incrementoIsset($arrayAva[$row->fk_usuario_coordenador], 'qt'); Matematica::incrementoIsset($arrayAva[$row->fk_usuario_coordenador]['tipo'], $row->fk_afa_tipo_anotacao); Matematica::incrementoIsset($arrayAva[$row->fk_usuario_coordenador]['sub'], $row->pk_afa_subtipo_anotacao); } } $this->setData('afaConceitosTipos', $afaConceitoAlunoTipo->select("", array("*"), "", array('afa.afa_tipo_anotacao.afa_tipo_anotacao_nome'), array(), 0, 0, 0)->fetchAll(PDO::FETCH_GROUP | PDO::FETCH_CLASS))->setData('afaConceitosSubTipos', $afaConceitoAlunoSubT->select()->fetchAll(PDO::FETCH_GROUP | PDO::FETCH_CLASS))->setData('coordAtivos', $coordenadores->listarAtivos()->fetchAll(PDO::FETCH_CLASS))->setData('totalAva', $totalAva)->setData('arrayAva', $arrayAva)->printView(); }