コード例 #1
0
 public int Inserir(TituloReceber tituloReceber)
 {
     // tituloReceber.RegistroAtivo = true;
     context.TitulosReceber.Add(tituloReceber);
     context.SaveChanges();
     return(tituloReceber.Id);
 }
コード例 #2
0
        public void DescontosAdicionais(StringBuilder b, TituloReceber titulo)
        {
            TituloReceber.Desconto desconto2 = titulo.Descontos.ElementAt(1);
            TituloReceber.Desconto desconto3 = titulo.Descontos.ElementAtOrDefault(2);


            b.Append("5");                         //1-1
            b.AppendNumero(2, "07");               //2-3
            b.AppendData(desconto2.DataLimite);    //4-9 Data Desconto 2
            b.AppendDinheiro(17, desconto2.Valor); //10-26 Valor Desconto 2

            if (desconto3 != null)
            {
                b.AppendData(desconto3.DataLimite);    //27-32 Data Desconto 3
                b.AppendDinheiro(17, desconto3.Valor); //33-49 Valor Desconto 3
            }
            else
            {
                b.Append(new string('0', 23));
            }

            b.Append(new string(' ', 345)); //50-394
            b.AppendNumero(6, _index++);    //395-400
            b.Append(Environment.NewLine);
        }
コード例 #3
0
        public ActionResult Editar(TituloReceber tituloReceber)
        {
            var alterou   = repository.Alterar(tituloReceber);
            var resultado = new { status = alterou };

            return(RedirectToAction("Index", new { id = resultado }));
        }
コード例 #4
0
        public static string GerarLinhaDetalhe(TituloReceber titulo)
        {
            var cnab = new BancoBradesco400(Opcoes());
            var sb = new StringBuilder();
            cnab.Detalhe1(sb, titulo);

            return sb.ToString();
        }
コード例 #5
0
        public void Detalhe1(StringBuilder b, TituloReceber titulo)
        {
            b.Append("1");                               //1-1
            b.AppendNumero(2, "02");                     //02-03
            b.AppendNumero(14, Opcoes.CnpjBeneficiario); //04-17

            //inicio codigo empresa santander
            b.AppendNumero(4, Opcoes.NumeroAgencia);       //18-21
            b.AppendNumero(8, Opcoes.CodigoEmpresa);       //22-29
            b.AppendNumero(8, Opcoes.NumeroContaCorrente); //30-37
            //termino codigo empresa santander

            b.AppendNumero(25, titulo.NumeroTitulo);                                                                                 //38-62
            b.AppendNumero(7, titulo.NossoNumero);                                                                                   //63-69
            b.AppendNumero(1, CalcularDvNossoNumero(titulo.NossoNumero));                                                            //70-70
            b.AppendData(titulo.Vencimento);                                                                                         //71-76
            b.Append(' ');                                                                                                           // 77-77
            b.Append(titulo.CobraMulta ? "4" : "0");                                                                                 //78-78
            b.AppendNumero(4, Math.Round(titulo.PercentualMulta, 2).ToString("#.00", CultureInfo.InvariantCulture));                 //79-82
            b.Append("00");                                                                                                          //83-84
            b.Append(new string('0', 13));                                                                                           //85-97 ????
            b.Append(new string(' ', 4));                                                                                            //98-101
            b.Append("000000");                                                                                                      //102-107
            b.AppendTexto(1, Opcoes.Carteira);                                                                                       //108-108
            b.Append("01");                                                                                                          //109-110
            b.AppendNumero(10, ++Opcoes.ContadorTitulos);                                                                            //111-120
            b.AppendData(titulo.Vencimento);                                                                                         //121-126
            b.AppendDinheiro(13, titulo.Valor);                                                                                      //127-139
            b.AppendTexto(3, Opcoes.CodigoBanco);
            b.Append("00000");                                                                                                       //143-147
            b.Append("01");                                                                                                          //148-149
            b.Append("N");                                                                                                           //150-150
            b.AppendData(titulo.Emissao);                                                                                            //151-156
            b.Append("00");                                                                                                          //157-158
            b.Append("00");                                                                                                          //159-160
            b.AppendDinheiro(13, Math.Round(titulo.PercentualMoraDiaAtraso * titulo.Valor / 100, 2, MidpointRounding.AwayFromZero)); //161-173
            b.Append(new string('0', 6));                                                                                            //174-179
            b.Append(new string('0', 13));                                                                                           //180-192
            b.Append(new string('0', 13));                                                                                           //193-205
            b.Append(new string('0', 13));                                                                                           //206-218
            b.AppendNumero(2, titulo.PessoaJuridica() ? "02" : "01");                                                                //219-220
            b.AppendNumero(14, titulo.CpfCnpj);                                                                                      //221-234
            b.AppendTexto(40, titulo.NomePagador);                                                                                   //235-274
            b.AppendTexto(40, titulo.EnderecoCompleto);                                                                              //275-314
            b.AppendTexto(12, titulo.Bairro);                                                                                        //315-326
            b.AppendNumero(8, titulo.Cep);                                                                                           //327-331
            b.AppendTexto(15, titulo.Cidade);                                                                                        //335-349
            b.AppendTexto(2, titulo.UF);                                                                                             //350-351
            b.Append(new string(' ', 30));                                                                                           //352-381
            b.Append(" ");                                                                                                           //382-382
            b.Append("I");                                                                                                           //383-383 por e-mail pediram para chumbar I. Documentação ruim
            b.Append("60");                                                                                                          //384-385 por e-mail pediram para chumbar 60. Documentação ruim
            b.Append(new string(' ', 6));                                                                                            //386-391
            b.Append("00");                                                                                                          //392-393
            b.Append(" ");                                                                                                           //394-394
            b.AppendNumero(6, _index++);                                                                                             //395-400
            b.Append(Environment.NewLine);
        }
