Ejemplo n.º 1
0
 public function executa()
 {
     // $this->setJsInterno(array()
     // 				   );
     // $this->setDados('titulo', 'Painel de Mensagens');
     // $this->setPagina('views/painel-mensagem.php');
     // $this->getCompleto();
     $dias_de_prazo_para_pagamento = 2;
     $data_venc = date("d/m/Y", time() + $dias_de_prazo_para_pagamento * 86400);
     $data_vencimento = Validacoes::getDataBanco($data_venc);
     $gravaBoleto = true;
     if (count($this->query) > 1) {
         if ($this->query[1] != '') {
             $dao = new PessoaDAO();
             $idContratoFatura = $this->query[1];
             $fatura = $dao->getContratoFaturaBoleto($idContratoFatura);
             if (count($fatura) > 0) {
                 $fat = $fatura[0];
                 if (!is_null($fat['data_vencimento'])) {
                     $boletoValido = $fat['data_vencimento'] >= date('Y-m-d');
                     //Verdadeiro se ainda tiver válido e falso se já tiver vencido
                     if ($boletoValido) {
                         $data_venc = Validacoes::getDataVolta($fat['data_vencimento']);
                         $gravaBoleto = false;
                     } else {
                         //EXCLUIR O BOLETO ANTERIOR
                         $dao->deletaBoleto($fat['idboleto']);
                     }
                 }
             } else {
                 echo '<script>alert("Fatura nao encontrada"); window.history.go(-1);</script>';
                 exit;
             }
         } else {
             echo '<script>alert("Fatura nao encontrada"); window.history.go(-1);</script>';
             exit;
         }
     } else {
         echo '<script>alert("Fatura nao encontrada"); window.history.go(-1);</script>';
         exit;
     }
     $boleto = new Boleto();
     $boleto->setIdContratoFatura($idContratoFatura);
     $taxa_boleto = 0;
     $data_vencimento_baco = $fat['data_vencimento'];
     $data_cadastro_baco = $fat['data_cadastro'];
     $boleto->setDataCadastro(date("Y-m-d H:i:s"));
     $boleto->setDataVencimento($data_vencimento);
     $valor_cobrado = $fat['valor'];
     // Valor - REGRA: Sem pontos na milhar e tanto faz com "." ou "," ou com 1 ou 2 ou sem casa decimal
     $valor_cobrado = str_replace(",", ".", $valor_cobrado);
     $valor_boleto = number_format($valor_cobrado + $taxa_boleto, 2, ',', '');
     $boleto->setValor($valor_boleto);
     $enderecoBase = $this->getBaseUrl();
     $dadosboleto["enderecoBase"] = $enderecoBase;
     // Composição Nosso Numero - CEF SIGCB
     $dadosboleto["nosso_numero1"] = str_pad($fat['idplano'], 3, '0', STR_PAD_LEFT);
     //"000"; // tamanho 3
     $dadosboleto["nosso_numero_const1"] = "2";
     //constanto 1 , 1=registrada , 2=sem registro
     $dadosboleto["nosso_numero2"] = "000";
     // tamanho 3
     $dadosboleto["nosso_numero_const2"] = "4";
     //constanto 2 , 4=emitido pelo proprio cliente
     $dadosboleto["nosso_numero3"] = str_pad($fat['idcontrato_fatura'], 9, '0', STR_PAD_LEFT);
     // tamanho 9 //ID DA FATURA
     $dadosboleto["numero_documento"] = str_pad($fat['idplano'], 3, '0', STR_PAD_LEFT) . '.' . str_pad($fat['idcontrato_fatura'], 9, '0', STR_PAD_LEFT);
     //"27.030195.10";	// ID DA FATURA + ID DO CARA -> PENSAR NUM NUMERO NOSSO
     $dadosboleto["data_vencimento"] = $data_venc;
     // Data de Vencimento do Boleto - REGRA: Formato DD/MM/AAAA
     $dadosboleto["data_documento"] = date("d/m/Y");
     // Data de emissão do Boleto
     $dadosboleto["data_processamento"] = date("d/m/Y");
     // Data de processamento do boleto (opcional)
     $dadosboleto["valor_boleto"] = $valor_boleto;
     // Valor do Boleto - REGRA: Com vírgula e sempre com duas casas depois da virgula
     // DADOS DO SEU CLIENTE
     $dadosboleto["sacado"] = $fat['nome'];
     $enderecoCliente = $fat['logradouro'] . ', ' . $fat['numero'];
     $dadosboleto["endereco1"] = $enderecoCliente;
     $enderecoClienteCidade = $fat['cidade'] . ' - ' . $fat['estado'] . ' - CEP: ' . $fat['cep'];
     $dadosboleto["endereco2"] = $enderecoClienteCidade;
     // INFORMACOES PARA O CLIENTE
     $dadosboleto["demonstrativo1"] = "Aquisição do plano: {$fat['plano']}";
     $dadosboleto["demonstrativo2"] = "Thy Girls - https://www.thygirls.moda";
     $dadosboleto["demonstrativo3"] = "";
     // INSTRUÇÕES PARA O CAIXA
     $dadosboleto["instrucoes1"] = "";
     $dadosboleto["instrucoes2"] = "";
     $dadosboleto["instrucoes3"] = "";
     $dadosboleto["instrucoes4"] = "";
     // DADOS OPCIONAIS DE ACORDO COM O BANCO OU CLIENTE
     $dadosboleto["quantidade"] = "";
     $dadosboleto["valor_unitario"] = "";
     $dadosboleto["aceite"] = "";
     $dadosboleto["especie"] = "R\$";
     $dadosboleto["especie_doc"] = "";
     // ---------------------- DADOS FIXOS DE CONFIGURAÇÃO DO SEU BOLETO --------------- //
     // DADOS DA SUA CONTA - CEF
     $dadosboleto["agencia"] = "3320";
     // Num da agencia, sem digito
     $dadosboleto["conta"] = "2445";
     // Num da conta, sem digito
     $dadosboleto["conta_dv"] = "0";
     // Digito do Num da conta
     // DADOS PERSONALIZADOS - CEF
     $dadosboleto["conta_cedente"] = "534335";
     // Código Cedente do Cliente, com 6 digitos (Somente Números)
     $dadosboleto["carteira"] = "SR";
     // Código da Carteira: pode ser SR (Sem Registro) ou CR (Com Registro) - (Confirmar com gerente qual usar)
     // SEUS DADOS
     $dadosboleto["identificacao"] = "";
     $dadosboleto["cpf_cnpj"] = "";
     $dadosboleto["endereco"] = "Rua Silvestre Coelho, 348";
     $dadosboleto["cidade_uf"] = "Rio Branco / Acre";
     $dadosboleto["cedente"] = "TG DA SILVA ME";
     // NÃO ALTERAR!
     include "views/boleto/funcoes_cef_sigcb.php";
     include "views/boleto/layout_cef.php";
     $boleto->setCodigo($dadosboleto["nosso_numero"]);
     $boleto->setCodigoBarras($linhaDigitavel);
     if ($gravaBoleto) {
         $dao->insereBoleto($boleto);
     }
 }