private function gerarInfoPaginas($tipo, $where = array(), $paginacao = 0)
 {
     $post = Zend_Registry::get('post');
     $retorno = array();
     $ProjetosDAO = new Projetos();
     $distribuirParecerDAO = new tbDistribuirParecer();
     switch ($tipo) {
         case 'resaguardandoparecer':
             if ($paginacao > 0) {
                 $total = $distribuirParecerDAO->aguardandoparecerTotal($where)->current()->toArray();
                 $limit = $this->paginacao($total["total"], $paginacao);
                 $resp = $distribuirParecerDAO->aguardandoparecer($where, $limit['tamanho'], $limit['inicio']);
             } else {
                 $resp = $distribuirParecerDAO->aguardandoparecer($where);
             }
             $cDistribuicao = 0;
             foreach ($resp as $val) {
                 $retorno[$val['idOrgao']]['nmOrgao'] = $val['nmOrgao'];
                 $retorno[$val['idOrgao']]['pareceristas'][$val['idAgente']]['nmParecerista'] = $val['nmParecerista'];
                 $retorno[$val['idOrgao']]['pareceristas'][$val['idAgente']]['projetos'][$val['IdPRONAC']]['idPronac'] = $val['IdPRONAC'];
                 $retorno[$val['idOrgao']]['pareceristas'][$val['idAgente']]['projetos'][$val['IdPRONAC']]['pronac'] = $val['pronac'];
                 $retorno[$val['idOrgao']]['pareceristas'][$val['idAgente']]['projetos'][$val['IdPRONAC']]['nmProjeto'] = $val['NomeProjeto'];
                 $retorno[$val['idOrgao']]['pareceristas'][$val['idAgente']]['projetos'][$val['IdPRONAC']]['Produtos'][$val['idProduto']]['nmProduto'] = $val['nmProduto'];
                 $retorno[$val['idOrgao']]['pareceristas'][$val['idAgente']]['projetos'][$val['IdPRONAC']]['Produtos'][$val['idProduto']]['distribuicao'][$cDistribuicao]['dtEnvio'] = date('d/m/Y', strtotime($val['DtEnvio']));
                 $retorno[$val['idOrgao']]['pareceristas'][$val['idAgente']]['projetos'][$val['IdPRONAC']]['Produtos'][$val['idProduto']]['distribuicao'][$cDistribuicao]['dtDistribuicao'] = date('d/m/Y', strtotime($val['DtDistribuicao']));
                 $retorno[$val['idOrgao']]['pareceristas'][$val['idAgente']]['projetos'][$val['IdPRONAC']]['Produtos'][$val['idProduto']]['distribuicao'][$cDistribuicao]['qtDias'] = $val['nrDias'];
                 $cDistribuicao++;
             }
             break;
         case 'resumo':
             $resp = $distribuirParecerDAO->aguardandoparecerresumo($where);
             $orgAnt = '';
             foreach ($resp as $val) {
                 if ($orgAnt == '' || $orgAnt != $val['idOrgao']) {
                     $retorno[$val['idOrgao']]['qt'] = 0;
                     $orgAnt = $val['idOrgao'];
                 }
                 $retorno[$val['idOrgao']]['nmOrgao'] = $val['nmOrgao'];
                 $retorno[$val['idOrgao']]['qt'] += $val['qt'];
                 $retorno[$val['idOrgao']]['pareceristas'][$val['idAgente']]['nmParecerista'] = $val['nmParecerista'];
                 $retorno[$val['idOrgao']]['pareceristas'][$val['idAgente']]['qt'] = $val['qt'];
             }
             break;
         case 'pareceremitido':
             if ($paginacao > 0) {
                 $total = $ProjetosDAO->listaPareceremitidoTotal()->current()->toArray();
                 $limit = $this->paginacao($total["total"], $paginacao);
                 $resp = $ProjetosDAO->listaPareceremitido($limit['tamanho'], $limit['inicio']);
             } else {
                 $resp = $ProjetosDAO->listaPareceremitido();
             }
             foreach ($resp as $val) {
                 $retorno[$val['IdPRONAC']]['idPronac'] = $val['IdPRONAC'];
                 $retorno[$val['IdPRONAC']]['pronac'] = $val['pronac'];
                 $retorno[$val['IdPRONAC']]['nmProjeto'] = $val['NomeProjeto'];
                 $retorno[$val['IdPRONAC']]['nmOrgao'] = $val['OrgaoOrigem'];
                 $retorno[$val['IdPRONAC']]['dtEnvio'] = date('d/m/Y', strtotime($val['DtEnvio']));
                 $retorno[$val['IdPRONAC']]['dtRetorno'] = date('d/m/Y', strtotime($val['DtRetorno']));
                 $retorno[$val['IdPRONAC']]['qtDias'] = $val['Dias'];
                 $retorno[$val['IdPRONAC']]['qtDiasConsolidado'] = $val['QtdeConsolidar'];
                 $retorno[$val['IdPRONAC']]['dtConsolidacao'] = $val['DtConsolidacaoParecer'];
                 $retorno[$val['IdPRONAC']]['stParecer'] = 'Emitido';
                 $resp2 = $distribuirParecerDAO->pareceremitido($val['pronac']);
                 foreach ($resp2 as $val2) {
                     $retorno[$val['IdPRONAC']]['Orgaos'][$val2['idOrgao']]['nmOrgao'] = $val2['Sigla'];
                     $retorno[$val['IdPRONAC']]['Orgaos'][$val2['idOrgao']]['Produtos'][$val2['idProduto']]['nmProduto'] = $val2['Produto'];
                     if ($val2['stPrincipal']) {
                         $retorno[$val['IdPRONAC']]['Orgaos'][$val2['idOrgao']]['Produtos'][$val2['idProduto']]['prodPrincipal'] = 'sim';
                     } else {
                         $retorno[$val['IdPRONAC']]['Orgaos'][$val2['idOrgao']]['Produtos'][$val2['idProduto']]['prodPrincipal'] = '';
                     }
                     $retorno[$val['IdPRONAC']]['Orgaos'][$val2['idOrgao']]['Produtos'][$val2['idProduto']]['dtFechamento'] = date('d/m/Y', strtotime($val2['DtDevolucao']));
                     $retorno[$val['IdPRONAC']]['Orgaos'][$val2['idOrgao']]['Produtos'][$val2['idProduto']]['area'] = $val2['Area'];
                     $retorno[$val['IdPRONAC']]['Orgaos'][$val2['idOrgao']]['Produtos'][$val2['idProduto']]['segmento'] = $val2['Segmento'];
                 }
             }
             break;
         case 'parecerconsolidado':
             if ($paginacao > 0) {
                 $total = $ProjetosDAO->listaParecerconsolidadoTotal()->current()->toArray();
                 $limit = $this->paginacao($total["total"], $paginacao);
                 $resp = $ProjetosDAO->listaParecerconsolidado($limit['tamanho'], $limit['inicio']);
             } else {
                 $resp = $ProjetosDAO->listaParecerconsolidado();
             }
             foreach ($resp as $val) {
                 $retorno[$val['IdPRONAC']]['idPronac'] = $val['IdPRONAC'];
                 $retorno[$val['IdPRONAC']]['pronac'] = $val['pronac'];
                 $retorno[$val['IdPRONAC']]['nmProjeto'] = $val['NomeProjeto'];
                 $retorno[$val['IdPRONAC']]['nmOrgao'] = $val['OrgaoOrigem'];
                 $retorno[$val['IdPRONAC']]['dtEnvio'] = date('d/m/Y', strtotime($val['DtEnvio']));
                 $retorno[$val['IdPRONAC']]['dtRetorno'] = date('d/m/Y', strtotime($val['DtRetorno']));
                 $retorno[$val['IdPRONAC']]['qtDiasRetorno'] = date('d/m/Y', strtotime($val['DtConsolidacaoParecer']));
                 $retorno[$val['IdPRONAC']]['dtConsolidacao'] = $val['Dias'];
                 $retorno[$val['IdPRONAC']]['qtDiasConsolidado'] = $val['QtdeConsolidar'];
                 $retorno[$val['IdPRONAC']]['stParecer'] = 'Consolidado';
                 $resp2 = $distribuirParecerDAO->parecerconsolidado($val['pronac']);
                 foreach ($resp2 as $val2) {
                     $retorno[$val['IdPRONAC']]['Orgaos'][$val2['idOrgao']]['nmOrgao'] = $val2['Sigla'];
                     $retorno[$val['IdPRONAC']]['Orgaos'][$val2['idOrgao']]['Produtos'][$val2['idProduto']]['nmProduto'] = $val2['Produto'];
                     if ($val2['stPrincipal']) {
                         $retorno[$val['IdPRONAC']]['Orgaos'][$val2['idOrgao']]['Produtos'][$val2['idProduto']]['prodPrincipal'] = 'sim';
                     } else {
                         $retorno[$val['IdPRONAC']]['Orgaos'][$val2['idOrgao']]['Produtos'][$val2['idProduto']]['prodPrincipal'] = '';
                     }
                     $retorno[$val['IdPRONAC']]['Orgaos'][$val2['idOrgao']]['Produtos'][$val2['idProduto']]['dtFechamento'] = date('d/m/Y', strtotime($val2['DtDevolucao']));
                     $retorno[$val['IdPRONAC']]['Orgaos'][$val2['idOrgao']]['Produtos'][$val2['idProduto']]['area'] = $val2['Area'];
                     $retorno[$val['IdPRONAC']]['Orgaos'][$val2['idOrgao']]['Produtos'][$val2['idProduto']]['segmento'] = $val2['Segmento'];
                 }
             }
             break;
         case 'resgeraldeanalise':
             $this->view->titulo = array('PRONAC', 'Nome do Projeto', 'Produto', 'Dt. Primeiro Envio para Vinculada', 'Dt. Último Envio para Vinculada', 'Dt. Distribuição para Parecerista', 'Parecerista', 'Qtde Dias Para Distribuir', 'Qtde Dias na caixa do Parecerista', 'Total de dias gastos para Análise', 'Dt. Devolução do Parecerista para o Coordenador', 'Qtde Dias para  Parecerista Analisar', 'Qtde Dias Aguardando Avaliação do Coordenador', 'Status da Diligência', 'Órgão', 'Periodo de Execução do Projeto', 'Dias Vencidos ou a Vencer para Execução do Projeto');
             if ($paginacao > 0) {
                 $total = $ProjetosDAO->geraldeanaliseTotal($where)->current()->toArray();
                 $limit = $this->paginacao($total["total"], $paginacao);
                 $resp = $ProjetosDAO->geraldeanalise($where, $limit['tamanho'], $limit['inicio']);
             } else {
                 $resp = $ProjetosDAO->geraldeanalise($where);
             }
             foreach ($resp as $key => $val) {
                 $retorno[$key]['pronac'] = $val['PRONAC'];
                 $retorno[$key]['idpronac'] = $val['IdPRONAC'];
                 $retorno[$key]['nmProjeto'] = $val['NomeProjeto'];
                 $retorno[$key]['Produtos'][$val['idProduto']]['nmProduto'] = $val['Produto'];
                 $retorno[$key]['Produtos'][$val['idProduto']]['dtPriEnvVinc'] = $val['DtPrimeiroEnvio'];
                 $retorno[$key]['Produtos'][$val['idProduto']]['dtUltEnvVinc'] = $val['DtUltimoEnvio'];
                 $retorno[$key]['Produtos'][$val['idProduto']]['dtDistPar'] = $val['DtDistribuicao'];
                 $retorno[$key]['Produtos'][$val['idProduto']]['nmParecerista'] = $val['Parecerista'];
                 $retorno[$key]['Produtos'][$val['idProduto']]['qtDiasDist'] = $val['QtdeDiasParaDistribuir'];
                 $retorno[$key]['Produtos'][$val['idProduto']]['qtDiasCaixaPar'] = $val['QtdeDiasComParecerista'];
                 $retorno[$key]['Produtos'][$val['idProduto']]['tDiasAnal'] = $val['QtdeTotalDiasAnalisar'];
                 $retorno[$key]['Produtos'][$val['idProduto']]['dtDevParCoo'] = $val['dtDevolucao'];
                 $retorno[$key]['Produtos'][$val['idProduto']]['qtDiasParAnal'] = $val['QtdeDiasPareceristaAnalisar'];
                 $retorno[$key]['Produtos'][$val['idProduto']]['qtDiasAguarAval'] = $val['QtdeDiasDevolvidosCoordenador'];
                 $retorno[$key]['Produtos'][$val['idProduto']]['stDiligencia'] = $this->estadoDiligencia($val);
                 $retorno[$key]['Produtos'][$val['idProduto']]['nmOrgao'] = $val['nmOrgao'];
                 $retorno[$key]['Produtos'][$val['idProduto']]['perExecProj'] = $val['PeriodoExecucao'];
                 $retorno[$key]['Produtos'][$val['idProduto']]['qtDiasVencExecProj'] = $val['QtdeDiasVencido'];
             }
             break;
         case 'resconsolidacaoparecerista':
             $zerado = false;
             $resp = $distribuirParecerDAO->analisePorParecerista($where);
             if ($resp->count() > 0) {
                 foreach ($resp as $val) {
                     if (!empty($post->stAnalise)) {
                         if ($post->stAnalise == 1) {
                             if ($val->DtSolicitacao && $val->DtResposta == NULL) {
                                 $retorno = $this->dadosResconsolidacaoparecerista($val, $retorno);
                             }
                         }
                         if ($post->stAnalise == 2) {
                             if ($val->DtSolicitacao && $val->DtResposta != NULL) {
                                 $retorno = $this->dadosResconsolidacaoparecerista($val, $retorno);
                             }
                         }
                         if ($post->stAnalise == 3) {
                             if ($val->DtSolicitacao && round(data::CompararDatas($val->DtDistribuicao)) > $val->tempoFimDiligencia) {
                                 $retorno = $this->dadosResconsolidacaoparecerista($val, $retorno);
                             }
                         }
                         if ($post->stAnalise == 0) {
                             if (!($val->DtSolicitacao && round(data::CompararDatas($val->DtDistribuicao)) > $val->tempoFimDiligencia) and !($val->DtSolicitacao && $val->DtResposta == NULL)) {
                                 $retorno = $this->dadosResconsolidacaoparecerista($val, $retorno);
                             }
                         }
                     } else {
                         $retorno = $this->dadosResconsolidacaoparecerista($val, $retorno);
                     }
                 }
                 if (count($retorno) > 0) {
                     $cProduto = 0;
                     $contaProjetos = 0;
                     $cDistribuicao = 0;
                     foreach ($retorno['projetos'] as $projeto) {
                         $contaProjetos++;
                         $cProduto += count($projeto['produtos']);
                         foreach ($projeto['produtos'] as $produto) {
                             $cDistribuicao += count($produto['distribuicao']);
                         }
                     }
                     $retorno['qtAnalise'] = $cDistribuicao;
                 } else {
                     $zerado = true;
                 }
             } else {
                 $zerado = true;
             }
             if ($zerado) {
                 $agentesDAO = new Agentes();
                 $tela = 'resconsolidacaoparecerista2';
                 $where = $this->filtroGeral($tela);
                 $val = $agentesDAO->dadosParecerista($where);
                 $retorno = $this->dadosParecerista($val, $retorno);
                 $retorno['qtAnalise'] = 0;
             }
             break;
     }
     return $retorno;
 }