コード例 #6
0
        public ActionResult Cadastro(TituloReceber tituloReceber)
        {
            tituloReceber.RegistroAtivo = true;
            tituloReceber.Status        = TituloReceber.StatusPendente;
            int id        = repository.Inserir(tituloReceber);
            var resultado = new { id = id };

            return(RedirectToAction("Index", resultado));
        }
コード例 #7
0
 public void Detalhe2(StringBuilder b, TituloReceber titulo)
 {
     b.Append('2');                                          //1-1
     b.Append('2');                                          //2-2 porcentagem
     b.AppendData(titulo.Vencimento.AddDays(1), "ddMMaaaa"); //3-10
     b.AppendDinheiro(13, titulo.PercentualMulta);           //11-23
     b.Append(new string(' ', 370));                         //24-394
     b.AppendNumero(6, _index++);                            //395-400
     b.Append(Environment.NewLine);
 }
コード例 #8
0
        public static string GerarLinhaDetalhe(TituloReceber titulo)
        {
            var cnab = new BancoDoBrasil400(Opcoes());
            var sb   = new StringBuilder();

            titulo.CalcularDescontos(titulo);
            cnab.DetalheMulta(sb, titulo);

            return(sb.ToString());
        }
コード例 #9
0
        public static string GerarLinhaDetalhe3(TituloReceber titulo)
        {
            var cnab = new BancoItau400(Opcoes());
            var sb   = new StringBuilder();

            var batch1 = titulo.RateioCredito.Batch(3).First();

            cnab.Detalhe3(sb, titulo.NossoNumero, batch1);

            return(sb.ToString());
        }
コード例 #10
0
 public void DetalheMulta(StringBuilder b, TituloReceber titulo)
 {
     b.Append('5');                                          //1-1
     b.Append("99");                                         //2-3
     b.Append('2');                                          //4-4
     b.AppendData(titulo.Vencimento.AddDays(1));             //5-10
     b.Append(new string('0', 5));                           //11-15
     b.AppendDinheiro(7, titulo.PercentualMulta);            //14-22
     b.AppendNumero(3, titulo.DiasAdicionaisAposVencimento); //23-25
     b.Append(new string('0', 369));                         //26-394
     b.AppendNumero(6, _index++);                            //395-400
     b.Append(Environment.NewLine);
 }
