Ejemplo n.º 1
0
        public string GerarCsvRv(ExtratoRV extratos)
        {
            StringBuilder dadosExtratoCsv = new StringBuilder();

            //Campos que se repetem na consulta titular

            //dadosExtratoCsv.Append("\"" + extratos.Matricula +"\";");
            //dadosExtratoCsv.Append(extratos.Nome + ";");
            //dadosExtratoCsv.Append(extratos.Situacao + ";");
            //dadosExtratoCsv.Append(extratos.Nascimento.ToString() + ";");

            dadosExtratoCsv.Append(extratos.Salario.ToString() + ";");
            dadosExtratoCsv.Append(extratos.MesCompetencia.ToString() + ";");
            dadosExtratoCsv.Append(extratos.CompetenciaInicial.ToString() + ";");
            dadosExtratoCsv.Append(extratos.CompetenciaFinal.ToString() + ";");
            dadosExtratoCsv.Append(extratos.CodigoAgencia.ToString() + ";");
            dadosExtratoCsv.Append(extratos.ValidadeInicial.ToString() + ";");
            dadosExtratoCsv.Append(extratos.ValidadeFinal.ToString() + ";");
            dadosExtratoCsv.Append(extratos.Banco.ToString() + ";");
            dadosExtratoCsv.Append(extratos.ContaCorrente.ToString() + ";");
            dadosExtratoCsv.Append(extratos.ValorLiquidoCredito.ToString() + ";");
            dadosExtratoCsv.Append(extratos.Margem.ToString() + ";");
            foreach (var rubrica in extratos.Rubricas)
            {
                dadosExtratoCsv.Append(rubrica.Codigo.ToString() + ";");
                dadosExtratoCsv.Append(rubrica.Nome.ToString() + ";");
                dadosExtratoCsv.Append(rubrica.Valor.ToString() + ";");
                dadosExtratoCsv.Append(rubrica.Sinal.ToString() + ";");
            }

            dadosExtratoCsv.Append("\n");

            return(dadosExtratoCsv.ToString());
        }
