void RODesmontar() { /* * Cria a estrutura de registro. */ var resumo = new ArquivoResumo() { resumo = is_linha_atual.Substring(14, 7), estabelecimento = is_linha_atual.Substring(1, 10), parcela = is_linha_atual.Substring(21, 5), transacao = "PRE".Equals(is_linha_atual.Substring(26, 3)) ? "Vendas/Prev.Pagamento" : "DES".Equals(is_linha_atual.Substring(26, 3)) ? "Desagendamento de Parcelas" : "PAG".Equals(is_linha_atual.Substring(26, 3)) ? "Pagamento" : "AJU".Equals(is_linha_atual.Substring(26, 3)) ? "Ajuste a crédito ou Débito" : "ANT".Equals(is_linha_atual.Substring(26, 3)) ? "Pagamento Antecipado" : "TAR".Equals(is_linha_atual.Substring(26, 3)) ? "Tarifa Meios de Captura" : is_linha_atual.Substring(26, 3), prev_pagamento = FormatoDataExecutar(is_linha_atual.Substring(45, 8), "yyyyMMdd", "dd/MM/yyyy"), valor_bruto = FormatoValorExecutar(is_linha_atual.Substring(62, 13)), taxa_comissao = is_linha_atual.Substring(104, 4), vl_comissao = FormatoValorExecutar(is_linha_atual.Substring(109, 13)), vl_rejeitado = FormatoValorExecutar(is_linha_atual.Substring(76, 13)), vl_liquido = FormatoValorExecutar(is_linha_atual.Substring(142, 13)), situacao = "", produto = "", terminal = is_linha_atual.Substring(1, 10), chave = "" }; valor_total = 0; valor_total_liquido = 0; string estabelecimento = is_linha_atual.Substring(1, 10); if (io_hsm_totalizador_estabelecimento.Contains(estabelecimento)) { TotalizadorEstabelecimento totalizador_estabelecimento = (TotalizadorEstabelecimento)io_hsm_totalizador_estabelecimento[estabelecimento]; valor_total_liquido = totalizador_estabelecimento.total_realizado + FormatoValorExecutarDouble(resumo.vl_liquido); io_hsm_totalizador_estabelecimento.Remove(estabelecimento); io_hsm_totalizador_estabelecimento.Add(estabelecimento, new TotalizadorEstabelecimento { prev_pagamento = Convert.ToDateTime(FormatoDataExecutar(is_linha_atual.Substring(45, 8), "yyyyMMdd", "dd/MM/yyyy")), total_realizado = valor_total_liquido, estabelecimento = Convert.ToInt32(estabelecimento) }); } else { io_hsm_totalizador_estabelecimento.Add(estabelecimento, new TotalizadorEstabelecimento { prev_pagamento = Convert.ToDateTime(FormatoDataExecutar(is_linha_atual.Substring(45, 8), "yyyyMMdd", "dd/MM/yyyy")), total_realizado = FormatoValorExecutarDouble(resumo.vl_liquido), estabelecimento = Convert.ToInt32(estabelecimento) }); } /* * GUARDA O ULTIMO RO. */ is_ultimo_ro = is_linha_atual.Substring(311, 9); /* * Adiciona o ro na lista. */ io_arl_ro.Add(resumo); io_arl_cv = new ArrayList(); var lo_detalhado = new ArquivoDetalhado() { registro = "Resumo do Pagamento", estabelecimento = resumo.estabelecimento, transacao = resumo.transacao, RO = resumo.resumo, produto = resumo.produto, cartao = "", vl_bruto = resumo.valor_bruto, vl_liquido = resumo.vl_liquido, parcela = resumo.parcela, total_parcela = "", autorizacao = "", nsu = "" }; io_detalhado.Add(lo_detalhado); var lo_completo = new ArquivoCompleto() { registro = "Resumo do Pagamento", estabelecimento = resumo.estabelecimento, RO = resumo.resumo, parcela = resumo.parcela, total_parcela = "", filer = "", plano = "", tipo_transacao = resumo.transacao, apresentacao = "", prev_pagamento = resumo.prev_pagamento, envio_banco = "", cartao = "", sinal_valor_bruto = "+", valor_bruto = resumo.valor_bruto, sinal_comissao = "", comissao = resumo.vl_comissao, sinal_rejeitado = "", valor_rejeitado = resumo.vl_rejeitado, sinal_liquido = "", valor_liquido = resumo.vl_liquido, valor_total_venda = "", valor_prox_parcela = "", taxas = "", autorizacao = "", nsu_doc = "", banco = is_linha_atual.Substring(169, 4), agencia = is_linha_atual.Substring(173, 5), conta_corrente = is_linha_atual.Substring(178, 4), status_pagamento = "", motivo_rejeicao = "", cvs_aceitos = "", produto = resumo.produto, cvs_rejeitados = "", data_venda = "", data_captura = FormatoDataExecutar(is_linha_atual.Substring(29, 8), "yyyyMMdd", "dd/MM/yyyy"), origem_ajuste = "", valor_complementar = "", produto_financeiro = "", valor_antecipado = "", bandeira = "", registro_unico_RO = resumo.resumo, taxas_comissao = "", tarifa = "", meio_captura = "", terminal = resumo.estabelecimento }; io_completo.Add(lo_completo); valor_total = 0; valor_total_liquido = 0; if (io_hsm_totalizador_banco.Contains(lo_completo.banco)) { TotalizadorBanco totalizador_banco = (TotalizadorBanco)io_hsm_totalizador_banco[lo_completo.banco]; valor_total_liquido = totalizador_banco.total_realizado + FormatoValorExecutarDouble(resumo.vl_liquido); io_hsm_totalizador_banco.Remove(lo_completo.banco); io_hsm_totalizador_banco.Add(lo_completo.banco, new TotalizadorBanco { prev_pagamento = Convert.ToDateTime(FormatoDataExecutar(is_linha_atual.Substring(31, 6), "yyMMdd", "dd/MM/yy")), total_realizado = valor_total_liquido, banco = Convert.ToInt32(lo_completo.banco) }); } else { io_hsm_totalizador_banco.Add(lo_completo.banco, new TotalizadorBanco { prev_pagamento = Convert.ToDateTime(FormatoDataExecutar(is_linha_atual.Substring(31, 6), "yyMMdd", "dd/MM/yy")), total_realizado = FormatoValorExecutarDouble(resumo.vl_liquido), banco = Convert.ToInt32(lo_completo.banco) }); } }
private void CVRotativo(string a) { try { /* 8 */ var resumo = new ConciliacaoUseRedeEEVCComprovanteVendaStruct() { is_tipo_registro = 8, nm_tipo_registro = "CV - Rotativo", is_numero_filiacao_pv = Convert.ToDecimal(a.Substring(3, 9)), is_numero_resumo_vendas = Convert.ToInt64(string.IsNullOrEmpty(a.Substring(12, 9)) ? "0" : a.Substring(12, 9)), is_data_cv = Convert.ToDateTime(a.Substring(21, 2) + "/" + a.Substring(23, 2) + "/" + a.Substring(25, 4)), is_valor_bruto = Convert.ToDecimal(a.Substring(37, 15)) / 100, is_valor_gorjeta = Convert.ToDecimal(a.Substring(52, 15)) / 100, is_numero_cartao = a.Substring(67, 16), is_status_cv = TabelaIII(Convert.ToInt32(a.Substring(83, 3))), is_numero_cv = Convert.ToDecimal(a.Substring(86, 12)), is_numero_referencia = a.Substring(98, 13), is_valor_desconto = Convert.ToDecimal(a.Substring(111, 15)) / 100, is_numero_autorizacao = a.Substring(126, 6), is_hora_transcao = a.Substring(132, 2) + ":" + a.Substring(134, 2) + ":" + a.Substring(136, 2), is_tipo_captura = TabelaII(Convert.ToInt32(a.Substring(202, 1))), is_valor_liquido = Convert.ToDecimal(a.Substring(203, 15)) / 100, is_numero_terminal = a.Substring(218, 8), is_bandeira = TabelaI(a.Substring(229, 1)), taxa_cobrada = Math.Abs(Convert.ToDecimal(((Convert.ToDecimal(a.Substring(203, 15)) / 100) * 100) / (Convert.ToDecimal(a.Substring(37, 15)) / 100)) - 100), is_data_credito = Convert.ToDateTime(data_pagamento), rede = 1 }; io_arl_cv.Add(resumo); estabelecimento = a.Substring(3, 9); if (io_hsm_totalizador_estabelecimento.Contains(estabelecimento + data_pagamento)) { TotalizadorEstabelecimento totalizador_estabelecimento = (TotalizadorEstabelecimento)io_hsm_totalizador_estabelecimento[estabelecimento + data_pagamento]; io_hsm_totalizador_estabelecimento.Remove(estabelecimento + data_pagamento); io_hsm_totalizador_estabelecimento.Add(estabelecimento + data_pagamento, new TotalizadorEstabelecimento { prev_pagamento = Convert.ToDateTime(data_pagamento), total_realizado = totalizador_estabelecimento.total_realizado + (Convert.ToDecimal(a.Substring(203, 15)) / 100), estabelecimento = Convert.ToInt32(estabelecimento) }); } else { io_hsm_totalizador_estabelecimento.Add(estabelecimento + data_pagamento, new TotalizadorEstabelecimento { prev_pagamento = Convert.ToDateTime(data_pagamento), total_realizado = (Convert.ToDecimal(a.Substring(203, 15)) / 100), estabelecimento = Convert.ToInt32(estabelecimento) }); } if (io_hsm_totalizador_banco.Contains(banco + data_pagamento)) { TotalizadorBanco totalizador_banco = (TotalizadorBanco)io_hsm_totalizador_banco[banco + data_pagamento]; io_hsm_totalizador_banco.Remove(banco + data_pagamento); io_hsm_totalizador_banco.Add(banco + data_pagamento, new TotalizadorBanco { data_prevista = Convert.ToDateTime(data_pagamento), total_realizado = totalizador_banco.total_realizado + (Convert.ToDecimal(a.Substring(203, 15)) / 100), id_banco = Convert.ToInt32(banco) }); } else { io_hsm_totalizador_banco.Add(banco + data_pagamento, new TotalizadorBanco { data_prevista = Convert.ToDateTime(data_pagamento), total_realizado = (Convert.ToDecimal(a.Substring(203, 15)) / 100), id_banco = Convert.ToInt32(banco) }); } Decimal valor_total = 0; Decimal valor_total_liquido = 0; if (io_hsm_totalizador_produto.Contains(produto + data_pagamento)) { TotalizadorProduto totalizador_produto = (TotalizadorProduto)io_hsm_totalizador_produto[produto + data_pagamento]; valor_total = totalizador_produto.valor_bruto + (Convert.ToDecimal(a.Substring(37, 15)) / 100); valor_total_liquido = totalizador_produto.valor_liquido + (Convert.ToDecimal(a.Substring(203, 15)) / 100); io_hsm_totalizador_produto.Remove(produto + data_pagamento); io_hsm_totalizador_produto.Add(produto + data_pagamento, new TotalizadorProduto { data_prevista = Convert.ToDateTime(data_pagamento), valor_bruto = valor_total, valor_liquido = valor_total_liquido, ds_produto = produto, rede = "Userede" }); } else { io_hsm_totalizador_produto.Add(produto + data_pagamento, new TotalizadorProduto { data_prevista = Convert.ToDateTime(data_pagamento), valor_bruto = (Convert.ToDecimal(a.Substring(37, 15)) / 100), valor_liquido = (Convert.ToDecimal(a.Substring(203, 15)) / 100), ds_produto = produto, rede = "Userede" }); } } catch (Exception e) { throw e; } }
void CVDesmontar() { if (is_linha_atual.Substring(0, 2).Equals("10")) { is_numero_agencia = is_linha_atual.Substring(56, 4); is_numero_conta = is_linha_atual.Substring(60, 10); } else { var lo_cv = new ArquivoTransacao() { num_resumo = is_linha_atual.Substring(311, 9), registro = "Registro de Pagamento", estabelecimento = is_linha_atual.Substring(3, 7) + is_linha_atual.Substring(24, 4), num_logico = is_linha_atual.Substring(3, 7) + is_linha_atual.Substring(24, 4), dt_venda = FormatoDataExecutar(is_linha_atual.Substring(42, 8), "yyyyMMdd", "dd/MM/yyyy"), cartao = "", vl_venda = FormatoValorExecutar(is_linha_atual.Substring(60, 15)), parcela = is_linha_atual.Substring(58, 2), total_parcela = "", autorizacao = "", nsu = is_linha_atual.Substring(50, 8) }; io_arl_cv.Add(lo_cv); io_arl_just_cv.Add(lo_cv); //io_hsm_cv.Add(is_ultimo_ro, io_arl_cv); var lo_detalhado1 = new ArquivoDetalhado() { registro = "Comprovante de Venda", estabelecimento = lo_cv.estabelecimento, transacao = "", RO = lo_cv.num_resumo, produto = "", cartao = lo_cv.cartao, vl_bruto = lo_cv.vl_venda, vl_liquido = "", parcela = lo_cv.parcela, total_parcela = lo_cv.total_parcela, autorizacao = lo_cv.autorizacao, nsu = lo_cv.nsu }; io_detalhado.Add(lo_detalhado1); var lo_completo = new ArquivoCompleto() { registro = "Comprovante de Venda", estabelecimento = lo_cv.estabelecimento, RO = lo_cv.num_resumo, parcela = lo_cv.parcela, total_parcela = lo_cv.total_parcela, filer = "", plano = "", tipo_transacao = "", apresentacao = "", prev_pagamento = "", envio_banco = "", cartao = lo_cv.cartao, sinal_valor_bruto = "+", valor_bruto = lo_cv.vl_venda, sinal_comissao = "", comissao = "", sinal_rejeitado = "", valor_rejeitado = "", sinal_liquido = "+", valor_liquido = FormatoValorExecutar(is_linha_atual.Substring(107, 15)), valor_total_venda = "", valor_prox_parcela = "", taxas = "", autorizacao = "", nsu_doc = lo_cv.nsu, banco = "", agencia = "", conta_corrente = "", status_pagamento = "", motivo_rejeicao = "", cvs_aceitos = "", produto = "", cvs_rejeitados = "", data_venda = lo_cv.dt_venda, data_captura = "", origem_ajuste = "", valor_complementar = "", produto_financeiro = "", valor_antecipado = "", bandeira = "", registro_unico_RO = lo_cv.num_resumo, // is_linha_atual.Substring(11, 7), taxas_comissao = "", tarifa = "", meio_captura = "", terminal = "" }; io_completo.Add(lo_completo); valor_total = 0; valor_total_liquido = 0; if (io_hsm_totalizador_banco.Contains(is_numero_agencia)) { TotalizadorBanco totalizador_banco = (TotalizadorBanco)io_hsm_totalizador_banco[is_numero_agencia]; valor_total_liquido = totalizador_banco.total_realizado + FormatoValorExecutarDouble(resumo.vl_liquido); io_hsm_totalizador_banco.Remove(is_numero_agencia); io_hsm_totalizador_banco.Add(is_numero_agencia, new TotalizadorBanco { prev_pagamento = Convert.ToDateTime(FormatoDataExecutar(is_linha_atual.Substring(31, 6), "yyMMdd", "dd/MM/yy")), total_realizado = valor_total_liquido, banco = Convert.ToInt32(is_numero_agencia) }); } else { io_hsm_totalizador_banco.Add(is_numero_agencia, new TotalizadorBanco { prev_pagamento = Convert.ToDateTime(FormatoDataExecutar(is_linha_atual.Substring(31, 6), "yyMMdd", "dd/MM/yy")), total_realizado = FormatoValorExecutarDouble(resumo.vl_liquido), banco = Convert.ToInt32(is_numero_agencia) }); } } }
private void ParcelasDesmontar(string a) { var parcelas = new ConciliacaoUseRedeParcelasStruct() { is_tipo_registro = Convert.ToInt32(a.Substring(0, 3)), is_numero_filiacao_pv = Convert.ToDecimal(a.Substring(3, 9)), is_numero_resumo_vendas = a.Substring(12, 9), is_data_rv = Convert.ToDateTime(a.Substring(21, 2) + "/" + a.Substring(23, 2) + "/" + a.Substring(25, 4)), numero_parcela = Convert.ToInt32(a.Substring(37, 2)), valor_parcela_bruto = (Convert.ToDecimal(a.Substring(39, 15)) / 100), valor_desconto_parcela = (Convert.ToDecimal(a.Substring(54, 15)) / 100), valor_parcela_liquida = (Convert.ToDecimal(a.Substring(69, 15)) / 100), data_credito = Convert.ToDateTime(a.Substring(84, 2) + "/" + a.Substring(86, 2) + "/" + a.Substring(88, 4)), rede = 1 }; io_arl_parcelas.Add(parcelas); /* 14 */ try { data_pagamento = a.Substring(84, 2) + "/" + a.Substring(86, 2) + "/" + a.Substring(88, 4); estabelecimento = a.Substring(3, 9); if (io_hsm_totalizador_estabelecimento.Contains(estabelecimento + data_pagamento)) { TotalizadorEstabelecimento totalizador_estabelecimento = (TotalizadorEstabelecimento)io_hsm_totalizador_estabelecimento[estabelecimento + data_pagamento]; io_hsm_totalizador_estabelecimento.Remove(estabelecimento + data_pagamento); io_hsm_totalizador_estabelecimento.Add(estabelecimento + data_pagamento, new TotalizadorEstabelecimento { prev_pagamento = Convert.ToDateTime(data_pagamento), total_realizado = totalizador_estabelecimento.total_realizado + (Convert.ToDecimal(a.Substring(69, 15)) / 100), estabelecimento = Convert.ToInt32(estabelecimento) }); } else { io_hsm_totalizador_estabelecimento.Add(estabelecimento + data_pagamento, new TotalizadorEstabelecimento { prev_pagamento = Convert.ToDateTime(data_pagamento), total_realizado = (Convert.ToDecimal(a.Substring(69, 15)) / 100), estabelecimento = Convert.ToInt32(estabelecimento) }); } if (io_hsm_totalizador_banco.Contains(banco + data_pagamento)) { TotalizadorBanco totalizador_banco = (TotalizadorBanco)io_hsm_totalizador_banco[banco + data_pagamento]; io_hsm_totalizador_banco.Remove(banco + data_pagamento); io_hsm_totalizador_banco.Add(banco + data_pagamento, new TotalizadorBanco { data_prevista = Convert.ToDateTime(data_pagamento), total_realizado = totalizador_banco.total_realizado + (Convert.ToDecimal(a.Substring(69, 15)) / 100), id_banco = Convert.ToInt32(banco) }); } else { io_hsm_totalizador_banco.Add(banco + data_pagamento, new TotalizadorBanco { data_prevista = Convert.ToDateTime(data_pagamento), total_realizado = (Convert.ToDecimal(a.Substring(69, 15)) / 100), id_banco = Convert.ToInt32(banco) }); } Decimal valor_total = 0; Decimal valor_total_liquido = 0; if (io_hsm_totalizador_produto.Contains(produto + data_pagamento)) { TotalizadorProduto totalizador_produto = (TotalizadorProduto)io_hsm_totalizador_produto[produto + data_pagamento]; valor_total = totalizador_produto.valor_bruto + (Convert.ToDecimal(a.Substring(39, 15)) / 100); valor_total_liquido = totalizador_produto.valor_liquido + (Convert.ToDecimal(a.Substring(69, 15)) / 100); io_hsm_totalizador_produto.Remove(produto + data_pagamento); io_hsm_totalizador_produto.Add(produto + data_pagamento, new TotalizadorProduto { data_prevista = Convert.ToDateTime(data_pagamento), valor_bruto = valor_total, valor_liquido = valor_total_liquido, ds_produto = produto, rede = "Userede" }); } else { io_hsm_totalizador_produto.Add(produto + data_pagamento, new TotalizadorProduto { data_prevista = Convert.ToDateTime(data_pagamento), valor_bruto = (Convert.ToDecimal(a.Substring(39, 15)) / 100), valor_liquido = (Convert.ToDecimal(a.Substring(69, 15)) / 100), ds_produto = produto, rede = "Userede" }); } } catch (Exception e) { throw e; } }
private void TotalPVDesmontar(string[] a) { var resumo = new ConciliacaoUseRedeEEVDTotalPontoVendaStruct() { is_tipo_registro = Convert.ToInt32(a[0]), nm_tipo_registro = "Total ponto de venda", is_numero_ponto_venda = Convert.ToDecimal(a[1]).ToString(), is_quantidade_resumo_vendas_acatados = Convert.ToDecimal(a[2]), is_quantidade_comprovante_vendas = Convert.ToDecimal(a[3]), is_total_bruto = Convert.ToDecimal(a[4]) / 100, is_total_desconto = Convert.ToDecimal(a[5]) / 100, is_total_liquido = Convert.ToDecimal(a[6]) / 100, is_valor_bruto_predatado = Convert.ToDecimal(a[7]) / 100, is_valor_desconto_predatado = Convert.ToDecimal(a[8]) / 100, is_valor_liquido_predatado = Convert.ToDecimal(a[9]) / 100, rede = 1 }; io_arl_pv.Add(resumo); string estabelecimento = a[1]; if (io_hsm_totalizador_estabelecimento.Contains(estabelecimento)) { TotalizadorEstabelecimento totalizador_estabelecimento = (TotalizadorEstabelecimento)io_hsm_totalizador_estabelecimento[estabelecimento]; io_hsm_totalizador_estabelecimento.Remove(estabelecimento); io_hsm_totalizador_estabelecimento.Add(estabelecimento, new TotalizadorEstabelecimento { prev_pagamento = Convert.ToDateTime(data_pagamento), total_realizado = totalizador_estabelecimento.total_realizado + resumo.is_total_liquido, estabelecimento = Convert.ToInt32(estabelecimento) }); } else { io_hsm_totalizador_estabelecimento.Add(estabelecimento, new TotalizadorEstabelecimento { prev_pagamento = Convert.ToDateTime(data_pagamento), total_realizado = resumo.is_total_liquido, estabelecimento = Convert.ToInt32(estabelecimento) }); } if (io_hsm_totalizador_banco.Contains(banco)) { TotalizadorBanco totalizador_banco = (TotalizadorBanco)io_hsm_totalizador_banco[banco]; io_hsm_totalizador_banco.Remove(banco); io_hsm_totalizador_banco.Add(banco, new TotalizadorBanco { data_prevista = Convert.ToDateTime(data_pagamento), total_realizado = totalizador_banco.total_realizado + resumo.is_total_liquido, id_banco = Convert.ToInt32(banco) }); } else { io_hsm_totalizador_banco.Add(banco, new TotalizadorBanco { data_prevista = Convert.ToDateTime(data_pagamento), total_realizado = resumo.is_total_liquido, id_banco = Convert.ToInt32(banco) }); } Decimal valor_total = 0; Decimal valor_total_liquido = 0; if (io_hsm_totalizador_produto.Contains("debito")) { TotalizadorProduto totalizador_produto = (TotalizadorProduto)io_hsm_totalizador_produto["debito"]; valor_total = totalizador_produto.valor_bruto + resumo.is_total_bruto; valor_total_liquido = totalizador_produto.valor_liquido + resumo.is_total_liquido; io_hsm_totalizador_produto.Remove("debito"); io_hsm_totalizador_produto.Add("debito", new TotalizadorProduto { data_prevista = Convert.ToDateTime(data_pagamento), valor_bruto = valor_total, valor_liquido = valor_total_liquido, ds_produto = "Débito", rede = "Userede" }); } else { io_hsm_totalizador_produto.Add("debito", new TotalizadorProduto { data_prevista = Convert.ToDateTime(data_pagamento), valor_bruto = resumo.is_total_bruto, valor_liquido = resumo.is_total_liquido, ds_produto = "Débito", rede = "Userede" }); } }