function incluirPagamento() { $oPartic = new Participante(); $oPartic->getById($this->md5_decrypt($_REQUEST['idParticipante'])); $oTipoP = new TipoPagamento(); $oFin = new FinalidadePagamento(); $oFin->id = $_REQUEST['finalidade']; $oTipoP->getById($_REQUEST['tipo']); $om = new Moeda(); $om->getById($_REQUEST['moeda']); $this->dataPagamento = $this->convdata($_REQUEST['dataPagamento'], "ntm"); $this->obs = $_REQUEST['obs']; $this->abatimentoAutomatico = isset($_REQUEST['abatimentoAutomatico']) ? 1 : 0; $this->moeda = $om; $this->participante = $oPartic; $this->tipo = $oTipoP; $this->finalidade = $oFin; $this->cancelado = 0; $this->devolucao = $_REQUEST['dev']; $this->valorParcela = 0; switch ($_REQUEST['tipo']) { case $oTipoP->DINHEIRO(): $this->valorPagamento = $this->money($_REQUEST['valorPagamento'], "bta"); $this->cotacaoMoedaReal = isset($_REQUEST['cotacaoMoedaReal']) ? $_REQUEST['cotacaoMoedaReal'] != "" ? $this->money($_REQUEST['cotacaoMoedaReal'], "bta") : 0 : 0; $this->cotacaoReal = $this->money($_REQUEST['cotacaoReal'], "bta"); $this->parcela = 1; break; case $oTipoP->CARTAO(): $this->valorPagamento = $this->money($_REQUEST['valorPagamento'], "bta"); $this->valorParcela = $this->money($_REQUEST['valorParcela'], "bta"); $this->cotacaoMoedaReal = 0; $this->cotacaoReal = $this->money($_REQUEST['cotacaoReal'], "bta"); $this->codAutorizacao = isset($_REQUEST['codAutorizacao']) ? $_REQUEST['codAutorizacao'] : ""; $this->parcela = $_REQUEST['parcelaCartao']; $oband = new BandeiraCartao(); $oband->id = $_REQUEST['bandeira']; $this->bandeira = $oband; break; case $oTipoP->DEBITO(): $this->cotacaoMoedaReal = 0; $this->codAutorizacao = isset($_REQUEST['codAutorizacao']) ? $_REQUEST['codAutorizacao'] : ""; $this->valorPagamento = $this->money($_REQUEST['valorPagamento'], "bta"); $this->cotacaoReal = $this->money($_REQUEST['cotacaoReal'], "bta"); $this->parcela = 1; $oband = new BandeiraCartao(); $oband->id = $_REQUEST['bandeira']; $this->bandeira = $oband; break; case $oTipoP->CHEQUE(): $ob = new Banco(); $ob->id = $_REQUEST['banco']; $this->banco = $ob; $Status = new StatusCheque(); $Status->id = 1; $oclienteEmissor = new Cliente(); $arrayEmissor = explode("-", $_REQUEST['nomeEmissor']); if (count($arrayEmissor) > 1) { $oclienteEmissor->id = $arrayEmissor[1]; } else { $oec = new EstadoCivil(); $oec->id = 1; $oclienteEmissor->nomeCompleto = $_REQUEST['nomeEmissor']; $oclienteEmissor->oclienteEmissor->cpf = ""; $oclienteEmissor->estadoCivil = $oec; $oclienteEmissor->dataNascimento = date("Y-m-d"); $oclienteEmissor->sexo = ""; $oclienteEmissor->endereco = ""; $oclienteEmissor->bairro = ""; $oclienteEmissor->cep = ""; $oclienteEmissor->telefoneResidencial = ""; $oclienteEmissor->telefoneComercial = ""; $oclienteEmissor->celular = ""; $oclienteEmissor->fax = ""; $oclienteEmissor->rg = ""; $oclienteEmissor->orgaoEmissorRg = ""; $oclienteEmissor->passaporte = ""; $oclienteEmissor->nomeCracha = ""; $oclienteEmissor->tamanhoCamisa = ""; $oclienteEmissor->problemasSaude = ""; $oclienteEmissor->restricaoAlimentar = ""; $oclienteEmissor->email = ""; $oclienteEmissor->nacionalidade = ""; $oclienteEmissor->cidadeEndereco = ""; $oclienteEmissor->estadoEndereco = ""; $oclienteEmissor->paisEndereco = ""; $oclienteEmissor->cidadeNascimento = ""; $oclienteEmissor->paisNascimento = ""; $oclienteEmissor->estadoNascimento = ""; $oclienteEmissor->preferencial = 0; $oclienteEmissor->enviaCorrespondencia = 0; $oclienteEmissor->save(); } $this->parcela = 1; $this->emissorCheque = $oclienteEmissor; $this->numeroCheque = isset($_REQUEST['numeroCheque1']) ? $_REQUEST['numeroCheque1'] : ""; $this->dataCompensacao = isset($_REQUEST['dataCompensacao1']) ? $this->convdata($_REQUEST['dataCompensacao1'], "ntm") : ''; $this->valorPagamento = $this->money($_REQUEST['valorCheque1'], "bta"); $this->cotacaoReal = $this->money($_REQUEST['cotacaoReal'], "bta"); $this->cotacaoMoedaReal = 0; break; case $oTipoP->BANCO(): $ott = new TipoTransferencia(); $ott->id = $_REQUEST['tipoTranferencia']; $this->tipoTransferencia = $ott; $this->valorPagamento = $this->money($_REQUEST['valorPagamento'], "bta"); $this->cotacaoReal = $this->money($_REQUEST['cotacaoReal'], "bta"); $this->cotacaoMoedaReal = 0; $this->parcela = 1; break; case $oTipoP->CREDITO(): //atualizar o credito para utilizado $oCredito = new Credito(); $oCredito->getById($_REQUEST['credito']); $oCredito->bitUtilizado = 1; $oCredito->save(); $this->valorPagamento = $oCredito->valor; $this->moeda = $oCredito->moeda; $this->creditoCliente = $oCredito; $this->cotacaoReal = $this->money($_REQUEST['cotacaoReal'], "bta"); $this->cotacaoMoedaReal = 0; $this->parcela = 1; break; case $oTipoP->CARNE(): $this->parcela = 1; $this->dataCompensacao = isset($_REQUEST['dataVencimento1']) ? $this->convdata($_REQUEST['dataVencimento1'], "ntm") : ''; $this->valorPagamento = $this->money($_REQUEST['valorCarne1'], "bta"); $this->cotacaoReal = $this->money($_REQUEST['cotacaoReal'], "bta"); $this->cotacaoMoedaReal = 0; break; } $idPagamento = $this->save(); //cheques if ($oTipoP->CHEQUE() == $_REQUEST['tipo']) { $parcelas = 0; $valorTotal = 0; for ($i = 1; $i <= 10; $i++) { if ($_REQUEST['dataCompensacao' . $i] != "" && $_REQUEST['numeroCheque' . $i] != "" && $_REQUEST['valorCheque' . $i] != "") { //inclui o cheque $parcelas++; $oCheque = new Cheque(); $oCheque->status = $Status; $oCheque->emissor = $oclienteEmissor; $oCheque->numeroCheque = $_REQUEST['numeroCheque' . $i]; $oCheque->valor = $ob->money($_REQUEST['valorCheque' . $i], "bta"); $oCheque->pagamento = $this; $oCheque->dataCompensacao = $ob->convdata($_REQUEST['dataCompensacao' . $i], "ntm"); $oCheque->parcela = $i; $oCheque->save(); $valorTotal += $oCheque->valor; } } $this->parcela = $parcelas; $this->emissorCheque = $oclienteEmissor; $this->numeroCheque = isset($_REQUEST['numeroCheque1']) ? $_REQUEST['numeroCheque1'] : ""; $this->dataCompensacao = isset($_REQUEST['dataCompensacao1']) ? $this->convdata($_REQUEST['dataCompensacao1'], "ntm") : ''; $this->cotacaoReal = $this->money($_REQUEST['cotacaoReal'], "bta"); $this->cotacaoMoedaReal = 0; $this->valorPagamento = $valorTotal; $this->save(); } //carnes if ($oTipoP->CARNE() == $_REQUEST['tipo']) { $parcelas = 0; $valorTotal = 0; for ($i = 1; $i <= $_REQUEST['parcelaCarne']; $i++) { if ($_REQUEST['dataVencimento' . $i] != "" && $_REQUEST['valorCarne' . $i] != "") { //inclui o cheque $parcelas++; $oCarne = new Carne(); $oCarne->valor = $oCarne->money($_REQUEST['valorCarne' . $i], "bta"); $oCarne->pagamento = $this; $oCarne->dataVencimento = $oCarne->convdata($_REQUEST['dataVencimento' . $i], "ntm"); $oCarne->parcela = $i; $oCarne->save(); $valorTotal += $oCarne->valor; } } $this->parcela = $parcelas; $this->dataCompensacao = isset($_REQUEST['dataVencimento1']) ? $this->convdata($_REQUEST['dataVencimento1'], "ntm") : ''; $this->cotacaoReal = $this->money($_REQUEST['cotacaoReal'], "bta"); $this->cotacaoMoedaReal = 0; $this->valorPagamento = $valorTotal; $this->save(); } //REALIZA O ABATIMENTO AUTOMATICO DO PARTICIPANTE if ($this->abatimentoAutomatico == 1) { if ($oTipoP->CARTAO() == $_REQUEST['tipo'] && $this->codAutorizacao != "" || $oTipoP->CARTAO() != $_REQUEST['tipo']) { $oG = new Grupo(); $oG->getById($this->md5_decrypt($_REQUEST['idGrupo'])); $oAbat = new Abatimento(); if ($oG->moeda->id == $om->DOLLAR()) { $oAbat->valor = $this->devolucao == 0 ? $this->CALCULA_DOLLAR() : -$this->CALCULA_DOLLAR(); } else { $oAbat->valor = $this->devolucao == 0 ? $this->CALCULA_REAL() : -$this->CALCULA_REAL(); } $oAbat->participante = $oPartic; $oAbat->pagamento = $this; $oAbat->save(); } } //FAZ A CONFERENCIA PARA MUDAR O STATUS DO PARTICIPANTE $oPartic->atualiza_status(); //grava log de pagamento $oLog = new LogUsuario(); $usuario = new Usuario(); $usuario->id = $_SESSION['ag_idUsuario']; $data = date("Y-m-d H:i:s"); $movimento = "INCLUIR PAGAMENTO<BR> MOEDA: " . $this->moeda->descricao . "<BR> VALOR: " . $this->money($this->valorPagamento, "atb") . "<BR> TIPO: " . $this->tipo->descricao . "<BR> CLIENTE: " . $this->participante->cliente->nomeCompleto . "<BR> GRUPO: " . $this->participante->grupo->nomePacote; $oLog->usuario = $usuario; $oLog->data = $data; $oLog->movimento = $movimento; $oLog->save(); //fim da log $_SESSION['tupi.mensagem'] = 36; return $idPagamento; }