Ejemplo n.º 2
0
        public ExtratoRV ProcessarResultadoRv(string resultadoBanco)
        {
            ExtratoRV extrato = new ExtratoRV();

            //Campos que já vieram na consulta titular

            //extrato.Matricula = resultadoBanco.Substring(resultadoBanco.IndexOf("NB") + 61, 10).Trim();
            //extrato.Nome = resultadoBanco.Substring(resultadoBanco.IndexOf("NB") + 73, 35).Trim();
            //extrato.Situacao= resultadoBanco.Substring(resultadoBanco.IndexOf("Situacao:") + 10, 7).Trim();

            if (!resultadoBanco.Equals("") /*&& !resultadoBanco.Equals("Erro de tentativas.")*/)
            {
                if (resultadoBanco.Substring(resultadoBanco.IndexOf("Nascimento:") + 12, 10).Trim().Equals(""))
                {
                    extrato.Nascimento = Convert.ToDateTime(resultadoBanco.Substring(resultadoBanco.IndexOf("Nascimento:") + 12, 10).Trim());
                }
                else
                {
                    extrato.Nascimento = null;
                }

                try
                {
                    extrato.Salario = Convert.ToDouble(resultadoBanco.Substring(resultadoBanco.IndexOf("MR:") + 3, 19).Trim().Replace(".", ""));
                }
                catch (FormatException)
                {
                    extrato.Salario = null;
                }
                if (!resultadoBanco.Substring(resultadoBanco.IndexOf("Cpt") + 4, 7).Trim().Equals(""))
                {
                    extrato.MesCompetencia = Convert.ToDateTime("01/" + resultadoBanco.Substring(resultadoBanco.IndexOf("Cpt") + 4, 7).Trim() + " 00:00:00");
                }

                if (!resultadoBanco.Substring(resultadoBanco.IndexOf("Cpt") + 17, 10).Trim().Equals(""))
                {
                    extrato.CompetenciaInicial = Convert.ToDateTime(resultadoBanco.Substring(resultadoBanco.IndexOf("Cpt") + 16, 10).Trim());
                }

                if (!resultadoBanco.Substring(resultadoBanco.IndexOf("Cpt") + 27, 10).Trim().Equals(""))
                {
                    extrato.CompetenciaFinal = Convert.ToDateTime(resultadoBanco.Substring(resultadoBanco.IndexOf("Cpt") + 27, 10).Trim());
                }

                extrato.CodigoAgencia = resultadoBanco.Substring(resultadoBanco.IndexOf("Vld") - 10, 10).Trim();

                if (!resultadoBanco.Substring(resultadoBanco.IndexOf("Vld") + 4, 10).Trim().Equals(""))
                {
                    extrato.ValidadeInicial = Convert.ToDateTime(resultadoBanco.Substring(resultadoBanco.IndexOf("Vld") + 4, 10).Trim());
                }

                if (!resultadoBanco.Substring(resultadoBanco.IndexOf("Vld") + 15, 10).Trim().Equals(""))
                {
                    extrato.ValidadeFinal = Convert.ToDateTime(resultadoBanco.Substring(resultadoBanco.IndexOf("Vld") + 15, 10).Trim());
                }

                if (!resultadoBanco.Substring(resultadoBanco.IndexOf("Banco") + 6, 6).Trim().Equals(""))
                {
                    extrato.Banco = Convert.ToInt16(resultadoBanco.Substring(resultadoBanco.IndexOf("Banco") + 6, 6).Trim());
                }

                if ((!resultadoBanco.Substring(resultadoBanco.IndexOf("CC:") + 4, 22).Trim().Equals("")) && (!ContemLetras(resultadoBanco.Substring(resultadoBanco.IndexOf("CC:") + 4, 22).Trim())))
                {
                    extrato.ContaCorrente = resultadoBanco.Substring(resultadoBanco.IndexOf("CC:") + 4, 22).Trim();
                }
                else
                {
                    extrato.ContaCorrente = "";
                }
                extrato.ValorLiquidoCredito = Convert.ToDouble(resultadoBanco.Substring(resultadoBanco.IndexOf(" Val. Liq. Credito R$") + 27, 9).Trim().Replace(".", ""));
                extrato.Rubricas            = new List <Rubrica>();
                MemoryStream bytesDeLeitura = new MemoryStream();
                bytesDeLeitura = ConverterTextoStreamMemoria(resultadoBanco);
                StreamReader LinhaLeitura   = new StreamReader(bytesDeLeitura);
                int          contadorLinhas = 1;

                while (true)
                {
                    string textoLinha = LinhaLeitura.ReadLine();

                    if (textoLinha.StartsWith(" Val. Liq. Credito R$"))
                    {
                        break;
                    }

                    if (contadorLinhas > 12 && !textoLinha.StartsWith("   ") && textoLinha.StartsWith(" "))
                    {
                        if ((!textoLinha.Substring(1, 3).Trim().Equals("")) && (!ContemLetras(textoLinha.Substring(1, 3).Trim())))
                        {
                            Rubrica rubrica = new Rubrica();

                            rubrica.Codigo = Convert.ToInt16(textoLinha.Substring(1, 3));

                            rubrica.Nome = textoLinha.Substring(5, 22).Trim();

                            if (!textoLinha.Substring(27, 9).Trim().Equals("") && (!ContemLetras(textoLinha.Substring(27, 9).Trim())))
                            {
                                rubrica.Valor = Convert.ToDouble(textoLinha.Substring(27, 9).Replace(".", ""));
                            }

                            rubrica.Sinal = textoLinha.Substring(37, 1).Trim();

                            extrato.Rubricas.Add(rubrica);
                        }
                    }

                    contadorLinhas++;
                }
                return(extrato);
            }
            else
            {
                return(null);
            }
        }