コード例 #11
0
 public void Detalhe1(StringBuilder b, TituloReceber titulo)
 {
     b.Append("1");                                                                                                    //1-1
     b.AppendTexto(3, "AAA");                                                                                          //02-04
     b.Append(new string(' ', 12));                                                                                    //5-16
     b.Append("ABB");                                                                                                  //17-19
     b.Append(new string(' ', 28));                                                                                    //20-47
     b.AppendNumero(9, titulo.NossoNumero + CalcularDv(titulo));                                                       //48-56 - importante: já trazer no formato AABXXXXX do seu backend.
     b.Append(new string(' ', 6));                                                                                     //57-62
     b.AppendData(DateTime.Now, "yyyyMMdd");                                                                           //63-70 Data de instrução??
     b.Append(' ');                                                                                                    //71
     b.Append('N');                                                                                                    //72, 'S' para a sicredi fazer a postagem
     b.Append(' ');                                                                                                    //73
     b.Append('B');                                                                                                    //74
     b.Append("00");                                                                                                   //75-76
     b.Append("00");                                                                                                   //77-78
     b.Append(new string(' ', 4));                                                                                     //79-82
     b.Append(new string('0', 10));                                                                                    //83-92
     b.AppendNumero(4, Math.Round(titulo.PercentualMulta, 2).ToString("#.00", CultureInfo.InvariantCulture));          //93-96
     b.Append(new string(' ', 12));                                                                                    //97-108
     b.Append("01");                                                                                                   //109-110
     b.AppendTexto(10, titulo.NumeroTitulo);                                                                           //111-120
     b.AppendData(titulo.Vencimento);                                                                                  //121-126
     b.AppendDinheiro(13, titulo.Valor);                                                                               //127-139
     b.Append(new string(' ', 9));                                                                                     //140-148
     b.Append("AN");                                                                                                   //149-150
     b.AppendData(titulo.Emissao);                                                                                     //151-156
     b.Append("00");                                                                                                   //157-158
     b.Append("00");                                                                                                   //159-160
     b.AppendNumero(13, Math.Round(titulo.PercentualMoraDiaAtraso, 2).ToString("#.00", CultureInfo.InvariantCulture)); //161-173
     b.Append(new string('0', 6));                                                                                     //174-179
     b.Append(new string('0', 13));                                                                                    //180-192
     b.Append("00");                                                                                                   //193-194
     b.Append("00");                                                                                                   //195-196
     b.Append(new string('0', 9));                                                                                     //197-205
     b.Append(new string('0', 13));                                                                                    //206-218
     b.AppendNumero(2, titulo.PessoaJuridica() ? "20" : "10");                                                         //219-220
     b.AppendNumero(14, titulo.CpfCnpj);                                                                               //221-234
     b.AppendTexto(40, titulo.NomePagador);                                                                            //235-274
     b.AppendTexto(40, titulo.EnderecoCompleto);                                                                       //275-314
     b.Append(new string('0', 5));                                                                                     //315-319
     b.Append(new string('0', 6));                                                                                     //320-325
     b.Append(' ');                                                                                                    //326-326
     b.AppendNumero(8, titulo.Cep);                                                                                    //327-334
     b.Append(new string('0', 5));                                                                                     //335-339
     b.Append(new string('0', 14));                                                                                    //340-353
     b.Append(new string(' ', 41));                                                                                    //354-394
     b.AppendNumero(6, _index++);                                                                                      //395-400
     b.Append(Environment.NewLine);
 }
コード例 #12
0
        public string CalcularDv(TituloReceber titulo)
        {
            if (Opcoes.NumeroAgencia.Length > 4 || Opcoes.CodigoUaSicredi.Length > 2)
            {
                throw new Exception("Numero agencia ou código UA invalidos");
            }


            //da documentação: "Relacionar os códigos da Cooperativa (aaaa), posto beneficiário (pp), beneficiário (ccccc), ano atual (yy), byte
            //de geração do Nosso Número(b) e o número sequencial do beneficiário(nnnnn): aaaappcccccyybnnnnn;"

            var ano   = titulo.NossoNumero.Substring(0, 2);
            var bytee = titulo.NossoNumero.Substring(2, 1);
            var seq   = titulo.NossoNumero.Substring(3, 5);


            return(CalcularDv(Opcoes.CodigoEmpresa, Opcoes.NumeroAgencia, Opcoes.CodigoUaSicredi, int.Parse(ano), int.Parse(bytee), int.Parse(seq)));
        }
