/** * Metodo responsavel por gravar a proposta em banco (INSERT e UPDATE) * @param void * @return objeto */ public function salvarAction() { /* =============================================================================== */ /* ==== VERIFICA PERMISSAO DE ACESSO DO PROPONENTE A PROPOSTA OU AO PROJETO ====== */ /* =============================================================================== */ // $this->verificarPermissaoAcesso(false, false, false); $post = Zend_Registry::get("post"); $idPreProjeto = $post->idPreProjeto; $acao = $post->acao; if ($acao == 'atualizacao_automatica') { $this->_helper->layout->disableLayout(); // desabilita o Zend_Layout $this->_helper->viewRenderer->setNoRender(true); } $dtInicio = null; $dtInicioTemp = explode("/", $post->dtInicioDeExecucao); $dtInicio = $dtInicioTemp[2] . "/" . $dtInicioTemp[1] . "/" . $dtInicioTemp[0] . date(" H:i:s"); $dtFim = null; $dtFimTemp = explode("/", $post->dtFinalDeExecucao); $dtFim = $dtFimTemp[2] . "/" . $dtFimTemp[1] . "/" . $dtFimTemp[0] . date(" H:i:s"); // /* VALIDAÇÃO SUMULA 10 DATA EXECUÇÃO <> DE DATA ATUAL E > 30/09 DO ENVIO DA PROPOSTA */ // if ($post->stPlanoAnual <> 0) { // $ano_vigente = date("Y"); // $ano_execucao = explode('/', $post->dtInicioDeExecucao); // $ano_execucao = $ano_execucao[2]; // $data_validacao = (int) date("Y").'0129'; // $data_vigente = (int) date("Ymd"); // xd($ano_vigente .'-'. $ano_execucao); // if ($ano_execucao <= $ano_vigente) { // parent::message('O perodo de execuo de projetos de plano anual dever ser posterior ao ano vigente', '/manterpropostaincentivofiscal/buscaproponente', 'ALERT'); // } // } $dtAtoTombamento = null; if ($post->dtAtoTombamento) { $dtAtoTombamentoTemp = explode("/", $post->dtAtoTombamento); $dtAtoTombamento = $dtAtoTombamentoTemp[2] . "/" . $dtAtoTombamentoTemp[1] . "/" . $dtAtoTombamentoTemp[0] . date(" H:i:s"); } $idAgente = $post->idAgente; $nomeProjeto = str_replace("'", "", $post->nomeProjeto); $nomeProjeto = str_replace("\"", "", $nomeProjeto); //***NAO TIRAR ESSA QUEBRA DE LINHA - FAZ PARTE DA PROGRAMACAO**** $resumoDoProjeto = str_replace(' ', ' ', str_replace(' ', '', str_replace(' ', '', strip_tags(trim($_POST['resumoDoProjeto']))))); //***NAO TIRAR ESSA QUEBRA DE LINHA - FAZ PARTE DA PROGRAMACAO**** $stDataFixa = $post->stDataFixa; $stPlanoAnual = $post->stPlanoAnual; $agenciaBancaria = $post->agenciaBancaria; $propostaAudioVisual = $post->propostaAudioVisual; $dtInicioDeExecucao = $dtInicio; $dtFinalDeExecucao = $dtFim; $nrAtoTombamento = $post->nrAtoTombamento; $dtAtoTombamento = $dtAtoTombamento; $esferaTombamento = $post->esferaTombamento; $objetivos = $_POST['objetivos']; $justificativa = $_POST['justificativa']; $acessibilidade = $_POST['acessibilidade']; $democratizacaoDeAcesso = $_POST['democratizacaoDeAcesso']; $etapaDeTrabalho = $_POST['etapaDeTrabalho']; $fichaTecnica = $_POST['fichaTecnica']; $sinopse = $_POST['sinopse']; $impactoAmbiental = $_POST['impactoAmbiental']; $especificacaoTecnica = $_POST['especificacaoTecnica']; $informacoes = $_POST['informacoes']; $dados = array("idAgente" => $idAgente, "NomeProjeto" => $nomeProjeto, "Mecanismo" => 1, "AgenciaBancaria" => $agenciaBancaria, "AreaAbrangencia" => $propostaAudioVisual, "DtInicioDeExecucao" => $dtInicioDeExecucao, "DtFinalDeExecucao" => $dtFinalDeExecucao, "NrAtoTombamento" => $nrAtoTombamento, "DtAtoTombamento" => $dtAtoTombamento, "EsferaTombamento" => $esferaTombamento, "ResumoDoProjeto" => $resumoDoProjeto, "Objetivos" => $objetivos, "Justificativa" => $justificativa, "Acessibilidade" => $acessibilidade, "DemocratizacaoDeAcesso" => $democratizacaoDeAcesso, "EtapaDeTrabalho" => $etapaDeTrabalho, "FichaTecnica" => $fichaTecnica, "Sinopse" => $sinopse, "ImpactoAmbiental" => $impactoAmbiental, "EspecificacaoTecnica" => $especificacaoTecnica, "EstrategiadeExecucao" => $informacoes, "dtAceite" => date("Y/m/d H:i:s"), "stEstado" => 1, "stDataFixa" => $stDataFixa, "stPlanoAnual" => $stPlanoAnual, "idUsuario" => $this->idResponsavel, "stTipoDemanda" => "NA"); $dados['idPreProjeto'] = $idPreProjeto; if (!empty($idPreProjeto)) { $mesagem = "Alteração realizada com sucesso!"; } else { $mesagem = "Cadastro realizado com sucesso!"; } //CONECTA COM BANCO SAC $db = new Conexao(Zend_Registry::get('DIR_CONFIG'), "conexao_sac"); //instancia classe modelo $tblPreProjeto = new PreProjeto(); $db = Zend_Db_Table::getDefaultAdapter(); //$db->beginTransaction(); try { //persiste os dados do Pre Projeto $idPreProjeto = $tblPreProjeto->salvar($dados); $this->view->idPreProjeto = $idPreProjeto; if ($acao == "incluir") { //persiste os dados de Movimentacao // $tblMovimentacao = new Movimentacao(); //CODIGO COMENTADO PARA DEIXAR A TRIGGER TRABALHAR EM PRODUCAO // $dados = array("idProjeto" => $idPreProjeto, // "Movimentacao" => "95", //Status = Proposta com Proponente // "DtMovimentacao" => date("Y/m/d H:i:s"), // "stEstado" => "0", // "Usuario" => $this->idResponsavel // ); // $tblMovimentacao->salvar($dados); /* **************************************************************************************** */ // Salvando os dados na TbVinculoProposta $tbVinculoDAO = new TbVinculo(); $tbVinculoPropostaDAO = new tbVinculoPropostaResponsavelProjeto(); $whereVinculo['idUsuarioResponsavel = ?'] = $this->idResponsavel; $whereVinculo['idAgenteProponente = ?'] = $idAgente; $vinculo = $tbVinculoDAO->buscar($whereVinculo); if (count($vinculo) == 0) { $dadosV = array('idAgenteProponente' => $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' => $idPreProjeto, 'siVinculoProposta' => 2); $insere = $tbVinculoPropostaDAO->inserir($novosDadosV, false); } /* **************************************************************************************** */ } //$db->commit(); if ($acao != 'atualizacao_automatica') { parent::message($mesagem, "/manterpropostaincentivofiscal/editar?idPreProjeto=" . $idPreProjeto, "CONFIRM"); } return; } catch (Zend_Exception $ex) { //$db->rollback(); parent::message("Não foi possível realizar a operação!" . $ex->getMessage(), "/manterpropostaincentivofiscal/index?idPreProjeto=" . $idPreProjeto, "ERROR"); } }
public function vinculoresponsavelAction() { $tbVinculo = new TbVinculo(); $agentes = new Agentes(); $idResponsavel = $this->_request->getParam("idResponsavel"); $idProponente = $this->idAgente; $where['idUsuarioResponsavel = ?'] = $idResponsavel; $where['idAgenteProponente = ?'] = $idProponente; $vinculo = $tbVinculo->buscar($where); $dados = array('idAgenteProponente' => $idProponente, 'dtVinculo' => new Zend_Db_Expr("GETDATE()"), 'siVinculo' => 2, 'idUsuarioResponsavel' => $idResponsavel); try { if (count($vinculo) > 0) { $dadosUP['siVinculo'] = 2; $whereUP['idVinculo = ?'] = $vinculo[0]->idVinculo; $update = $tbVinculo->alterar($dadosUP, $whereUP); } else { $insere = $tbVinculo->inserir($dados); } parent::message("vinculado com sucesso!", "manterpropostaincentivofiscal/novoresponsavel", "CONFIRM"); } catch (Exception $e) { parent::message("Erro ao vincular! " . $e->getMessage(), "manterpropostaincentivofiscal/novoresponsavel", "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']); }
public function uploadAction() { //======================= INSTANCIA AS DAO =========================== $tbArquivoDAO = new tbArquivo(); $tbArquivoImagemDAO = new tbArquivoImagem(); $tbDocumentoDAO = new tbDocumento(); $ProcuracaoDAO = new Procuracao(); $tbVinculoPropostaDAO = new tbVinculoPropostaResponsavelProjeto(); $tbVinculoDAO = new TbVinculo(); $Sgcacesso = new Sgcacesso(); $Agentes = new Agentes(); $Nomes = new Nomes(); $Visao = new Visao(); $Internet = new Internet(); //================== VARIÁVEIS PASSADAS VIA POST ===================== $responsavel = $this->_request->getParam("responsavel"); $proponente = $this->_request->getParam("proponente"); $dsObservacao = $this->_request->getParam("dsObservacao"); $arrayProjetos = $this->_request->getParam("projetos"); // ==================== Dados do arquivo de upload =============================== $arquivoNome = $_FILES['divulgacao']['name']; // nome $arquivoTemp = $_FILES['divulgacao']['tmp_name']; // nome tempor�rio $arquivoTipo = $_FILES['divulgacao']['type']; // tipo $arquivoTamanho = $_FILES['divulgacao']['size']; // tamanho $arquivoExtensao = Upload::getExtensao($arquivoNome); // extens�o $arquivoBinario = Upload::setBinario($arquivoTemp); // bin�rio $arquivoHash = Upload::setHash($arquivoTemp); // hash //================= VALIDA O RESPONSAVEL E PROPONENTE ================ if ($responsavel == 0) { $responsavel = $this->idResponsavel; } if ($proponente == 0) { $proponente = $this->idAgente; } //========= BUSCA O IDVINCULO COM AS INFORMAÇÕES PASSADAS ============= $whereVinculo['idUsuarioResponsavel = ?'] = $responsavel; $whereVinculo['idAgenteProponente = ?'] = $proponente; $buscarVinculo = $tbVinculoDAO->buscar($whereVinculo); try { // ==================== Insere na Tabela tbArquivo =============================== $dadosArquivo = array('nmArquivo' => $arquivoNome, 'sgExtensao' => $arquivoExtensao, 'dsTipoPadronizado' => $arquivoTipo, 'nrTamanho' => $arquivoTamanho, 'dtEnvio' => new Zend_Db_Expr('GETDATE()'), 'dsHash' => $arquivoHash, 'stAtivo' => 'A'); $idArquivo = $tbArquivoDAO->inserir($dadosArquivo); // ==================== Insere na Tabela tbArquivoImagem =============================== $dadosBinario = array('idArquivo' => $idArquivo, 'biArquivo' => new Zend_Db_Expr("CONVERT(varbinary(MAX), {$arquivoBinario})")); $idArquivo = $tbArquivoImagemDAO->inserir($dadosBinario); // ==================== Insere na Tabela tbDocumento =============================== $dados = array('idTipoDocumento' => 17, 'idArquivo' => $idArquivo, 'dsDocumento' => $_POST['dsObservacao'], 'dtEmissaoDocumento' => NULL, 'dtValidadeDocumento' => NULL, 'idTipoEventoOrigem' => NULL, 'nmTitulo' => 'Procuracao'); $idDocumento = $tbDocumentoDAO->inserir($dados); $idDocumento = $idDocumento['idDocumento']; //======== MONTA UM ARRAY COM AS INFORMAÇÕES DO VINCULO PROPOSTA======== for ($i = 0; $i < sizeof($arrayProjetos); $i++) { $arrayVinculoProposta = array('idVinculo' => $buscarVinculo[0]->idVinculo, 'idPreProjeto' => $arrayProjetos[$i], 'siVinculoProposta' => 0); // Salva as informações retornando o idVinculo Proposta $idVinculoProposta = $tbVinculoPropostaDAO->inserir($arrayVinculoProposta); // ==================== Insere na Tabela Procuracao =============================== $dadosVinculoProjeto = array('idVinculoProposta' => $idVinculoProposta, 'idDocumento' => $idDocumento, 'siProcuracao' => 0, 'dsObservacao' => $dsObservacao, 'dsJustificativa' => ''); $inserirproposta = $ProcuracaoDAO->inserir($dadosVinculoProjeto); } // ======== CADASTRA A VISÃO DE PROCURADOR PARA O RESPONSÁVEL CASO A MESMA NÃO EXISTA ======== $buscarDadosResponsavel = $Sgcacesso->buscar(array('IdUSuario = ?' => $responsavel))->current(); // busca os dados do responsável $buscarDadosAgente = $Agentes->buscar(array('CNPJCPF = ?' => $buscarDadosResponsavel['Cpf']))->current(); // verifica se o responsável é um agente if ($buscarDadosAgente) { // verifica se tem visão de procurador $buscarVisao = $Visao->buscar(array('idAgente = ?' => $buscarDadosAgente['idAgente'], 'Visao = ?' => 247))->current(); if (!$buscarVisao) { $dadosVisao = array('idAgente' => $buscarDadosAgente['idAgente'], 'Visao' => 247, 'Usuario' => empty($this->idUsuario) ? $this->idAgente : $this->idUsuario, 'stAtivo' => 'A'); $Visao->inserir($dadosVisao); // cadastra a visão de procurador } } else { // cadastra como agente $dadosNovoAgente = array('CNPJCPF' => $buscarDadosResponsavel['Cpf'], 'TipoPessoa' => 0, 'Status' => 0, 'Usuario' => empty($this->idUsuario) ? $this->idAgente : $this->idUsuario); $Agentes->inserir($dadosNovoAgente); // cadastra o agente $idAgenteNovo = $Agentes->BuscaAgente($buscarDadosResponsavel['Cpf']); $idAgenteNovo = $idAgenteNovo[0]->idAgente; // pega o id do agente cadastrado $dadosNome = array('idAgente' => $idAgenteNovo, 'TipoNome' => 18, 'Descricao' => $buscarDadosResponsavel['Nome'], 'Status' => 0, 'Usuario' => empty($this->idUsuario) ? $this->idAgente : $this->idUsuario); $Nomes->inserir($dadosNome); // cadastra o nome do agente $dadosVisao = array('idAgente' => $idAgenteNovo, 'Visao' => 247, 'Usuario' => empty($this->idUsuario) ? $this->idAgente : $this->idUsuario, 'stAtivo' => 'A'); $Visao->inserir($dadosVisao); // cadastra a visão de procurador $dadosInternet = array('idAgente' => $idAgenteNovo, 'TipoInternet' => 28, 'Descricao' => $buscarDadosResponsavel['Email'], 'Status' => 1, 'Divulgar' => 1, 'Usuario' => empty($this->idUsuario) ? $this->idAgente : $this->idUsuario); $Internet->inserir($dadosInternet); // cadastra o email do procurador } parent::message("Procuração cadastrada com sucesso!", "procuracao/cadastramento", "CONFIRM"); } catch (Zend_Exception $e) { parent::message("Error" . $e->getMessage(), "procuracao/cadastramento", "ERROR"); // parent::message("É necessário um vínculo para enviar o cadastramento da procuração", "procuracao/index?idPreProjeto=" . $idpreprojeto, "ERROR"); } exit; }