public function resultadoEditaisMincAction() { header("Content-Type: text/html; charset=ISO-8859-1"); $this->_helper->layout->disableLayout(); $post = Zend_Registry::get('post'); //recuperando filtros do POST $arrBusca = array(); if ($post->fundo != "") { $arrBusca["vr2.idVerificacao = ?"] = $post->fundo; } if ($post->classificacao != "") { $arrBusca["cl.idClassificaDocumento = ?"] = $post->classificacao; } if ($post->edital != "") { $arrBusca["e.idEdital = ?"] = $post->edital; } if ($post->unidade != "") { $arrBusca["o.Codigo = ?"] = $post->unidade; } if ($post->estado != "") { $arrBusca["x.ConformidadeOK = ?"] = $post->estado; } if ($post->avaliacao != "") { $arrBusca["mv.movimentacao = ?"] = $post->avaliacao; } if ($post->uf != "") { $arrBusca["uf.idUF = ?"] = $post->uf; } if ($post->uf == "" && $post->regiao != "") { $arrBusca["uf.Regiao = ?"] = $post->regiao; } //montando parametros de busca dos campos de data $arrBusca = GenericControllerNew::montaBuscaData($post, "tpDtCadastro", "dtCadastro", "p.dtAceite", "dtCadastro_Final", $arrBusca); $arrBusca = GenericControllerNew::montaBuscaData($post, "tpDtEnvio", "dtEnvio", "x1.DtEnvio", "dtEnvio_Final", $arrBusca); //instanciando modelo referente a tabela PreProjeto $tbl = new Proposta(); //pegando o total de registros na tabela, considerando os filtros passados $total = $tbl->propostasPorEdital($arrBusca, array(), null, null, true); //$total = $total["total"]; //$total = 1000; if ($post->tipo == 'xls' || $post->tipo == 'pdf') { //buscando os registros no banco de dados $tamanho = -1; $inicio = -1; $pag = 0; $totalPag = 0; $fim = 0; $ordem = array("25 ASC", "18 ASC", "15 ASC", "21 ASC", "24 ASC"); $rs = $tbl->propostasPorEdital($arrBusca, $ordem, $tamanho, $inicio); $arr = array(); foreach ($rs as $item) { $arr[$item->FundoNome][$item->dsClassificaDocumento][$item->Edital][] = $item; } $this->_forward('preparar-xls-pdf', null, null, array('dados' => $rs, 'view' => 'operacional/preparar-xls-pdf-resultado-editais-minc.phtml', 'tipo' => $post->tipo)); } else { //controlando a paginacao $this->intTamPag = 10; $pag = 1; if (isset($post->pag)) { $pag = $post->pag; } if (isset($post->tamPag)) { $this->intTamPag = $post->tamPag; } $inicio = $pag > 1 ? ($pag - 1) * $this->intTamPag : 0; $fim = $inicio + $this->intTamPag; $totalPag = (int) ($total % $this->intTamPag == 0 ? $total / $this->intTamPag : $total / $this->intTamPag + 1); $tamanho = $fim > $total ? $total - $inicio : $this->intTamPag; if ($fim > $total) { $fim = $total; } $ordem = array("25 ASC", "18 ASC", "15 ASC", "21 ASC", "24 ASC"); // if($inicio > 0){ // $ordem = array("dsClassificaDocumento ASC", "Edital ASC"); // } $rs = $tbl->propostasPorEdital($arrBusca, $ordem, $tamanho, $inicio); $arr = array(); foreach ($rs as $item) { $arr[$item->FundoNome][$item->dsClassificaDocumento][$item->Edital][] = $item; } //xd($arr); } $this->view->registros = $arr; $this->view->pag = $pag; $this->view->total = $total; $this->view->inicio = $inicio + 1; $this->view->fim = $fim; $this->view->totalPag = $totalPag; $this->view->parametrosBusca = $_POST; }