if($oPag->bandeira != null)
		$idBandeiraEdita = $oPag->bandeira->id;
	$tpl->PARCELA_CARTAO = $oPag->parcela;
	$oband = new BandeiraCartao();
	$rs = $oband->getRows(0,999,array(),array());
	foreach($rs as $key => $row){
		$tpl->ID_BANDEIRA = $row->id;
		$tpl->IMG_BANDEIRA = $row->imagem;
		if(	$idBandeiraEdita == $row->id)		
			$tpl->SELECTED_BANDEIRA = 'checked="checked"';
		$tpl->block('BLOCK_BANDEIRA');
		$tpl->clear("SELECTED_BANDEIRA");
	}
	$tpl->block('BLOCK_PG_CARTAO');
break;
case $oTipoP->DEBITO() :
	$tpl->CAMBIO_DOLLAR_REAL = $oPag->money($oPag->cotacaoReal,"atb");
	$tpl->VALOR_PAGAMENTO =	$oPag->money($oPag->valorPagamento,"atb");
	$tpl->NUMERO_CARTAO = $oPag->numeroCartao;
    $tpl->COD_AUTORIZACAO = $oPag->codAutorizacao;
	if($oPag->bandeira != null)
		$idBandeiraEdita = $oPag->bandeira->id;
	$oband = new BandeiraCartao();
	$rs = $oband->getRows(0,999,array(),array());
	foreach($rs as $key => $row){
		$tpl->ID_BANDEIRA = $row->id;
		$tpl->IMG_BANDEIRA = $row->imagem;
		if(	$idBandeiraEdita == $row->id)		
			$tpl->SELECTED_BANDEIRA = 'checked="checked"';
		$tpl->block('BLOCK_BANDEIRA_DEB');
		$tpl->clear("SELECTED_BANDEIRA");
}
//recupera pagamentos cartoes
$oPag = new Pagamento();
$oTipoPag = new TipoPagamento();
$rs = $oPag->getPagamentos($ogrupo->id, $oTipoPag->CARTAO());
$totalGeralPagoReal = 0;
foreach ($rs as $key => $p) {
    $totalReal = 0;
    $tpl->CODIGO = $p->codAutorizacao;
    $tpl->NUMERO_CARTAO = $p->numeroCartao;
    $tpl->VALOR_PARCELA = $oPag->money($p->valorParcela, "atb");
    $tpl->NOME_PARTICIPANTE = $p->participante->cliente->nomeCompleto;
    $tpl->VALOR_PAGO_REAL = $oPag->money($p->valorPagamento, "atb");
    $tpl->DATA = $oPag->convdata($p->dataPagamento, "mtn");
    $totalGeralPagoReal += $p->valorPagamento;
    $tpl->block("BLOCK_ITEM_LISTA");
}
$rs = $oPag->getPagamentos($ogrupo->id, $oTipoPag->DEBITO());
foreach ($rs as $key => $p) {
    $totalReal = 0;
    $tpl->CODIGO = $p->codAutorizacao;
    $tpl->NUMERO_CARTAO = $p->numeroCartao;
    $tpl->VALOR_PARCELA = $oPag->money($p->valorParcela, "atb");
    $tpl->NOME_PARTICIPANTE = $p->participante->cliente->nomeCompleto;
    $tpl->VALOR_PAGO_REAL = $oPag->money($p->valorPagamento, "atb");
    $tpl->DATA = $oPag->convdata($p->dataPagamento, "mtn");
    $totalGeralPagoReal += $p->valorPagamento;
    $tpl->block("BLOCK_ITEM_LISTA");
}
$tpl->TOTAL_VALOR_PAGO_REAL = $om->money($totalGeralPagoReal, "atb");
include "tupi.template.finalizar.php";
foreach ($rsCheques as $key => $cheque) {
    $valorChequed += @($cheque->valor / $cheque->pagamento->cotacaoReal);
    $valorCheque += @$cheque->valor;
}
//somatorio dos outros pagamentos
foreach ($rs as $key => $p) {
    switch ($p->tipo->id) {
        case $oTP->DINHEIRO():
            $valorEspecied += @$p->CALCULA_DOLLAR();
            $valorEspecie += $p->CALCULA_REAL();
            break;
        case $oTP->CARTAO():
            $valorCartaod += @$p->CALCULA_DOLLAR();
            $valorCartao += @$p->CALCULA_REAL();
            break;
        case $oTP->DEBITO():
            $valorDebitod += @$p->CALCULA_DOLLAR();
            $valorDebito += @$p->CALCULA_REAL();
            break;
        case $oTP->CHEQUE():
            //$valorChequed += $p->CALCULA_DOLLAR();
            //$valorCheque += $p->CALCULA_REAL();
            break;
        case $oTP->BANCO():
            switch ($p->tipoTransferencia->id) {
                case $oTT->TRANSFERENCIA():
                    $valorTransfd += @$p->CALCULA_DOLLAR();
                    $valorTransf += @$p->CALCULA_REAL();
                    break;
                case $oTT->DEPOSITO():
                    $valorDepositod += @$p->CALCULA_DOLLAR();
Пример #4
0
 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;
 }