コード例 #13
0
 public void Detalhe1(StringBuilder b, TituloReceber titulo)
 {
     b.Append("100000 000000000000 0");//1-20
     b.Append(Opcoes.Carteira.PadLeft(3, '0'));
     b.AppendNumero(5, Opcoes.NumeroAgencia);
     b.AppendNumero(7, Opcoes.NumeroContaCorrente);                                                           //30-36
     b.Append(Opcoes.DigitoContaCorrente);                                                                    //37-37
     b.AppendNumero(25, titulo.NumeroTitulo);                                                                 //38-62
     b.Append("000");                                                                                         //63-65
     b.Append(titulo.CobraMulta ? "2" : "0");                                                                 //66-66
     b.AppendNumero(4, Math.Round(titulo.PercentualMulta, 2).ToString("#.00", CultureInfo.InvariantCulture)); //67-70
     b.AppendNumero(11, titulo.NossoNumero);                                                                  //71-82
     b.Append(CalcularDVNossoNumero(Opcoes.Carteira, titulo.NossoNumero.PadLeft(11, '0')));
     b.Append("0000000000");                                                                                  //82-92
     b.Append(Opcoes.BancoEnviaBoleto ? "1" : "2");                                                           //93-93 1=banco emite boleto e processa. 2=empresa emite boleto e banco processa
     b.Append("N");                                                                                           //94-94
     b.Append(new string(' ', 10));                                                                           //95-104
     b.Append(Opcoes.CobrancaCompartilhada ? "R" : " ");                                                      //105 indicador rateio crédito
     b.Append("0");                                                                                           //106
     b.Append(new string(' ', 2));                                                                            //108
     b.Append("01");                                                                                          //110
     b.AppendNumero(10, ++Opcoes.ContadorTitulos);
     b.AppendData(titulo.Vencimento);                                                                         //121-126
     b.AppendDinheiro(13, titulo.Valor);                                                                      //127-139
     b.Append("00000000");
     b.Append("04N");
     b.AppendData(titulo.Emissao);
     b.Append("0000");
     b.AppendDinheiro(13, Math.Round(titulo.PercentualMoraDiaAtraso * titulo.Valor / 100, 2, MidpointRounding.AwayFromZero));
     b.Append("000000000000000000000000000000000000000000000");
     b.AppendNumero(2, titulo.PessoaJuridica() ? "02" : "01");
     b.AppendNumero(14, titulo.CpfCnpj);
     b.AppendTexto(40, titulo.NomePagador);
     b.AppendTexto(40, titulo.EnderecoCompleto);
     b.AppendTexto(12, Opcoes.Msg1);
     b.AppendNumero(8, titulo.Cep);
     b.AppendTexto(60, Opcoes.Msg2);
     b.AppendNumero(6, _index++);
     b.Append(Environment.NewLine);
 }
コード例 #14
0
 public void Detalhe2(StringBuilder b, TituloReceber titulo)
 {
     b.Append('1');                                       //1-1
     b.AppendNumero(2, "02");                             //2-3
     b.AppendNumero(14, Opcoes.CnpjBeneficiario);         //4-17
     b.AppendNumero(13, FazCodigoBeneficiario());         //18-30
     b.Append(new string(' ', 7));                        //31-37
     b.AppendTexto(25, titulo.NossoNumero);               //38-62
     b.Append(CalcularNCNossoNumero(titulo.NossoNumero)); //63-72 NOSSO NUMERO
     b.Append(new string(' ', 25));                       //73-107
     b.Append('1');                                       //108-108 COBRAÇA SIMPLES
     b.Append("98");                                      //109-110
     b.Append('1');
     b.AppendTexto(90, Opcoes.Msg1);
     b.Append(' ');
     b.Append(new string(' ', 90));
     b.Append(' ');
     b.Append(new string(' ', 90));
     b.Append(new string(' ', 11));
     b.AppendNumero(6, _index++); //395-400
     b.Append(Environment.NewLine);
 }
コード例 #15
0
        public bool Alterar(TituloReceber tituloReceber)
        {
            var tituloReceberOriginal = context.TitulosReceber.Where(x => x.Id == tituloReceber.Id).FirstOrDefault();

            if (tituloReceberOriginal == null)
            {
                return(false);
            }

            tituloReceberOriginal.IdClientePessoaJuridica = tituloReceber.IdClientePessoaJuridica;
            tituloReceberOriginal.IdClientePessoaFisica   = tituloReceber.IdClientePessoaFisica;
            tituloReceberOriginal.IdCategoriaReceita      = tituloReceber.IdCategoriaReceita;
            tituloReceberOriginal.Descricao         = tituloReceber.Descricao;
            tituloReceberOriginal.Status            = tituloReceber.Status;
            tituloReceberOriginal.DataLancamento    = tituloReceber.DataLancamento;
            tituloReceberOriginal.DataRecebimento   = tituloReceber.DataRecebimento;
            tituloReceberOriginal.DataVencimento    = tituloReceber.DataVencimento;
            tituloReceberOriginal.QuantidadeParcela = tituloReceber.QuantidadeParcela;

            int quantidadeAfetada = context.SaveChanges();

            return(quantidadeAfetada == 1);
        }
