public function cancelamentoDoEncaminhamentoAction() { $get = Zend_Registry::get('get'); try { $tbEncaminhamentoPrestacaoContas = new tbEncaminhamentoPrestacaoContas(); $busca = $tbEncaminhamentoPrestacaoContas->buscar(array('idPronac = ?' => $get->idPronac, 'idEncPrestContas = ?' => $get->enc))->current(); $busca->delete(); $tblProjeto = new Projetos(); $tblProjeto->alterarSituacao($get->idPronac, '', 'E68', 'Prestação de Contas apresentada - Aguardando Análise'); parent::message('Projeto devolvido com sucesso!', "realizarprestacaodecontas/painel?tipoFiltro=emanalise", 'CONFIRM'); } catch (Exception $e) { parent::message('Erro ao devolver o projeto!', "realizarprestacaodecontas/painel?tipoFiltro=emanalise", 'ERROR'); return; } }
/** * Metodo para efetuar a retirada de pauta */ public function retirarDePautaAction() { // recebe os dados via post $post = Zend_Registry::get('post'); $idPronac = $post->idPronacPauta; $idRetirarDePauta = $post->idRetirarDePauta; $justificativa = $post->justificativaCoordenador; $tpAcao = $post->tpAcaoPauta; try { // altera o status da tabela tbRetirarDePauta $tbRetirarDePauta = new tbRetirarDePauta(); $dados = array('idAgenteAnalise' => $this->idAgente, 'dtAnalise' => new Zend_Db_Expr('GETDATE()'), 'dsJustificativaAnalise' => $justificativa, 'tpAcao' => $tpAcao, 'stAtivo' => 0); $where = array('idRetirarDePauta = ?' => $idRetirarDePauta); if ($tbRetirarDePauta->alterar($dados, $where)) { // início devolver pra vinculada if ($tpAcao == 3) { if ($this->bln_readequacao == "true") { throw new Exception("Este Projeto encontra-se em Análise de Readequação!"); } $arrBusca = array(); $arrBusca['p.IdPRONAC = ?'] = $idPronac; $arrBusca['t.stPrincipal = ?'] = 1; $arrBusca['t.stEstado = ?'] = 0; $tbDistParecer = new tbDistribuirParecer(); $rsProduto = $tbDistParecer->buscarProdutos($arrBusca); if (count($rsProduto) <= 0) { throw new Exception("Dados não encontrados."); } else { // usuario logado $auth = Zend_Auth::getInstance(); // instancia da autenticacao $idusuario = $auth->getIdentity()->usu_codigo; $idorgao = $rsProduto[0]->idOrgao; try { $arrBusca = array(); $arrBusca['p.IdPRONAC = ?'] = $idPronac; $arrBusca['t.stEstado = ?'] = 0; $tbDistParecer = new tbDistribuirParecer(); $rsProdutos = $tbDistParecer->buscarProdutos($arrBusca); //VOLTANDO TODOS OS PRODUTOS foreach ($rsProdutos as $produto) { $rsDistParecer = $tbDistParecer->find($produto->idDistribuirParecer)->current(); //ALTERA REGISTROS ANTERIORES PARA SE TORNAR HISTORICO $rsDistParecer->FecharAnalise = 0; //informacao inserida por solicitacao do gestor para prever esta acao na Trigger de update da tabela tbDistribuirParecer $rsDistParecer->stEstado = 1; $rsDistParecer->save(); //GRAVA NOVA DISTRIBUICAO $dados = array('idPRONAC' => $idPronac, 'idProduto' => $produto->idProduto, 'TipoAnalise' => $produto->TipoAnalise, 'idOrgao' => $produto->idOrgao, 'DtEnvio' => date("Y-m-d H:i:s"), 'DtDistribuicao' => null, 'DtDevolucao' => null, 'Observacao' => $justificativa, 'stEstado' => 0, 'stPrincipal' => $produto->stPrincipal, 'FecharAnalise' => 2, 'DtRetorno' => null, 'idUsuario' => $idusuario); // xd($dados); $tbDistParecer->inserir($dados); } //============================================================================================// //======= APAGA/ALTERA REGISTROS DESSA ANALISE REFERENTE AO COMPONENTE DA COMISSAO ============// //============================================================================================// //INATIVA DISTRIBUICAO FEITA PARA O COMPONENTE $tblDistProjComissao = new tbDistribuicaoProjetoComissao(); $rsDistProjComissao = $tblDistProjComissao->buscar(array('IdPRONAC =?' => $idPronac), array('dtDistribuicao DESC'))->current(); if (!empty($rsDistProjComissao)) { try { $where = "IdPRONAC = {$idPronac}"; $tblDistProjComissao->alterar(array('stDistribuicao' => 'I'), $where); } catch (Zend_Exception $ex) { parent::message("Erro ao inativar a distribuição do Projeto para o Componente - " . $ex->getMessage(), "projetosgerenciar/index", "ERROR"); } } //APAGA PLANILHA APROVACAO CRIADA $tblPlanilha = new PlanilhaAprovacao(); $arrBuscaPlanilha = array(); $arrBuscaPlanilha["IdPRONAC = ? "] = $idPronac; $arrBuscaPlanilha["tpPlanilha = ? "] = 'CO'; $arrBuscaPlanilha["stAtivo = ? "] = 'S'; $rsPlanilha = $tblPlanilha->buscar($arrBuscaPlanilha); $arrIdsPlanilha = array(); foreach ($rsPlanilha as $planilha) { $arrIdsPlanilha[] = $planilha->idPlanilhaAprovacao; } if (count($arrIdsPlanilha) > 0) { $where = null; $where = " idPRONAC = " . $idPronac . " and idPlanilhaAprovacao IN (" . implode(",", $arrIdsPlanilha) . ")"; try { $tblPlanilha->apagar($where); } catch (Zend_Exception $ex) { parent::message("Erro ao apagar a planilha do Componente - " . $ex->getMessage(), "projetosgerenciar/index", "ERROR"); } } //APAGA ANALISE DO COMPONENTE $tblAnalise = new AnaliseAprovacao(); $rsAnalise = $tblAnalise->buscar(array('IdPRONAC = ?' => $idPronac)); $arrIdsAnalises = array(); foreach ($rsAnalise as $analise) { $arrIdsAnalises[] = $analise->idAnaliseAprovacao; } if (count($arrIdsAnalises) > 0) { $where = null; $where = " IdPRONAC = " . $idPronac . " and idAnaliseAprovacao IN (" . implode(",", $arrIdsAnalises) . ")"; try { $tblAnalise->apagar($where); } catch (Zend_Exception $ex) { parent::message("Erro ao apagar a análise do Componente - " . $ex->getMessage(), "projetosgerenciar/index", "ERROR"); } } //APAGA PARECER DO COMPONENTE $tblParecer = new Parecer(); $rsParecer = $tblParecer->buscar(array('idPRONAC = ?' => $idPronac, 'idTipoAgente = ?' => 6))->current(); if (!empty($rsParecer)) { $idparecer = isset($rsParecer->IdParecer) ? $rsParecer->IdParecer : $rsParecer->idParecer; $where = null; $where = " idPRONAC = " . $idPronac . " and idParecer = " . $idparecer; try { $tblParecer->apagar($where); } catch (Zend_Exception $ex) { parent::message("Erro ao excluir o parecer do Componente - " . $ex->getMessage(), "projetosgerenciar/index", "ERROR"); } } //APAGA PARECER do PARECERISTA $rsParecer = array(); $tblParecer = new Parecer(); $rsParecer = $tblParecer->buscar(array('IdPRONAC =?' => $idPronac, 'idTipoAgente = ?' => 1))->current(); if (!empty($rsParecer)) { $idparecer = isset($rsParecer->IdParecer) ? $rsParecer->IdParecer : $rsParecer->idParecer; $where = null; $where = " idPRONAC = " . $idPronac . " and idParecer = " . $idparecer; try { $tblParecer->apagar($where); } catch (Zend_Exception $ex) { parent::message("Erro ao excluir o parecer do Parecerista - " . $ex->getMessage(), "projetosgerenciar/index", "ERROR"); } } try { //ALTERA SITUACAO DO PROJETO $tblProjeto = new Projetos(); $ProvidenciaTomada = 'Projeto devolvido para análise técnica por solicitação do Componente.'; $tblProjeto->alterarSituacao($idPronac, '', 'B11', $ProvidenciaTomada); } catch (Zend_Exception $ex) { parent::message("Erro ao alterar a situação do Projeto - " . $ex->getMessage(), "projetosgerenciar/index", "ERROR"); } parent::message("Devolvido com sucesso!", "projetosgerenciar/index/", "CONFIRM"); } catch (Zend_Exception $ex) { parent::message("Erro ao devolver projeto - " . $ex->getMessage(), "projetosgerenciar/index", "ERROR"); } } } // fecha if ($tpAcao == 3) // fim devolver pra vinculada parent::message("Solicitação enviada com sucesso!", "projetosgerenciar/index", "CONFIRM"); } else { throw new Exception("Erro ao enviar solicitação"); } } catch (Exception $e) { parent::message($e->getMessage(), "projetosgerenciar/index", "ERROR"); } }
/** * * @param Zend_Db_Table_Row $prorrogacaoRow * @param string $observacao * @param string $atendimento * @param int $logon * @param datetime $dataInicial * @param datetime $dataFinal */ private function salvarAprovando($prorrogacaoRow, $observacao, $atendimento, $logon, $dataInicial, $dataFinal) { try { $this->atualizaAnaliseProrrogacao($prorrogacaoRow, $observacao, $atendimento, $logon, $dataInicial, $dataFinal); $projetoTable = new Projetos(); $projetoTable->alterarSituacao($prorrogacaoRow->idPronac, null, SituacaoModel::AGUARDANDO_ELABORACAO_DE_PROTARIA_DE_PRORROGACAO); $aprovacaoModel = new AprovacaoModel(); $aprovacaoModel->setIdPronac($prorrogacaoRow->idPronac)->setIdProrrogacao($prorrogacaoRow->idProrrogacao)->setAnoProjeto($prorrogacaoRow->AnoProjeto)->setSequencial($prorrogacaoRow->Sequencial)->setTipo(AprovacaoModel::TIPO_PRORROGACAO)->setResumo('Parecer favorável para prorrogação')->setUsuarioLogado($logon); $aprovacaoModel->salvar(); } catch (Exception $exception) { throw new Exception('Erro ao tentar prorrogar o prazo de captação', null, $exeception); } }
public function avaliarcomissaoAction() { $tblProjeto = new Projetos(); $buscaRegiao = AvaliarProjetosComissaoDAO::buscaRegiao(); $this->view->buscaRegiao = $buscaRegiao; $buscaUF = AvaliarProjetosComissaoDAO::buscaUF(); $this->view->buscaUF = $buscaUF; $buscaEdital = AvaliarProjetosComissaoDAO::buscaEdital(); $this->view->buscaEdital = $buscaEdital; //PARA APROVAR O PROJETO if (!empty($_POST['pronacs'])) { $pronac = $_POST['pronacs']; $idPreProjeto = $_POST['pre']; $nota = str_replace(',', '.', $_POST['nrNota']); $situacao = 'G52'; $tblProjeto->alterarSituacao(null, $pronac, $situacao); $aprovacao = AvaliarProjetosComissaoDAO::buscarAprovacao($idPreProjeto); if ($aprovacao) { AvaliarProjetosComissaoDAO::aprovarProjeto($idPreProjeto, $nota, null, 1, 1); } else { AvaliarProjetosComissaoDAO::aprovarProjeto($idPreProjeto, $nota, null, 1); } parent::message("Projeto aprovado com sucesso!", "Avaliarprojetoscomissao/avaliarcomissao", "CONFIRM"); } //PARA REPROVAR O PROJETO if (!empty($_POST['just']) && isset($_POST['pro'])) { $pronac = $_POST['pro']; $nota = str_replace(',', '.', $_POST['nota']); $idPreProjeto = $_POST['idPreProj']; $justificativa = $_POST['justificativa']; $situacao = 'G52'; AvaliarProjetosComissaoDAO::alterarNota($nota, $idPreProjeto); $tblProjeto->alterarSituacao(null, $pronac, $situacao); $aprovacao = AvaliarProjetosComissaoDAO::buscarAprovacao($idPreProjeto); if ($aprovacao) { AvaliarProjetosComissaoDAO::aprovarProjeto($idPreProjeto, $nota, $justificativa, 0, 1); } else { AvaliarProjetosComissaoDAO::aprovarProjeto($idPreProjeto, $nota, $justificativa, 0); } parent::message("Projeto reprovado com sucesso!", "Avaliarprojetoscomissao/avaliarcomissao", "CONFIRM"); } //PARA ALTERAR A NOTA DO PROJETO if (isset($_POST['pro']) and empty($_POST['just'])) { $nota = str_replace(',', '.', $_POST['nota']); $idPreProjeto = $_POST['idPreProj']; $justificativa = $_POST['justificativa']; // $idAgente = $this->idAgente; AvaliarProjetosComissaoDAO::alterarNota($nota, $idPreProjeto); $aprovacao = AvaliarProjetosComissaoDAO::buscarAprovacao($idPreProjeto); if ($aprovacao) { AvaliarProjetosComissaoDAO::aprovarProjeto($idPreProjeto, $nota, $justificativa, null, 1); } parent::message("Alteração realizada com sucesso!", "Avaliarprojetoscomissao/avaliarcomissao", "CONFIRM"); } }
public function enviaravaliacaoAction() { $idPreProjeto = !empty($_GET['idPreProjeto']) ? $_GET['idPreProjeto'] : 0; $idusuario = $this->idusuario; $dados = array('stAvaliacao' => 1); $where = array('idPreprojeto = ?' => $idPreProjeto, 'idAvaliador = ?' => $idusuario); $tblAvaliacao = new tbAvaliacaoPreProjeto(); try { $tblAvaliacao->alterar($dados, $where); } catch (Exception $e) { parent::message("Falha ao enviar avalização", "avaliarprojetos/index", "ERROR"); } $tbDistribuicao = new tbDistribuicao(); $tblProjetos = new Projetos(); $where = array('idItemDistribuicao = ?' => $idPreProjeto, 'stAvaliacao = ?' => '1'); $enviados = $tbDistribuicao->QTDAvaliadorXenvio($where); if (count($enviados) > 0) { if (count($enviados) >= $enviados[0]->qtAvaliador) { try { $dadosprojeto = $tblProjetos->listaProjetosDistribuidos(array('idPreProjeto = ?' => $idPreProjeto))->current(); $tblProjetos->alterarSituacao($dadosprojeto->idPronac, $dadosprojeto->AnoProjeto . $dadosprojeto->Sequencial, $this->COD_SITUACAO_PROJETO_COMISSAO, "Projeto encaminhado para comiss?o"); } catch (Exception $e) { $dados = array('stAvaliacao' => 0); $where = array('idPreprojeto = ?' => $idPreProjeto, 'idAvaliador = ?' => $idusuario); $tblAvaliacao->alterar($dados, $where); parent::message("Falha ao enviar avalização", "avaliarprojetos/index", "ERROR"); } } } // $COD_SITUACAO_PROJETO_COMISSAO parent::message("Avaliação enviada com sucesso!", "avaliarprojetos/index", "CONFIRM"); }
function gravarEncaminhamentoPortariaAction() { $idpronac = $this->_request->getParam("idpronac"); $post = Zend_Registry::get('post'); $idAprovacao = $post->idAprovacao; if (!empty($idpronac)) { try { if ($this->codGrupo == 103 || $this->codGrupo == 127) { //103=Coord. de Analise 103=Coord. Geral de Analise $situacao = "D27"; } elseif ($this->codGrupo == 122 || $this->codGrupo == 123) { //121=Cood. de Acompanhamento 123=Cood. Geral de Acompanhamento $situacao = "D28"; } $providencia = ''; $tblSituacao = new Situacao(); $rsSituacao = $tblSituacao->buscar(array('Codigo=?' => $situacao))->current(); if (!empty($rsSituacao)) { $providencia = $rsSituacao->Descricao; } // altera a situação do projeto $tblProjeto = new Projetos(); $rsProjeto = $tblProjeto->buscar(array('IdPRONAC=?' => $idpronac))->current(); $nrPronac = $rsProjeto->AnoProjeto . $rsProjeto->Sequencial; $tblProjeto->alterarSituacao($idpronac, '', $situacao, $providencia); //STATUS AVALIACAO $tblVerificaProjeto = new tbVerificaProjeto(); $rsVP = $tblVerificaProjeto->buscar(array('idPronac=?' => $idpronac))->current(); $dadosVP = array(); if (empty($rsVP)) { $dadosVP['idPronac'] = $idpronac; $dadosVP['idOrgao'] = $this->codOrgao; $dadosVP['idAprovacao'] = $idAprovacao; $dadosVP['idUsuario'] = $this->getIdUsuario; $dadosVP['stAnaliseProjeto'] = 4; $dadosVP['dtFinalizado'] = date('Y-m-d H:i:s'); $dadosVP['dtPortaria'] = date('Y-m-d H:i:s'); $dadosVP['stAtivo'] = 1; $tblVerificaProjeto->inserir($dadosVP); } else { $rsVP->stAnaliseProjeto = '4'; $rsVP->dtPortaria = date('Y-m-d H:i:s'); $rsVP->save(); } parent::message("Projeto encaminhando com sucesso!", "checklistpublicacao/listas?tipoFiltro=finalizados", "CONFIRM"); } catch (Exception $e) { parent::message("O Projeto {$nrPronac} não pode ser encaminhado para Portaria, pois o proponente está irregular.", "checklistpublicacao/listas?tipoFiltro=finalizados", "ERROR"); } } parent::message("O Projeto {$nrPronac} não pode ser encaminhado para Portaria, pois o proponente está irregular.", "checklistpublicacao/listas?tipoFiltro=finalizados", "ERROR"); }
private function validasituacao($dadosProjeto) { $post = Zend_Registry::get('post'); $tbl = new Captacao(); $capitacao = $tbl->listaCaptacao($dadosProjeto->AnoProjeto, $dadosProjeto->Sequencial); $erro = ""; $valor = 0; $situacao = 0; foreach ($capitacao as $capitacao) { $valor = $valor + $capitacao->CaptacaoReal; } $tbl2 = new Situacao(); $situacao = $tbl2->listasituacao(array($post->Situacao)); $situacao = $situacao[0]->StatusProjeto; if ($post->Situacao == 'E04' and $valor == 0) { $erro = "Projeto sem captação de recursos não pode ser arquivado nesta situação. A situação do projeto não foi alterada"; } elseif ($post->Situacao == 'E10' and $valor > 0) { $erro = "Situação incorreta. Para o projeto com captação a correta é E12. A situação do projeto não foi alterada"; } elseif ($post->Situacao == 'E11' and $valor > 0) { $erro = "Situação incorreta. Para o projeto com captação a correta é E15. A situação do projeto não foi alterada"; } elseif ($post->Situacao == 'E12' and $valor == 0) { $erro = "Situação incorreta. Para o projeto sem captação a correta é E10. A situação do projeto não foi alterada"; } elseif ($post->Situacao == 'E15' and $valor == 0) { $erro = "Situação incorreta. Para o projeto sem captação a correta é E11. A situação do projeto não foi alterada"; } elseif ($post->Situacao == 'E16' and $valor > 0) { $erro = "Situação incorreta. Para o projeto com captação a correta é E23. A situação do projeto não foi alterada"; } elseif ($post->Situacao == 'E23' and $valor == 0) { $erro = "Situação incorreta. Para o projeto sem captação a correta é E16. A situação do projeto não foi alterada"; } elseif ($post->Situacao == 'K00' and $valor > 0) { $erro = "Projeto com captação de recursos não pode ser arquivado. A situação do projeto não foi alterada"; } elseif ($situacao == 0) { $erro = "Situação desabilitada. A situação do projeto não foi alterada"; } if (strlen($erro) > 1) { parent::message($erro, "alterarprojeto/" . $post->pagina . "?pronac=" . Seguranca::encrypt($dadosProjeto->pronac), "ERROR"); } else { $tbl3 = new Projetos(); $tbl3->alterarSituacao(null, $dadosProjeto->AnoProjeto . $dadosProjeto->Sequencial, $post->Situacao); //Salvar Historico na tabela Situaç?o*/ return true; } }
public function reavaliarprojetoAction() { $this->_helper->layout->disableLayout(); $atualizados = 0; $error = 0; $novosvinculos = 0; $PreProjetos = array(); $acao = !empty($_GET['acao']) ? $_GET['acao'] : null; if ($_POST or $_GET) { $PreProjetos = isset($_REQUEST['idPreProjeto']) ? $_REQUEST['idPreProjeto'] : array(); if (empty($_POST['Avaliador']) or $_POST['Avaliador'] == 0) { // parent::message("Informe um avaliador!", "/distribuirprojetos/redistribuir", "ALERT"); $this->view->alerta = "Informe um avaliador"; } if ((empty($_POST['Avaliador']) or $_POST['Avaliador'] == 0) and $acao == 'add') { $this->view->alerta = "Não foi possivel recuperar o antigo avaliador"; } } if (count($PreProjetos) < 1) { // parent::message("Nenhum projeto selecionado!", "/distribuirprojetos/redistribuir", "ALERT"); $this->view->alerta = "Nenhum projeto selecionado"; } $tbltbdistribuir = new tbDistribuicao(); $tblProjetos = new Projetos(); if (!empty($_POST['Avaliador']) and $_POST['Avaliador'] != 0 and count($PreProjetos) > 0) { foreach ($PreProjetos as $key => $value) { $dadosprojeto = $tblProjetos->listaProjetosDistribuidos(array('idPreProjeto = ?' => $value))->current(); if (strlen($error) < 2) { if (!$tblProjetos->alterarSituacao($dadosprojeto->idPronac, null, $this->COD_SITUACAO_PROJETO_ATUALIZA, 'Redistribuindo o projeto para avaliação')) { $error = "Não foi possivel mudar a situação do projeto"; } $tbAvaliacao = new tbAvaliacaoPreProjeto(); $Avaliacao = $tbAvaliacao->buscar(array('idPreProjeto = ?' => $value, 'idAvaliador = ?' => $_POST['Avaliador'])); if (count($Avaliacao) > 0 and strlen($error) < 2) { if (!$tbAvaliacao->alterar(array('stAvaliacao' => 'false'), array('idPreProjeto = ?' => $value, 'idAvaliador = ?' => $_POST['Avaliador']))) { $error = "Não foi possivel distribuir a avaliação"; } } if (strlen($error) < 2) { $dados = array('idDestinatario' => $_POST['Avaliador']); $where = array('idDestinatario = ?' => $_POST['Avaliador'], 'idItemDistribuicao = ?' => $value); if ($tbltbdistribuir->alterar($dados, $where)) { $novosvinculos++; } else { $error = "Não foi possivel distribuir a avaliação"; } } } } } $listaprojetos = $this->listaprojetos($PreProjetos); if (strlen($error)) { $this->view->alerta = $error; } if ($listaprojetos) { $this->view->listaprojetos = $listaprojetos; } else { $this->view->listaprojetos = array(); // parent::message("Nenhum projeto selecionado!", "/distribuirprojetos/redistribuir", "ALERT"); $this->view->alerta = "Nenhum projeto selecionado"; } if ($novosvinculos > 0) { // parent::message("Projeto(s) enviado(s) com sucesso!", "/distribuirprojetos/redistribuir", "CONFIRM"); $this->view->confirme = "Projeto(s) enviado(s) com sucesso!"; } elseif (strlen($this->view->alerta) < 2 and $acao == 'add') { $this->view->alerta = "Avaliador já vinculado ou quantidade máxima de avaliadores atingida"; } }