Esempio n. 1
0
        public void CalcularParcelaForaAno()
        {
            ////-------------------------------------------------------------------------
            //// Criar uma condição de pagamento
            ////-------------------------------------------------------------------------
            ICondicaoPagamento condicaoPagamento = new CondicaoPagamento();
            condicaoPagamento.PrazoMedio = 1;
            condicaoPagamento.FormaCalculoVencimento = Enuns.Cadastro.Financeiro.FormaCalculoVencimento.Periodico;
            condicaoPagamento.VencimentoFeriado = Enuns.Cadastro.Financeiro.VencimentoFeriado.Manter;
            condicaoPagamento.MesmoDiaMes = true;

            #region Período de vencimento
            IPeriodo periodo = new OpenPOS.Data.Cadastro.Periodo.Periodo();
            periodo.Tipo = TipoVencimento.ForaAno;

            periodo.Anuais = new List<IAnual> {
                new Anual {
                    MesFinal =  MesesAno.Janeiro,
                    MesInicial = MesesAno.Janeiro,
                    DiaVencimento = DiaMes.DiaQuinze,
                    MesVencimento =  MesesAno.Janeiro,
                    AnoVencimento = AnoVencimento.AnoCorrente
                },

                new Anual {
                    MesFinal =  MesesAno.Janeiro,
                    MesInicial = MesesAno.Janeiro,
                    DiaVencimento = DiaMes.DiaQuinze,
                    MesVencimento =  MesesAno.Janeiro,
                    AnoVencimento = AnoVencimento.AnoCorrente
                }
            };
            #endregion

            IParcela parcelaUm = new Parcela();
            parcelaUm.APartirDataEmissao = 30;
            parcelaUm.APartirDataVencimentoAnterior = 30;
            parcelaUm.Percentual = 35;
            parcelaUm.PeriodoVencimento = periodo;
            parcelaUm.PeriodoVencimento = periodo;
            condicaoPagamento.Parcelas.Add(parcelaUm);

            IParcela parcelaDois = new Parcela();
            parcelaDois.APartirDataEmissao = 30;
            parcelaDois.APartirDataVencimentoAnterior = 60;
            parcelaDois.Percentual = 65;
            parcelaDois.PeriodoVencimento = periodo;
            parcelaDois.PeriodoVencimento = periodo;
            condicaoPagamento.Parcelas.Add(parcelaDois);

            //-------------------------------------------------------------------------
            // Calcular as parcelas
            //-------------------------------------------------------------------------
            var parcelas = condicaoPagamento.GerarParcelas(1000, DateTime.Today);
            DumpElement(parcelas);
        }
Esempio n. 2
0
        public void CalcularParcelaMensalJurosCompostos()
        {
            ////-------------------------------------------------------------------------
            //// Criar uma condição de pagamento
            ////-------------------------------------------------------------------------
            ICondicaoPagamento condicaoPagamento = new CondicaoPagamento();
            condicaoPagamento.PrazoMedio = 1;
            condicaoPagamento.FormaCalculoVencimento = Enuns.Cadastro.Financeiro.FormaCalculoVencimento.Mensal;
            condicaoPagamento.VencimentoFeriado = Enuns.Cadastro.Financeiro.VencimentoFeriado.Manter;
            condicaoPagamento.MesmoDiaMes = true;
            condicaoPagamento.TipoJuros = Enuns.Financeiro.TipoJuros.SistemaPrice;
            condicaoPagamento.PercentualJuros = 5;
            #region Período de vencimento
            IPeriodo periodo = new OpenPOS.Data.Cadastro.Periodo.Periodo();
            periodo.Tipo = TipoVencimento.ForaMes;
            #endregion

            IParcela parcelaUm = new Parcela();
            parcelaUm.APartirDataEmissao = 30;
            parcelaUm.APartirDataVencimentoAnterior = 30;
            parcelaUm.Percentual = 100/3;
            parcelaUm.PeriodoVencimento = periodo;
            condicaoPagamento.Parcelas.Add(parcelaUm);

            IParcela parcelaDois = new Parcela();
            parcelaDois.APartirDataEmissao = 30;
            parcelaDois.APartirDataVencimentoAnterior = 60;
            parcelaDois.Percentual = 100 / 3;
            parcelaDois.PeriodoVencimento = periodo;
            condicaoPagamento.Parcelas.Add(parcelaDois);

            IParcela parcelaTres = new Parcela();
            parcelaTres.APartirDataEmissao = 30;
            parcelaTres.APartirDataVencimentoAnterior = 60;
            parcelaTres.Percentual = 100/3;
            parcelaTres.PeriodoVencimento = periodo;
            condicaoPagamento.Parcelas.Add(parcelaTres);

            //-------------------------------------------------------------------------
            // Calcular as parcelas
            //-------------------------------------------------------------------------
            var parcelas = condicaoPagamento.GerarParcelas(1000, DateTime.Today);
            DumpElement(parcelas);
        }
Esempio n. 3
0
        public void CalcularParcelaForaSemana()
        {
            ////-------------------------------------------------------------------------
            //// Criar uma condição de pagamento
            ////-------------------------------------------------------------------------
            ICondicaoPagamento condicaoPagamento = new CondicaoPagamento();
            condicaoPagamento.PrazoMedio = 1;
            condicaoPagamento.FormaCalculoVencimento = Enuns.Cadastro.Financeiro.FormaCalculoVencimento.Periodico;
            condicaoPagamento.VencimentoFeriado = Enuns.Cadastro.Financeiro.VencimentoFeriado.Manter;
            condicaoPagamento.MesmoDiaMes = true;

            #region Período de vencimento
            IPeriodo periodo = new OpenPOS.Data.Cadastro.Periodo.Periodo();
            periodo.Tipo = TipoVencimento.ForaSemana;

            periodo.Semanais = new List<ISemanal> {
                new Semanal {
                    DiaFinal =   DiaSemana.Domingo,
                    DiaInicial = DiaSemana.Domingo,
                    DiaVencimento = DiaSemana.QuartaFeira,
                    SemanaVencimento = SemanaVencimento.PrimeiraSemanaAposCorrente
                },

                new Semanal{
                    DiaFinal =   DiaSemana.Domingo,
                    DiaInicial = DiaSemana.Domingo,
                    DiaVencimento = DiaSemana.QuartaFeira,
                    SemanaVencimento = SemanaVencimento.PrimeiraSemanaAposCorrente
                }
            };
            #endregion

            IParcela parcelaUm = new Parcela();
            parcelaUm.APartirDataEmissao = 30;
            parcelaUm.APartirDataVencimentoAnterior = 30;
            parcelaUm.Percentual = 35;
            parcelaUm.PeriodoVencimento = periodo;
            parcelaUm.PeriodoVencimento = periodo;
            condicaoPagamento.Parcelas.Add(parcelaUm);

            IParcela parcelaDois = new Parcela();
            parcelaDois.APartirDataEmissao = 30;
            parcelaDois.APartirDataVencimentoAnterior = 60;
            parcelaDois.Percentual = 65;
            parcelaDois.PeriodoVencimento = periodo;
            parcelaDois.PeriodoVencimento = periodo;
            condicaoPagamento.Parcelas.Add(parcelaDois);

            //-------------------------------------------------------------------------
            // Calcular as parcelas
            //-------------------------------------------------------------------------
            var parcelas = condicaoPagamento.GerarParcelas(1000, DateTime.Today);
            DumpElement(parcelas);
        }