コード例 #16
0
        public void Detalhe1(StringBuilder b, TituloReceber titulo)
        {
            TituloReceber.Desconto desconto1 = titulo.Descontos.FirstOrDefault();

            b.Append("7");                                                                  //1-1
            b.AppendNumero(2, "02");                                                        //02-03
            b.AppendNumero(14, Opcoes.CnpjBeneficiario);                                    //04-17
            b.AppendNumero(4, Opcoes.NumeroAgencia);                                        //18-21
            b.Append(Opcoes.DigitoAgencia);                                                 //22-22
            b.AppendNumero(8, Opcoes.NumeroContaCorrente);                                  //23-30
            b.Append(Opcoes.DigitoContaCorrente);                                           //31-31
            b.AppendNumero(7, Opcoes.NumeroConvenio);                                       //32-38
            b.AppendTexto(25, titulo.NumeroTitulo);                                         //39-63
            b.AppendTexto(17, FazerNossoNumero(Opcoes.NumeroConvenio, titulo.NossoNumero)); //64-80
            b.Append("0000");                                                               //81-82 & 83-84
            b.Append(new string(' ', 7));                                                   //85-87 & 88-88 & 89-91
            b.AppendNumero(3, Opcoes.VariacaoCarteira);                                     //92-94
            b.Append("0000000");                                                            //95-95 & 96-101
            b.Append(new string(' ', 5));                                                   //102-106
            b.AppendNumero(2, Opcoes.Carteira);                                             //107-108
            b.Append("01");                                                                 //109-110
            b.AppendNumero(10, titulo.NossoNumero);                                         //111-120
            b.AppendData(titulo.Vencimento);                                                //121-126
            b.AppendDinheiro(13, titulo.Valor);                                             //127-139
            b.Append("001");                                                                //140-142
            b.Append("0000");                                                               //143-146
            b.Append(" ");                                                                  //147-147
            b.AppendNumero(2, 1);                                                           //148-149
            b.Append("N");                                                                  //150-150
            b.AppendData(titulo.Emissao);                                                   //151-156
            if (titulo.ProtestavelAposVencimento)
            {
                b.Append("0600"); //157-158 & 159-160
            }
            else
            {
                b.Append("0100");                                                                                                    //157-158 & 159-160
            }
            b.AppendDinheiro(13, Math.Round(titulo.PercentualMoraDiaAtraso * titulo.Valor / 100, 2, MidpointRounding.AwayFromZero)); // 161-173

            if (desconto1 != null)
            {
                b.AppendData(desconto1.DataLimite);    //174-179 Data Desconto
                b.AppendDinheiro(13, desconto1.Valor); //180-192 Valor Desconto
            }
            else
            {
                b.Append(new string('0', 19));
            }

            b.AppendDinheiro(13, 0);                                  //193-205 Valor do IOF
            b.AppendDinheiro(13, 0);                                  //206-218 Valor Abatimento
            b.AppendNumero(2, titulo.PessoaJuridica() ? "02" : "01"); //219-220
            b.AppendNumero(14, titulo.CpfCnpj);                       //221-234
            b.AppendTexto(37, titulo.NomePagador);                    //235-271
            b.Append(new string(' ', 3));                             //272-274
            b.AppendTexto(40, titulo.EnderecoCompleto);               //275-314
            b.AppendTexto(12, titulo.Bairro);                         //315-326
            b.AppendNumero(8, titulo.Cep);                            //327-334 VERIFICAR TEXTO CEP
            b.AppendTexto(15, titulo.Cidade);                         //335-349
            b.AppendTexto(2, titulo.UF);                              //350-351
            b.AppendTexto(40, Opcoes.Msg1);                           //352-391
            if (titulo.ProtestavelAposVencimento)
            {
                b.AppendNumero(2, titulo.DiasParaProtestar); //392-393
            }
            else
            {
                b.Append(new string(' ', 2)); //392-393
            }
            b.Append(" ");                    //394-394
            b.AppendNumero(6, _index++);      //395-400
            b.Append(Environment.NewLine);
        }
