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); }
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); }
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); }