Fórum Dúvida sobre compra parcelada #446269
22/06/2013
0
Raniel Gomes
Curtir tópico
+ 0Posts
22/06/2013
Joel Rodrigues
Gostei + 0
22/06/2013
Raniel Gomes
Gostei + 0
22/06/2013
Joel Rodrigues
Outra forma seria fixar o dia do vencimento. Se será todo dia 20 de cada mês, basta verificar se o dia 20 não cairá em um fim de semana ou feriado e proceder como dito acima.
Como você pretende calcular os vencimentos das próximas parcelas? Em dias fixos ou 30 dias após a anterior?
Gostei + 0
22/06/2013
Raniel Gomes
Gostei + 0
22/06/2013
Joel Rodrigues
Você meio que misturou os dois aí.
Gostei + 0
22/06/2013
Raniel Gomes
Gostei + 0
22/06/2013
Joel Rodrigues
Se você tem a data da primeira parcela e a quantidade de parcelas, basta fazer um loop com N-1 iterações, onde N é o número de parcelas. Em cada iteração você instancia um novo DateTime, aumentando o mês (a partir da data anterior) e mantendo fixo o dia.
Gostei + 0
22/06/2013
Raniel Gomes
Gostei + 0
22/06/2013
Joel Rodrigues
Gostei + 0
22/06/2013
Raniel Gomes
Gostei + 0
22/06/2013
Joel Rodrigues
Abraço.
Gostei + 0
22/06/2013
Joel Rodrigues
class Program
{
static void Main(string[] args)
{
int parcelas = 3; //quantidade de parcelas
DateTime dataParcela = DateTime.Today; //data da primeira parcela (fixei como hoje)
Console.WriteLine(dataParcela.ToString("dd/MM/yyyy")); //imprime a primeira parcela
for (int i = 1; i < parcelas; i++) //faz um laço a menos que o número de parcelas
{
dataParcela = getProximaData(dataParcela, 30);
Console.WriteLine(dataParcela.ToString("dd/MM/yyyy"));
}
Console.Read();
}
private static DateTime getProximaData(DateTime data, int dias)
{
DateTime proximaData = data.AddDays(dias);
bool ehValida = false;
while (!ehValida)
{
if (proximaData.DayOfWeek == DayOfWeek.Sunday)//se cair em um domingo, adiciona um dia
{
proximaData = proximaData.AddDays(1);
}
else
{
ehValida = true;
}
}
return proximaData;
}
}Qualquer dúvida, é só falar.
Gostei + 0
23/06/2013
Raniel Gomes
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)