コード例 #17
0
        static void Main(string[] args)
        {
            var novosFilmes = new List <IItem>()
            {
                new Filme()
                {
                    Categoria = Filme.Genero.AÇÃO, Nome = "Duro de Matar", Preco = 10, FilmeId = 1
                },
                new Filme()
                {
                    Categoria = Filme.Genero.ANIME, Nome = "Dragon Ball Super", Preco = 7.90, FilmeId = 2
                },
                new Filme()
                {
                    Categoria = Filme.Genero.ANIME, Nome = "Dragon Ball Z", Preco = 3.90, FilmeId = 3
                },
                new Filme()
                {
                    Categoria = Filme.Genero.ANIME, Nome = "Dragon Ball GT", Preco = 5.90, FilmeId = 4
                },
            };


            IEstoque Netflix = new AcervoFilmes();

            foreach (var item in novosFilmes)
            {
                Netflix.Adicione(item);
            }


            LocadoraFilmes locacao = new LocadoraFilmes(Netflix);

            locacao.AdicionaItens(novosFilmes[0]);
            locacao.AdicionaItens(novosFilmes[1]);


            locacao.Totalizar();
            Console.WriteLine("----------NetFlix------------");
            locacao.RealizaPagamento(20.80);

            foreach (Filme item in locacao.Compras())
            {
                Console.WriteLine("Filmes {0}  Preço: {1}", item.Nome, item.Preco);
            }



            var novosProdutos = new List <IItem>()
            {
                new Produto()
                {
                    ProdutoId = 1, Nome = "X BOX ONE X", Preco = 2500.00, Tipo = Produto.Categoria.GAMES
                },
                new Produto()
                {
                    ProdutoId = 2, Nome = "X BOX ONE S", Preco = 1500.00, Tipo = Produto.Categoria.GAMES
                },
                new Produto()
                {
                    ProdutoId = 3, Nome = "PS4 PRO", Preco = 1900.00, Tipo = Produto.Categoria.GAMES
                },
                new Produto()
                {
                    ProdutoId = 4, Nome = "PS4", Preco = 1500.00, Tipo = Produto.Categoria.GAMES
                },
            };

            IEstoque estoqueDaLoja = new CentroDistribuicao();

            foreach (var item in novosProdutos)
            {
                estoqueDaLoja.Adicione(item);
            }

            Loja compra = new Loja(estoqueDaLoja);

            //Adiciona o X Box One X
            compra.AdicionaItens(novosProdutos[0]);
            //Retira o X Box One X
            compra.RetiraItens(novosProdutos[0]);

            compra.AdicionaItens(novosProdutos[3]);

            compra.Totalizar();

            Console.WriteLine("----------Loja de Produtos------------");
            foreach (Produto item in compra.Compras())
            {
                Console.WriteLine("Items: {0} Preço: {1}", item.Nome, item.Preco);
            }



            compra.RealizaPagamento(2000);

            Console.WriteLine("----------------------");
            //Console.ReadKey();



            Console.WriteLine("------------------Contar a Receber------------------");



            var cliente = new Cliente()
            {
                Nome      = "Halyson",
                Sobrenome = "Mendonca",
                Cpf       = "008.505.503.21",
                Cartao    = "100-80"
            };

            var dup1 = new DuplicataReceber()
            {
                Id = 1, Pessoa = cliente, Valor = 10, Vencimento = Convert.ToDateTime("2018/09/10"), Sigla = "DP"
            };
            var dup2 = new DuplicataReceber()
            {
                Id = 2, Pessoa = cliente, Valor = 20.20, Vencimento = Convert.ToDateTime("2018/09/10"), Sigla = "DP"
            };
            var dup3 = new DuplicataReceber()
            {
                Id = 3, Pessoa = cliente, Valor = 10.20, Vencimento = Convert.ToDateTime("2018/09/20"), Sigla = "DP"
            };
            var dup4 = new DuplicataReceber()
            {
                Id = 4, Pessoa = cliente, Valor = 2, Vencimento = Convert.ToDateTime("2018/09/18"), Sigla = "DP"
            };

            var nota1 = new NotaPromissoriaReceber()
            {
                Id = 4, Pessoa = cliente, Valor = 2, Vencimento = Convert.ToDateTime("2018/09/18")
            };

            //Valor a parcelar
            var dup5 = new DuplicataReceber()
            {
                Id = 5, Pessoa = cliente, Valor = 2000, Vencimento = Convert.ToDateTime("2018/09/17"), Sigla = "NP"
            };

            ITituloReceber rec = new TituloReceber();

            rec.Adicionar(dup1);
            rec.Adicionar(dup2);
            rec.Adicionar(dup3);
            rec.Adicionar(dup4);
            rec.Adicionar(dup5);

            //ParcelarPrimeiraVez
            rec.Parcelar(dup5, 4);


            var listar = rec.ObterPorCliente(cliente);

            foreach (DuplicataReceber item in listar)
            {
                if (item.Referencia != null)
                {
                    Console.WriteLine("Id:{0} {1} {2} {3} Ref:{4}", item.Id, item.Pessoa.Nome, item.Valor, item.Vencimento.ToShortDateString(), item.Referencia.Id);
                }
                else
                {
                    Console.WriteLine("Id:{3} {0} {1} {2}", item.Pessoa.Nome, item.Valor, item.Vencimento.ToShortDateString(), item.Id);
                }
            }

            //tentar parcelar novamente.
            rec.Parcelar(dup5, 3);



            Console.ReadKey();
        }
