2017 © Pedro Peláez
 

library cielo-edi-parser

Projeto para processar arquivo retorno no formato EDI

image

fhferreira/cielo-edi-parser

Projeto para processar arquivo retorno no formato EDI

  • Friday, October 28, 2016
  • by fhferreira
  • Repository
  • 1 Watchers
  • 0 Stars
  • 364 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 0 Forks
  • 0 Open issues
  • 6 Versions
  • 1 % Grown

The README.md

EdiParser

Parser para o arquivo do tipo EDI, transmitido pela Cielo para conciliação bancária, (*1)

Fork criado para ajuste de conciliação de cartões de Crédito CIELO, (*2)

Build Status Latest Stable Version Latest Unstable Version Total Downloads Code Climate Test Coverage, (*3)

format("Y-m-d") . "',
                        {$parcelaDataBaixaDesc} = '" . date("Y-m-d H:i:s") . "',
                        {$parcelaUsuarioBaixaDesc} = '" . $nr_usuario_id . "'
                        where {$parcelaStatusDesc}  'S' AND  id_cad_cartao = " . $cartao['id_cad_cartao'];

        $p_sql = $db->prepare($updateSQL);
        $p_sql->execute();

        $sqlUpdateSaldo = "UPDATE cartao_de_credito
                        SET saldo_a_receber = (valor_da_conta - ROUND((
                          (valor_1_recebido + custo_recebimento_1_parcela)
                        + (valor_2_recebido + custo_recebimento_2_parcela)
                        + (valor_3_recebido + custo_recebimento_3_parcela)
                        + (valor_4_recebido + custo_recebimento_4_parcela)
                        + (valor_5_recebido + custo_recebimento_5_parcela)
                        + (valor_6_recebido + custo_recebimento_6_parcela)
                        ),2)) WHERE  id_cad_cartao = " . $cartao['id_cad_cartao'];

        $p_sql = $db->prepare($sqlUpdateSaldo);
        $p_sql->execute();

        return true;

    } catch (\Exception $e) {
        var_dump($e, $cartao);
    }

    return false;
}

