public function confirmarEnvioPropostaAoMincAction() { /* =============================================================================== */ /* ==== VERIFICA PERMISSAO DE ACESSO DO PROPONENTE A PROPOSTA OU AO PROJETO ====== */ /* =============================================================================== */ $this->verificarPermissaoAcesso(true, false, false); //recupera parametros $get = Zend_Registry::get('get'); $idPreProjeto = $get->idPreProjeto; $valida = $get->valida; $idTecnico = null; $rsTecnicos = array(); if (isset($_REQUEST['edital'])) { $edital = "&edital=s"; } else { $edital = ""; } if (!empty($idPreProjeto) && $valida == "s") { $tblPreProjeto = new PreProjeto(); $tblAvaliacao = new AnalisarPropostaDAO(); //recupera dados do projeto $rsPreProjeto = $tblPreProjeto->find($idPreProjeto)->current(); if ($rsPreProjeto->AreaAbrangencia == 0) { $idOrgaoSuperior = 262; } else { $idOrgaoSuperior = 171; } //verifica se a proposta ja foi recebida por um tecnico $avaliacao = $tblAvaliacao->verificarAvaliacao($idPreProjeto); //SE A PROPOSTA JA FOI AVALIADA POR UM TECNICO E O MESMO ESTIVER ATIVO, ATRIBUI A AVALIACAO A ELE if (count($avaliacao) > 0) { if ($avaliacao[0]->ConformidadeOK == 0 || $avaliacao[0]->ConformidadeOK == 1) { //verifica se o tecnico esta habilitado $arrBusca = array(); $arrBusca['sis_codigo = '] = 21; $arrBusca['gru_codigo = '] = 92; $arrBusca['usu_codigo = '] = $avaliacao[0]->idTecnico; $analista = AdmissibilidadeDAO::buscarAnalistas($arrBusca); if (count($analista) > 0) { if ($analista[0]->uog_status == 1) { $idTecnico = $avaliacao[0]->idTecnico; } else { $idTecnico = null; //recupera todos os tecnicos do orgao para fazer o balanceamento $rsTecnicos = $tblPreProjeto->recuperarTecnicosOrgao($idOrgaoSuperior); } } else { $idTecnico = null; //recupera todos os tecnicos do orgao para fazer o balanceamento $rsTecnicos = $tblPreProjeto->recuperarTecnicosOrgao($idOrgaoSuperior); } } } else { //recupera todos os tecnicos do orgao para fazer o balanceamento $rsTecnicos = $tblPreProjeto->recuperarTecnicosOrgao($idOrgaoSuperior); } //SE A PROPOSTA NUNCA FOI AVALIADA OU SE O TECNICO Q A AVALIOU ESTA DESABILITADO FAZ O BALANCEAMENTO if (count($rsTecnicos) > 0 && $idTecnico == null) { $arrTecnicosPropostas = array(); foreach ($rsTecnicos as $tecnico) { $rsAvaliacaoPorTecnico = $tblAvaliacao->recuperarQtdePropostaTecnicoOrgao($tecnico->uog_orgao, $tecnico->usu_codigo); $arrTecnicosPropostas[$tecnico->usu_codigo] = $rsAvaliacaoPorTecnico[0]->qtdePropostas; } asort($arrTecnicosPropostas); //PEGA O ID DO TECNICO Q TEM MENOS PROPOSTAS $ct = 1; foreach ($arrTecnicosPropostas as $chave => $valor) { if ($ct == 1) { $idTecnico = $chave; $ct++; } else { break; } } } //INICIA PERSISTENCIA DOS DADOS if ($idTecnico) { // $db = Zend_Db_Table::getDefaultAdapter(); // $db->beginTransaction(); try { //======== PERSXISTE DADOS DA MOVIMENTACAO ==========/ //atualiza status da ultima movimentacao $tblAvaliacao->updateEstadoMovimentacao($idPreProjeto); //PERSISTE DADOS DA MOVIMENTACAO $tblMovimentacao = new Movimentacao(); $dados = array("idProjeto" => $idPreProjeto, "Movimentacao" => "96", "DtMovimentacao" => date("Y/m/d H:i:s"), "stEstado" => "0", "Usuario" => $this->idResponsavel); $tblMovimentacao->salvar($dados); //======== PERSXISTE DADOS DA AVALIACAO ==========/ //atualiza status da ultima avaliacao //$tblAvaliacao->updateEstadoAvaliacao($idPreProjeto); //COMENTANDO CODIGO PARA DEIXAR SP (SAC..tbMovimentacao.trMovimentacao_Insert) TRABALHAR $dados = array(); $dados['idPreProjeto'] = $idPreProjeto; $dados['idTecnico'] = $idTecnico; //$this->idResponsavel; $dados['dtEnvio'] = "'" . date("Y/m/d H:i:s") . "'"; $dados['dtAvaliacao'] = "'" . date("Y/m/d H:i:s") . "'"; $dados['avaliacao'] = ""; $dados['conformidade'] = 9; $dados['estado'] = 0; //PERSISTE DADOS DA AVALIACAO PROPOSTA //$tblAvaliacao->inserirAvaliacao($dados); //COMENTANDO CODIGO PARA DEIXAR SP (SAC..tbMovimentacao.trMovimentacao_Insert) TRABALHAR // $db->commit(); parent::message("A Proposta foi enviado com sucesso ao Ministério da Cultura!", "/manterpropostaincentivofiscal/enviar-proposta-ao-minc?idPreProjeto=" . $idPreProjeto . $edital, "CONFIRM"); die; } catch (Exception $e) { // $db->rollback(); // xd($e->getMessage()); parent::message("A Proposta não foi enviado ao Ministério da Cultura.", "/manterpropostaincentivofiscal/enviar-proposta-ao-minc?idPreProjeto=" . $idPreProjeto . $edital, "ERROR"); die; } } else { //fecha IF se encontrou tecnicos para enviar a proposta parent::message("A Proposta não foi enviado ao Ministério da Cultura.", "/manterpropostaincentivofiscal/enviar-proposta-ao-minc?idPreProjeto=" . $idPreProjeto . $edital, "ERROR"); die; } } else { //xd($e->getMessage()); parent::message("A Proposta não foi enviado ao Ministério da Cultura.", "/manterpropostaincentivofiscal/enviar-proposta-ao-minc?idPreProjeto=" . $idPreProjeto . $edital, "ERROR"); } }
public function inserirdadospropostaeditalAction() { $array = array('mensagem' => ''); if ($_REQUEST['idAgente'] && $_REQUEST['idEdital'] && $_REQUEST['nomeProjeto'] && $_REQUEST['resumoProjeto']) { try { if (strlen(trim($_REQUEST['resumoProjeto'])) > 1000) { $array['mensagem'] = 'Quantidade de caracteres maior que o permitido. Limite: 1000 caracteres.'; $array['tpmensagem'] = 'msgERROR'; $this->_redirect('/manterpropostaedital/dadospropostaedital?idPreProjeto=' . $_REQUEST['idPreProjeto'] . '&idAgente=' . $_REQUEST['idAgente'] . '&idEdital=' . $_REQUEST['idEdital'] . '&mensagem=' . $array['mensagem'] . '&tpmensagem=' . $array['tpmensagem']); } $array = array(); $array['Mecanismo'] = 2; // Adicionado, Edital deve ser Mecanismo 2 $array['idAgente'] = $_REQUEST['idAgente']; $array['idEdital'] = $_REQUEST['idEdital']; $array['AgenciaBancaria'] = $_REQUEST['agencia']; $datainicio = explode('/', $_REQUEST['dtIniExec']); $array['DtInicioDeExecucao'] = $datainicio['2'] . '-' . $datainicio['1'] . '-' . $datainicio['0']; $datafim = explode('/', $_REQUEST['dtFimExec']); $array['DtFinalDeExecucao'] = $datafim['2'] . '-' . $datafim['1'] . '-' . $datafim['0']; $array['NomeProjeto'] = TratarString::escapeString($_REQUEST['nomeProjeto']); $array['stTipoDemanda'] = 'ED'; $array['ResumoDoProjeto'] = trim(TratarString::escapeString($_REQUEST['resumoProjeto'])); // Salvar o responsável $array['idUsuario'] = $this->idResponsavel; if (isset($_REQUEST['idPreProjeto'])) { $array['idPreProjeto'] = $_REQUEST['idPreProjeto']; $dados = ManterpropostaeditalDAO::alterarDadosProposta($array); $array['mensagem'] = 'Alteração realizada com sucesso!'; $array['tpmensagem'] = 'msgCONFIRM'; $array['mensagem'] = htmlspecialchars($array['mensagem']); parent::message("Alteração realizada com sucesso!", "/manterpropostaedital/dadospropostaedital?idPreProjeto=" . $array['idPreProjeto'], "CONFIRM"); } else { $dados = ManterpropostaeditalDAO::inserirProposta($array); $array['idPreProjeto'] = $dados; $tblMovimentacao = new Movimentacao(); $dados = array("idProjeto" => $array['idPreProjeto'], "Movimentacao" => "95", "DtMovimentacao" => date("Y/m/d H:i:s"), "stEstado" => "0", "Usuario" => $this->idUsuario); //$this->view->usuario->usu_codigo; $tblMovimentacao->salvar($dados); /*******************************************************************************************/ // Salvando os dados na TbVinculoProposta $tbVinculoDAO = new TbVinculo(); $tbVinculoPropostaDAO = new tbVinculoPropostaResponsavelProjeto(); $whereVinculo['idUsuarioResponsavel = ?'] = $this->idResponsavel; $whereVinculo['idAgenteProponente = ?'] = $_REQUEST['idAgente']; $vinculo = $tbVinculoDAO->buscar($whereVinculo); if (count($vinculo) == 0) { $dadosV = array('idAgenteProponente' => $_REQUEST['idAgente'], 'dtVinculo' => new Zend_Db_Expr("GETDATE()"), 'siVinculo' => 2, 'idUsuarioResponsavel' => $this->idResponsavel); $insere = $tbVinculoDAO->inserir($dadosV); } $vinculo2 = $tbVinculoDAO->buscar($whereVinculo); if (count($vinculo2) > 0) { $novosDadosV = array('idVinculo' => $idVinculo = $vinculo2[0]->idVinculo, 'idPreProjeto' => $array['idPreProjeto'], 'siVinculoProposta' => 2); $insere = $tbVinculoPropostaDAO->inserir($novosDadosV, false); } /*******************************************************************************************/ $array['mensagem'] = 'Cadastro realizado com sucesso!'; $array['tpmensagem'] = 'msgCONFIRM'; } } catch (Zend_Exception $ex) { parent::message("Não foi possível realizar a operação!", "/manterpropostaincentivofiscal/listar-propostas", "ERROR"); } } else { $array['mensagem'] = 'Dados incorretos.'; $array['tpmensagem'] = 'Erro!'; } $this->_redirect('/manterpropostaedital/dadospropostaedital?idPreProjeto=' . $array['idPreProjeto'] . '&mensagem=' . $array['mensagem'] . '&tpmensagem=' . $array['tpmensagem']); }