コード例 #18
0
        public void Detalhe1(StringBuilder b, TituloReceber titulo)
        {
            TituloReceber.Desconto desconto1 = titulo.Descontos.FirstOrDefault();
            TituloReceber.Desconto desconto2 = titulo.Descontos.ElementAtOrDefault(1);
            TituloReceber.Desconto desconto3 = titulo.Descontos.ElementAtOrDefault(2);

            b.Append("1");                                                                                                           //1-1
            b.Append("02");                                                                                                          //2-3
            b.AppendNumero(14, Opcoes.CnpjBeneficiario);                                                                             //4-17
            b.AppendNumero(4, Opcoes.NumeroAgencia);                                                                                 //18-21
            b.AppendNumero(2, 00);                                                                                                   //22-23
            b.AppendNumero(5, Opcoes.NumeroContaCorrente);                                                                           //24-28
            b.Append(Opcoes.DigitoContaCorrente);                                                                                    //29-29
            b.Append(new string(' ', 4));                                                                                            //30-33
            b.AppendNumero(4, 0);                                                                                                    //34-37
            b.AppendTexto(25, titulo.NumeroTitulo);                                                                                  //38-62
            b.AppendNumero(8, titulo.NossoNumero);                                                                                   //65-70
            b.AppendNumero(13, 0);                                                                                                   //71-83
            b.Append(Opcoes.Carteira.PadLeft(3, '0'));                                                                               //84-86
            b.Append(new string(' ', 21));                                                                                           //87-107
            b.AppendTexto(1, DigitoCarteira(Opcoes.Carteira.PadLeft(3, '0')));                                                       //108-108 Depende do cadastro no banco
            b.Append("01");                                                                                                          //109-110
            b.AppendNumero(10, ++Opcoes.ContadorTitulos);                                                                            //111-120 No arquivo remessa, sugerimos o preenchimento com o nº do documento que originou a cobrança (nº duplicata, Nota fiscal, etc.)
            b.AppendData(titulo.Vencimento);                                                                                         //121-126
            b.AppendDinheiro(13, titulo.Valor);                                                                                      //127-139
            b.AppendNumero(3, 341);                                                                                                  //140-142
            b.Append("00000");                                                                                                       //143-147
            b.Append("06");                                                                                                          //148-149 Especie de Titulo - Contrato
            b.Append("N");                                                                                                           //150-150 Aceite/Não Aceite
            b.AppendData(titulo.Emissao);                                                                                            //151-156
            b.Append("91");                                                                                                          //157-158
            b.Append("00");                                                                                                          //159-160
            b.AppendDinheiro(13, Math.Round(titulo.PercentualMoraDiaAtraso * titulo.Valor / 100, 2, MidpointRounding.AwayFromZero)); // 161-173

            if (desconto1 != null)
            {
                b.AppendData(desconto1.DataLimite);    //174-179 Data 1° Desconto
                b.AppendDinheiro(13, desconto1.Valor); //180-192 Valor 1° Desconto
            }
            else
            {
                b.Append(new string('0', 19));
            }

            b.AppendDinheiro(13, 0);                                  //193-205 Valor do IOF
            b.AppendDinheiro(13, 0);                                  //206-218 Valor Abatimento
            b.AppendNumero(2, titulo.PessoaJuridica() ? "02" : "01"); //219-220
            b.AppendNumero(14, titulo.CpfCnpj);                       //221-234
            b.AppendTexto(40, titulo.NomePagador);                    //235-264 & 265 274
            b.AppendTexto(40, titulo.EnderecoCompleto);               //275-314
            b.AppendTexto(12, titulo.Bairro);                         //315-326
            b.AppendNumero(8, titulo.Cep);                            //327-334 VERIFICAR TEXTO CEP
            b.AppendTexto(15, titulo.Cidade);                         //335-349
            b.AppendTexto(2, titulo.UF);                              //350-351

            if (desconto2 != null)
            {
                b.Append(new string(' ', 2));          //352-353
                b.AppendData(desconto2.DataLimite);    //354-359 Data 2° Desconto
                b.AppendDinheiro(13, desconto2.Valor); //360-372 Valor 2° Desconto

                if (desconto3 != null)
                {
                    b.AppendData(desconto3.DataLimite);    //373-378 Data 3° Desconto
                    b.AppendDinheiro(13, desconto3.Valor); //379-391 Valor 3° Desconto
                }
                else
                {
                    b.Append(new string('0', 19));
                }
            }
            else
            {
                b.Append(new string(' ', 34)); //352-381 & 382-385
                b.Append("000000");            //386-391
            }

            b.AppendNumero(2, titulo.DiasAdicionaisAposVencimento); //392-393
            b.Append(' ');                                          //394-394
            b.AppendNumero(6, _index++);                            //395-400
            b.Append(Environment.NewLine);
        }