try{

$valorGeral = 0;
$valorSemComprovantesGeral = 0;
$valoresComissao = array();
$valorGeralLiquido = 0;
$valoresCancelados = array();
$countSemComprovantesGeral = 0;

$valoresCobrancas = array();
$resumos = array();
$valorPorComprovanteNaoEncontrados = array();

$DB_HOST = env('DB_HOST');
$DB_DATABASE = env('DB_DATABASE');
$DB_USERNAME = env('DB_USERNAME');
$DB_PASSWORD = env('DB_PASSWORD');

$db = new PDO("mysql:host={$DB_HOST};port=3306;dbname={$DB_DATABASE}", 
$DB_USERNAME, 
$DB_PASSWORD, 
array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8"));
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$db->setAttribute(PDO::ATTR_ORACLE_NULLS, PDO::NULL_EMPTY_STRING);

echo "
"; echo "
"; echo "
"; foreach ($arquivos as $filename) { try { $arquivo = new Arquivo($filename); $detalhes = $arquivo->getDetalhesRO(); $cont = 1; $valorBruto = array(); $detalhesCount = array(); $detalhesValor = array(); $valorPorComprovante = array(); $valorSemComprovante = array(); $countSemCVs = 0; $sumSemCVs = array(); $valorLiquido = array(); $valorComissao = array(); $valorCobrancas = array(); $jaBaixados = array(); $count = 0; foreach ($detalhes as $detalhe) { $valorBruto[] = $detalhe->getValorBruto(); $detalhesCV = $detalhe->getDetalhesCV(); $detalhesCount[] = count($detalhesCV); $bruto = $detalhe->getValorBruto(); $valorPorComprovante[$cont]['total'] = $bruto; if ($bruto getValorBruto(); } elseif ($bruto 0) { $valoresCancelados[] = $detalhe->getValorBruto(); } $valorLiquido[] = $valorPorComprovante[$cont]['liquido'] = $detalhe->getValorLiquido(); $valorPorComprovante[$cont]['dtPrevPagamento'] = $detalhe->getDtPrevPagamento(); $valorPorComprovante[$cont]['quantidadeCVs'] = $detalhe->getQuantidadeCVs(); $valorComissaoResumo = $detalhe->getValorComissao(); $valorComissao[] = $valorComissaoResumo; $valorPorComprovante[$cont]['valorComissao'] = $valorComissaoResumo; $taxaComissao = $detalhe->getTaxaDeComissao(); $valorPorComprovante[$cont]['taxaDeComissao'] = $taxaComissao; $valorPorComprovante[$cont]['tarifa'] = $detalhe->getTarifa(); $valorPorComprovante[$cont]['IdentificadorProduto'] = $detalhe->getIdentificadorProduto(); $valorPorComprovante[$cont]['IdentificadorProdutoDesc'] = $detalhe->getIdentificadorProdutoDesc(); $valorPorComprovante[$cont]['numeroRO'] = $detalhe->getNumeroRO(); $valorPorComprovante[$cont]['codigoBandeira'] = $detalhe->getCodigoBandeira(); $dtCaptura = $detalhe->getDtCaptura(); $valorPorComprovante[$cont]['dtCaptura'] = $dtCaptura; $valorPorComprovante[$cont]['Bandeira'] = $detalhe->getBandeira($valorPorComprovante[$cont]['codigoBandeira']); $valorPorComprovante[$cont]['valores'] = array(); if (count($detalhesCV)) { foreach ($detalhesCV as $detalheCV) { $nsuDoc = $detalheCV->getNsuDoc(); $codigoAutorizacao = $detalheCV->getCodigoAutorizacao(); $valor = $detalheCV->getValor(); $parcela = $detalheCV->getParcela(); $totalParcelas = $detalheCV->getTotalParcelas(); $num_parcela = intval($parcela); if ($num_parcela == 0) { $num_parcela = 1; } $parcelaDesc = "valor_" . $num_parcela . "_parcela"; $parcelaRecebidoDesc = 'valor_' . $num_parcela . '_recebido'; $parcelaStatusDesc = 'status_recebido_' . $num_parcela . '_parcela'; $parcelaCustoDesc = 'custo_recebimento_' . $num_parcela . '_parcela'; $parcelaDataDesc = 'data_recebimento_' . $num_parcela . '_parcela_operadora'; $parcelaDataBaixaDesc = 'data_baixa_automatica_' . $num_parcela . '_parcela'; $parcelaUsuarioBaixaDesc = 'usuario_baixa_automatica_' . $num_parcela . '_parcela'; try { $sql = "SELECT c.id_cad_cartao, c.data_da_conta, c.operadora_do_cartao, c.debito_ou_credito, c.quantidade_de_parcelas, c.titular_do_cartao, c.valor_da_conta, c.origem_da_conta, c.contrato, c.{$parcelaDesc}, c.{$parcelaRecebidoDesc}, c.{$parcelaStatusDesc}, c.{$parcelaCustoDesc}, c.{$parcelaDataDesc}, c.{$parcelaDataBaixaDesc}, c.{$parcelaUsuarioBaixaDesc}, IF(c.{$parcelaRecebidoDesc} > 0, 1, 0) as StatusParcela FROM cartao_de_credito c WHERE c.documento = :nsuDoc AND c.autorizacao = :codigoAutorizacao AND CAST(c.{$parcelaDesc} AS DECIMAL) = CAST(:valor AS DECIMAL)"; $p_sql = $db->prepare($sql); $p_sql->bindValue(":nsuDoc", $nsuDoc); $p_sql->bindValue(":codigoAutorizacao", $codigoAutorizacao); $p_sql->bindValue(":valor", $valor); $p_sql->execute(); $numRows = $p_sql->rowCount(); $cartao = $p_sql->fetch(PDO::FETCH_ASSOC); $localizado = false; $mensagem = ''; if ($numRows) { $localizado = true; } else { $cartao = array(); echo "
";
                            echo "

Cartão não encontrado !!

"; echo "

nsuDoc: {$nsuDoc}

"; echo "

codigoAutorizacao: {$codigoAutorizacao}

"; echo "

Valor: {$valor}

"; echo "

Data Previsão: {$valorPorComprovante[$cont]['dtPrevPagamento']->format('d/m/Y')}

"; echo "

Bandeira: {$valorPorComprovante[$cont]['Bandeira']}

"; echo "

Produto: {$valorPorComprovante[$cont]['IdentificadorProdutoDesc']}

"; echo "

Dt. Captura: {$valorPorComprovante[$cont]['dtCaptura']->format('d/m/Y')}

"; $p_sql = $db->prepare($sql); $p_sql->bindValue(":nsuDoc", $codigoAutorizacao); $p_sql->bindValue(":codigoAutorizacao", $nsuDoc); $p_sql->bindValue(":valor", $valor); $p_sql->execute(); $numRows2 = $p_sql->rowCount(); $cartao2 = $p_sql->fetch(PDO::FETCH_ASSOC); if ($numRows2) { echo $mensagem = "

Causa: Código de Documento e Autorização invertidos !!
" . "Parcela: {$parcela}/{$totalParcelas}

"; } else { $sql2 = "SELECT c.id_cad_cartao, c.data_da_conta, c.operadora_do_cartao, c.debito_ou_credito, c.quantidade_de_parcelas, c.titular_do_cartao, c.valor_da_conta, c.origem_da_conta, c.contrato, c.{$parcelaDesc}, c.{$parcelaRecebidoDesc}, c.{$parcelaStatusDesc}, c.{$parcelaCustoDesc}, c.{$parcelaDataDesc}, c.{$parcelaDataBaixaDesc}, c.{$parcelaUsuarioBaixaDesc}, IF(c.{$parcelaRecebidoDesc} > 0, 1, 0) as StatusParcela FROM cartao_de_credito c WHERE c.documento = :nsuDoc AND CAST(c.{$parcelaDesc} AS DECIMAL) = CAST(:valor AS DECIMAL)"; $p_sql = $db->prepare($sql2); $p_sql->bindValue(":nsuDoc", $nsuDoc); $p_sql->bindValue(":valor", $valor); $p_sql->execute(); $numRows2 = $p_sql->rowCount(); $cartao2 = $p_sql->fetch(PDO::FETCH_ASSOC); if ($numRows2) { echo $mensagem = "

" . "Provável Causa: Código de Autorização incorreto !!
" . "Pesquise pelo Número do Documento: {$nsuDoc}
" . "Parcela: {$parcela}/{$totalParcelas}" . "

"; } else { $sql2 = "SELECT c.id_cad_cartao, c.data_da_conta, c.operadora_do_cartao, c.debito_ou_credito, c.quantidade_de_parcelas, c.titular_do_cartao, c.valor_da_conta, c.origem_da_conta, c.contrato, c.{$parcelaDesc}, c.{$parcelaRecebidoDesc}, c.{$parcelaStatusDesc}, c.{$parcelaCustoDesc}, c.{$parcelaDataDesc}, c.{$parcelaDataBaixaDesc}, c.{$parcelaUsuarioBaixaDesc}, IF(c.{$parcelaRecebidoDesc} > 0, 1, 0) as StatusParcela FROM cartao_de_credito c WHERE c.autorizacao = :codigoAutorizacao AND CAST(c.{$parcelaDesc} AS DECIMAL) = CAST(:valor AS DECIMAL)"; $p_sql = $db->prepare($sql2); $p_sql->bindValue(":codigoAutorizacao", $codigoAutorizacao); $p_sql->bindValue(":valor", $valor); $p_sql->execute(); $numRows2 = $p_sql->rowCount(); $cartao2 = $p_sql->fetch(PDO::FETCH_ASSOC); if ($numRows2) { echo $mensagem = "

Provável Causa: Código de Documento incorreto !!
" . "Pesquise pelo Código de Autorização: {$codigoAutorizacao}
" . "Parcela: {$parcela}/{$totalParcelas}

"; } else { $sql2 = "SELECT c.id_cad_cartao, c.data_da_conta, c.operadora_do_cartao, c.debito_ou_credito, c.quantidade_de_parcelas, c.titular_do_cartao, c.valor_da_conta, c.origem_da_conta, c.contrato, c.{$parcelaDesc}, c.{$parcelaRecebidoDesc}, c.{$parcelaStatusDesc}, c.{$parcelaCustoDesc}, c.{$parcelaDataDesc}, c.{$parcelaDataBaixaDesc}, c.{$parcelaUsuarioBaixaDesc}, IF(c.{$parcelaRecebidoDesc} > 0, 1, 0) as StatusParcela FROM cartao_de_credito c WHERE c.autorizacao = :codigoAutorizacao AND c.documento = :nsuDoc "; $p_sql = $db->prepare($sql2); $p_sql->bindValue(":codigoAutorizacao", $codigoAutorizacao); $p_sql->bindValue(":nsuDoc", $nsuDoc); $p_sql->execute(); $numRows2 = $p_sql->rowCount(); $cartao2 = $p_sql->fetch(PDO::FETCH_ASSOC); if ($numRows2) { echo $mensagem = "

Provável Causa: Valor cadastrado incorretamente !!
" . "Valor Comprovante: {$valor}
" . "Valor Cadastrado: {$cartao2[$parcelaDesc]}
" . "Parcela: {$parcela}/{$totalParcelas}" . "

"; } else { echo $mensagem = "
" . "Provável Causa: Comprovante não cadastrado ou cadastrado incorretamente !!
" . "Consulte o número de Doc.:{$nsuDoc}
" . "Código de Autorização: {$codigoAutorizacao}
" . "Para localiza-lo no relátorio de Cartões.
"; } } } } echo "
"; } } catch (\Exception $e) { $params = $p_sql->debugDumpParams(); print_r($e); var_dump($sql, $nsuDoc, $codigoAutorizacao, $valor, $params); die(); } $detalhesValor[] = $detalheCV->getValor(); $dataParcela = array( 'valor' => $valor, 'dtVenda' => $detalheCV->getDtVendaAjuste(), 'tid' => $detalheCV->getTid(), 'parcela' => $parcela, 'totalParcelas' => $totalParcelas, 'nsuDoc' => $nsuDoc, 'codigoAutorizacao' => $codigoAutorizacao, 'localizado' => $localizado, 'mensagem' => $mensagem ); $calculaComissao = calculaComissao($valor, $taxaComissao); $calculaLiquido = $valor - $calculaComissao; $dataParcela['valorLiquido'] = $calculaLiquido; $dataParcela['valorComissao'] = $calculaComissao; $dataParcela['dtBaixa'] = $arquivo->getHeader()->getDtProcessamento(); $dataParcela['dtCaptura'] = $dtCaptura; $valorArr = array_merge($dataParcela, $cartao); $baixa = false; if ($baixar && $localizado && isset($cartao['StatusParcela']) && $cartao['StatusParcela'] == 0 && count($cartao) > 0) { $baixa = baixaParcela($db, $valorArr); } $valorArr['baixa'] = $baixa; $valorPorComprovante[$cont]['valores'][] = $valorArr; } if (!$localizado) { $valorArr['Bandeira'] = $valorPorComprovante[$cont]['Bandeira']; $valorArr['IdentificadorProdutoDesc'] = $valorPorComprovante[$cont]['IdentificadorProdutoDesc']; $valorPorComprovanteNaoEncontrados[$cont][] = $valorArr; } } else { if ($bruto > 0) { $valorPorComprovante[$cont]['mensagem'] = 'Resumo de Operações sem CV\'s'; $countSemCVs++; $sumSemCVs[] = $bruto; $valorSemComprovante[$cont] = $valorPorComprovante[$cont]; } } $cont++; } if (count($valorPorComprovante) == 0) { continue; } echo ""; $dataArquivo = $arquivo->getHeader()->getDtProcessamento()->format('d/m/Y'); echo ""; echo EOF; $countCVs = 1; foreach ($valorPorComprovante as $comprovante) { $colorComprovante = $color = '#FFFFFF'; $colorComprovanteText = $colorText = '#000000'; if (intval($comprovante['quantidadeCVs']) > 1) { $color = 'lightsteelblue'; $colorText = '#5D5D5D'; $colorComprovante = '#447FCC'; $colorComprovanteText = '#FFF'; } if (count($comprovante['valores']) == 0) { $color = '#E03C30'; $colorText = '#FFF'; } if (intval($comprovante['total']) 0) { $color = '#4C9980'; $colorText = '#FFF'; } $comprovante['totalDesc'] = formatNumber($comprovante['total']); $comprovante['valorComissaoDesc'] = formatNumber($comprovante['valorComissao']); $comprovante['liquidoDesc'] = formatNumber($comprovante['liquido']); if ($comprovante['valores']) { $cont = 0; foreach ($comprovante['valores'] as $cv) { $calculaComissao = calculaComissao($cv['valor'], $comprovante['taxaDeComissao']); $calculaComissao = number_format( $calculaComissao, 2, '.', '' ); $calculaLiquido = $cv['valor'] - $calculaComissao; if (isset($cv['StatusParcela']) && $cv['StatusParcela'] == 1) { $jaBaixados[] = ['valor' => $cv['valor'], 'liquido' => $calculaLiquido, 'comissao' => $calculaComissao]; } $calculaComissao = number_format($calculaComissao, 2, ',', ''); $calculaLiquido = number_format($calculaLiquido, 2, ',', ''); $localizado = $cv['localizado'] ? ($cv['StatusParcela'] == 1 ? 'Já Baixado' : 'Encontrado') : 'Não Encontrado'; $baixa = $cv['baixa'] ? ' - Baixado com sucesso' : ''; $colorComprovante = $cv['localizado'] ? $colorComprovante : 'red'; $cv['valorDesc'] = formatNumber($cv['valor']); echo EOF; if ($cont == 0) { echo {$countCVs} EOF; } else { $countCVs++; echo {$countCVs} EOF; } $cont++; $cv['contrato'] = isset($cv['contrato']) ? $cv['contrato'] : ''; $cv['titular_do_cartao'] = isset($cv['titular_do_cartao']) ? $cv['titular_do_cartao'] : ''; $cv['nsuDoc'] = isset($cv['nsuDoc']) ? $cv['nsuDoc'] : ''; $cv['codigoAutorizacao'] = isset($cv['codigoAutorizacao']) ? $cv['codigoAutorizacao'] : ''; echo {$calculaComissao} EOF; } } else { $mensagem = $comprovante['total'] EOF; } $countCVs++; } $resumos[$filename]['jaBaixados'] = ($jaBaixados); //echo 'Total de Cv\'s: '; $resumos[$filename]['totalCvs'] = array_sum($detalhesCount); //echo 'Total Bruto Resumo: '; $valorGeral += array_sum($valorBruto); $resumos[$filename]['valorBrutoRO'] = array_sum($valorBruto); //echo 'Total Bruto Comprovantes: '; $resumos[$filename]['valorBrutoCVs'] = array_sum($detalhesValor); //echo 'Total Liquido Resumo: '; $resumos[$filename]['valorLiquido'] = array_sum($valorLiquido); $valorGeralLiquido += array_sum($valorLiquido); $resumos[$filename]['valorComissao'] = array_sum($valorComissao); $valoresComissao[] = $resumos[$filename]['valorComissao']; //echo 'Total Cobranças: '; $valoresCobrancas[$filename] = array_sum($valorCobrancas); $resumos[$filename]['CountROsemCVs'] = 0; $resumos[$filename]['ValorROsemCVs'] = 0; $resumos[$filename]['OperacoesSemCVs'] = []; if (count($valorSemComprovante)) { //echo 'Operacoes sem Comprovantes: '; $countSemComprovantesGeral += ($countSemCVs); $resumos[$filename]['CountROsemCVs'] = ($countSemCVs); //echo 'Valor sem Comprovantes: '; $valorSemComprovantesGeral += array_sum($sumSemCVs); $resumos[$filename]['ValorROsemCVs'] = array_sum($sumSemCVs); //echo 'Operacoes sem Comprovantes: '; $resumos[$filename]['OperacoesSemCVs'] = ($valorSemComprovante); } $background = 'background-color:grey;text-align:right;'; $cobranca = formatNumber($valoresCobrancas[$filename]); $valorBrutoDia = formatNumber($resumos[$filename]['valorBrutoRO']); $valorBrutoCVs = formatNumber($resumos[$filename]['valorBrutoCVs']); $valorComissaoDia = formatNumber($resumos[$filename]['valorComissao']); $valorLiquidoDia = formatNumber($resumos[$filename]['valorLiquido']); $valorSemCVDia = formatNumber($resumos[$filename]['ValorROsemCVs']); $resumos[$filename]['data'] = $dataArquivo; $resumos[$filename]['cobranca'] = $valoresCobrancas[$filename]; $valoresCanceladosDesc = formatNumber(array_sum($valoresCancelados)); $sumJaBaixados = array_sum(array_column($resumos[$filename]['jaBaixados'], 'valor')); $sumJaBaixadosDesc = formatNumber($sumJaBaixados); $sumJaBaixadosLiquido = array_sum(array_column($resumos[$filename]['jaBaixados'], 'liquido')); $sumJaBaixadosLiquidoDesc = formatNumber($sumJaBaixadosLiquido); $sumJaBaixadosComissao = array_sum(array_column($resumos[$filename]['jaBaixados'], 'comissao')); $sumJaBaixadosComissaoDesc = formatNumber($sumJaBaixadosComissao); $countJaBaixados = count($resumos[$filename]['jaBaixados']); $saldoABaixar = $resumos[$filename]['valorBrutoCVs'] - $sumJaBaixados; $saldoABaixarDesc = formatNumber($saldoABaixar); $saldoABaixarLiquido = $resumos[$filename]['valorLiquido'] - $sumJaBaixadosLiquido; $saldoABaixarLiquidoDesc = formatNumber($saldoABaixarLiquido); $saldoABaixarComissao = $resumos[$filename]['valorComissao'] - (-$sumJaBaixadosComissao); $saldoABaixarComissaoDesc = formatNumber($saldoABaixarComissao); $countSaldoCVS = $resumos[$filename]['totalCvs'] - $countJaBaixados; echo EOF; if (!is_null($det = $arquivo->getDetalheAntecipacao())) { try { $valorAntecipacao = $det->getValorBrutoAntecipacaoTotal(); $valorLiquidoAntecipacaoTotal = $det->getValorLiquidoAntecipacaoTotal(); $diff = $valorAntecipacao - $valorLiquidoAntecipacaoTotal; $resumos[$filename]['valorComissao'] = -($resumos[$filename]['valorComissao']); $resumos[$filename]['valorLiquido'] = $resumos[$filename]['valorLiquido'] - $diff; $valorCobrancas[] = -($diff); $valoresCobrancas[$filename] = array_sum($valorCobrancas); $resumos[$filename]['cobranca'] = $valoresCobrancas[$filename]; $valorAntecipacaoDesc = formatNumber($valorAntecipacao); $diffDesc = formatNumber($diff); $valorLiquidoAntecipacaoTotalDesc = formatNumber($valorLiquidoAntecipacaoTotal); echo EOF; } catch (\Exception $e) { var_dump($e); } } echo "
{$dataArquivo} - Arquivo: {$filename}
  Bruto Comissão Líquido Data Pag. CVs Bandeira Produto Valor Comissão CV Valor Líquido CV Parcela Status Valor CV Contrato Titular Cartão Data Venda NsuDoc Autorização{$comprovante['totalDesc']} {$comprovante['valorComissaoDesc']} {$comprovante['liquidoDesc']} {$comprovante['dtPrevPagamento']->format('d/m/Y')} {$comprovante['quantidadeCVs']} {$comprovante['Bandeira']}/{$comprovante['codigoBandeira']} {$comprovante['IdentificadorProdutoDesc']}  {$comprovante['Bandeira']}/{$comprovante['codigoBandeira']} {$comprovante['IdentificadorProdutoDesc']}{$calculaLiquido} {$cv['parcela']}/{$cv['totalParcelas']} {$localizado}{$baixa} {$cv['valorDesc']} {$cv['contrato']} {$cv['titular_do_cartao']} {$cv['dtVenda']->format('d/m/Y')} {$cv['nsuDoc']} {$cv['codigoAutorizacao']}{$countCVs} {$comprovante['totalDesc']} {$comprovante['valorComissaoDesc']} {$comprovante['liquidoDesc']} {$comprovante['dtPrevPagamento']->format('d/m/Y')} {$comprovante['quantidadeCVs']} {$comprovante['Bandeira']}/{$comprovante['codigoBandeira']} {$comprovante['IdentificadorProdutoDesc']} $mensagemResumo do Dia
Data {$dataArquivo}
Quantidade de CV's {$resumos[$filename]['totalCvs']}
Valor Bruto Resumo de Operações {$valorBrutoDia}
Valor Bruto de CV's {$valorBrutoCVs}
Valor Comissão {$valorComissaoDia}
Valor Líquido Depositado {$valorLiquidoDia}
Operações sem CV's {$resumos[$filename]['CountROsemCVs']}
Valor sem CV's {$valorSemCVDia}
Cobranças {$cobranca}
Cancelamentos {$valoresCanceladosDesc}
Quantidade de CV's já Baixados {$countJaBaixados}
Valor Bruto já Baixado {$sumJaBaixadosDesc}
Valor Bruto já Baixado Líquido {$sumJaBaixadosLiquidoDesc}
Valor Bruto já Baixado Comissão {$sumJaBaixadosComissaoDesc}
Quantidade de CV's a baixar {$countSaldoCVS}
Valor Bruto a baixar {$saldoABaixarDesc}
Valor Bruto a baixar Liquido {$saldoABaixarLiquidoDesc}
Valor Bruto a baixar Comissão {$saldoABaixarComissaoDesc}
Valor Bruto Antecipação {$valorAntecipacaoDesc}
Taxa Antecipação {$diffDesc}
Valor Líquido Antecipação {$valorLiquidoAntecipacaoTotalDesc}
"; $valoresCancelados = []; } catch (\Exception $e) { echo "
"; echo "Arquivo: $filename"; echo "
"; echo "Erro: ", $e->getMessage(); echo "
"; echo "Linha: ", $e->getLine(); echo "
"; echo "Linha: ", $e->getFile(); echo "
"; echo "
"; } } echo ''; echo ""; echo EOF; $sumTotalCvs = 0; $sumValorBrutoRO = 0; $sumValorBrutoCVs = 0; $sumValorComissao = 0; $sumValorLiquido = 0; $sumCountROsemCVs = 0; $sumValorROsemCVs = 0; $sumCobranca = 0; foreach ($resumos as $resumo) { if ($resumo['valorLiquido'] > 0) { $sumTotalCvs += $resumo['totalCvs']; $sumValorBrutoRO += $resumo['valorBrutoRO']; $sumValorBrutoCVs += $resumo['valorBrutoCVs']; $sumValorComissao += $resumo['valorComissao']; $sumValorLiquido += $resumo['valorLiquido']; $sumCountROsemCVs += $resumo['CountROsemCVs']; $sumValorROsemCVs += $resumo['ValorROsemCVs']; $sumCobranca += $resumo['cobranca']; $resumo['valorBrutoRODesc'] = formatNumber($resumo['valorBrutoRO']); $resumo['valorBrutoCVsDesc'] = formatNumber($resumo['valorBrutoCVs']); $resumo['valorComissaoDesc'] = formatNumber($resumo['valorComissao']); $resumo['valorLiquidoDesc'] = formatNumber($resumo['valorLiquido']); $resumo['ValorROsemCVsDesc'] = formatNumber($resumo['ValorROsemCVs']); $resumo['cobrancaDesc'] = formatNumber($resumo['cobranca']); echo EOF; } } $sumValorBrutoRODesc = formatNumber($sumValorBrutoRO); $sumValorBrutoCVsDesc = formatNumber($sumValorBrutoCVs); $sumValorComissaoDesc = formatNumber($sumValorComissao); $sumValorLiquidoDesc = formatNumber($sumValorLiquido); $sumValorROsemCVsDesc = formatNumber($sumValorROsemCVs); $sumCobrancaDesc = formatNumber($sumCobranca); echo EOF; $sumBruto = $sumValorBrutoCVs + $sumValorROsemCVs; $sumBrutoDesc = formatNumber($sumBruto); echo EOF; echo '
Resumo
Data Quantidade de CV's Valor Líquido Depositado Valor Comissão Valor Bruto Resumo de Operações Valor Bruto de CV's Operações sem CV's Valor sem CV's Cobranças{$resumo['data']} {$resumo['totalCvs']} {$resumo['valorLiquidoDesc']} {$resumo['valorComissaoDesc']} {$resumo['valorBrutoRODesc']} {$resumo['valorBrutoCVsDesc']} {$resumo['CountROsemCVs']} {$resumo['ValorROsemCVsDesc']} {$resumo['cobrancaDesc']}  {$sumTotalCvs} {$sumValorLiquidoDesc} {$sumValorComissaoDesc} {$sumValorBrutoRODesc} {$sumValorBrutoCVsDesc} {$sumCountROsemCVs} {$sumValorROsemCVsDesc} {$sumCobrancaDesc}  Total Bruto {$sumBrutoDesc}
'; if (count($valorPorComprovanteNaoEncontrados)) { echo "
"; echo ""; echo ""; echo EOF; $cont = 1; foreach ($valorPorComprovanteNaoEncontrados as $resumo) { foreach ($resumo as $valorCV) { echo EOF; $cont++; } } echo "
Cartões não encontrados
  Valor Data Venda Parcela Documento Autorização Mensagem Bandeira Produto{$cont} {$valorCV['valor']} {$valorCV['dtVenda']->format('d/m/Y')} {$valorCV['parcela']}/{$valorCV['totalParcelas']} {$valorCV['nsuDoc']} {$valorCV['codigoAutorizacao']} {$valorCV['mensagem']} {$valorCV['Bandeira']} {$valorCV['IdentificadorProdutoDesc']}
"; //echo ""; } if (count($resumos)) { $countSemCVS = 0; foreach ($resumos as $resumo) { foreach ($resumo['OperacoesSemCVs'] as $op) { $countSemCVS++; } } if ($countSemCVS) { echo "
"; echo ""; echo ""; echo EOF; $cont = 1; foreach ($resumos as $resumo) { foreach ($resumo['OperacoesSemCVs'] as $op) { $valorComissao_ = number_format($op['valorComissao'], 2, ',', ''); $valorLiquido_ = number_format($op['liquido'], 2, ',', ''); $valorTotal_ = number_format($op['total'], 2, ',', ''); echo EOF; $cont++; } } echo "
Comprovantes Faltantes
  Valor Comissao Líquido Data Venda Data Pagamento Taxa % Bandeira Numero RO Tipo{$cont} {$valorTotal_} {$valorComissao_} {$valorLiquido_} {$op['dtCaptura']->format('d/m/Y')} {$op['dtPrevPagamento']->format('d/m/Y')} {$op['taxaDeComissao']} {$op['Bandeira']} - {$op['codigoBandeira']} {$op['numeroRO']} {$op['IdentificadorProdutoDesc']} - {$op['IdentificadorProduto']}
"; } } echo "
"; echo "
"; echo "
"; } catch (\Exception $e) { dd($e); } ?>

The Versions

28/10 2016

dev-master

9999999-dev

Projeto para processar arquivo retorno no formato EDI

  Sources   Download

The Requires

  • php >=5.3.0

 

The Development Requires

by Flavio Ferreira

retorno edi cielo concilar

16/03 2016

1.0.4

1.0.4.0

Projeto para processar arquivo retorno no formato EDI

  Sources   Download

The Requires

  • php >=5.3.0

 

The Development Requires

by Flavio Ferreira

retorno edi cielo concilar

16/03 2016

1.0.3

1.0.3.0

Projeto para processar arquivo retorno no formato EDI

  Sources   Download

The Requires

  • php >=5.3.0

 

The Development Requires

by Flavio Ferreira

retorno edi cielo concilar

11/03 2016

1.0.2

1.0.2.0

Projeto para processar arquivo retorno no formato EDI

  Sources   Download

The Requires

  • php >=5.3.0

 

The Development Requires

by Flavio Ferreira

retorno edi cielo concilar

11/03 2016

1.0.1

1.0.1.0

Projeto para processar arquivo retorno no formato EDI

  Sources   Download

The Requires

  • php >=5.3.0

 

The Development Requires

by Flavio Ferreira

retorno edi cielo concilar

02/03 2016

1.0

1.0.0.0

Projeto para processar arquivo retorno no formato EDI

  Sources   Download

The Requires

  • php >=5.3.0

 

The Development Requires

by Flavio Ferreira

retorno edi cielo concilar