コード例 #19
0
        public void Detalhe1(StringBuilder b, TituloReceber titulo)
        {
            TituloReceber.Desconto desconto1 = titulo.Descontos.FirstOrDefault();

            b.Append('1');                                       //1-1
            b.Append(new string(' ', 16));                       //2-17
            b.AppendNumero(13, FazCodigoBeneficiario());         //18-30
            b.Append(new string(' ', 7));                        //31-37
            b.Append(new string(' ', 25));                       //38-62
            b.Append(CalcularNCNossoNumero(titulo.NossoNumero)); //63-72 NOSSO NUMERO
            b.AppendTexto(32, Opcoes.Msg1);                      //73-104
            b.Append(new string(' ', 3));                        //105-107
            b.Append('1');                                       //108-108 COBRAÇA SIMPLES
            b.Append("01");                                      //109-110 REMESSA
            b.AppendTexto(10, titulo.NossoNumero);               //111-120 SEU NUMERO
            b.AppendData(titulo.Vencimento);                     //121-126
            b.AppendDinheiro(13, titulo.Valor);                  //127-139
            b.Append("041");                                     //140-142
            b.Append(new string(' ', 5));                        //143-147
            if (Opcoes.BancoEnviaBoleto)
            {
                b.Append("06"); //148-149 TIPO DE DOCUMENTO
            }
            else
            {
                b.Append("08");           //148-149 TIPO DE DOCUMENTO
            }
            b.Append('N');                //150-150
            b.AppendData(titulo.Emissao); //151-156
            if (titulo.CobraMulta)        //157-158
            {
                b.Append("18");           //Multa após vencimento
            }
            else if (titulo.ProtestavelAposVencimento)
            {
                b.Append("09"); //Protestavel após N dias
            }
            else
            {
                b.Append("23");                                                                                                      //Não Protestar
            }
            b.Append("15");                                                                                                          //159-160
            b.Append('0');                                                                                                           //161-161
            b.AppendDinheiro(12, Math.Round(titulo.PercentualMoraDiaAtraso * titulo.Valor / 100, 2, MidpointRounding.AwayFromZero)); // 162-173

            if (desconto1 != null)
            {
                b.AppendData(desconto1.DataLimite);    //174-179 Data Desconto
                b.AppendDinheiro(13, desconto1.Valor); //180-192 Valor Desconto
            }
            else
            {
                b.Append(new string('0', 19));
            }
            b.AppendDinheiro(13, 0);                                  //193-205 Valor do IOF
            b.AppendDinheiro(13, 0);                                  //206-218 Valor Abatimento
            b.AppendNumero(2, titulo.PessoaJuridica() ? "02" : "01"); //219-220
            b.AppendNumero(14, titulo.CpfCnpj);                       //221-234
            b.AppendTexto(35, titulo.NomePagador);                    //235-269
            b.Append(new string(' ', 5));                             //270-274
            b.AppendTexto(40, titulo.EnderecoCompleto);               //275-314
            b.Append(new string(' ', 7));                             //315-321
            b.AppendDinheiroUmaCasa(3, titulo.PercentualMulta);       //322-324
            b.Append("01");                                           //325-326
            b.AppendNumero(8, titulo.Cep);                            //327-334
            b.AppendTexto(15, titulo.Cidade);                         //335-349
            b.AppendTexto(2, titulo.UF);                              //350-351
            b.Append(new string(' ', 18));                            //352-369
            b.AppendNumero(2, titulo.DiasParaProtestar);              //370-371
            b.Append(new string(' ', 23));                            //372-394
            b.AppendNumero(6, _index++);                              //395-400
            b.Append(Environment.NewLine);
        }