Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

NOVO TÓPICO, como gerar parcelas automatica.

Opa beleza? Mais uma vez quero agradecer muito o Matheus e o Samir me ajudaram muito em usar a Classe LocalDate, agora com a dica do Matheus ele me falo que seria muito facil gerar parcelas automatico com essa classe. Oque eu quero fazer? Por exemplo fiz uma venda no sistema, e o cliente escolhei em pagar em 4x, eu queria que geresse parcelas automatica, por exemplo ele escolhei 4x, gerar uma com data do outro mes, ai do outro, e assim por diante. Como fazer isso? Tinha aberto um tópico mais la tava muito grande e agora que eu sai do erro de usar a Classe LocalDate, Espero atenciosamente. obrigado.

OBS: estou usando localDate.

@Entity
@SuppressWarnings("serial")
public class Parcela implements Serializable {

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long codigo;
    private LocalDate dataVencimento;
    private Double valorParcela = 0.0D;
    private Double valorPago;
    private boolean status;
    private Integer diasParcela = 0;
    private Integer parcela = 0;
    @ManyToOne
    @JoinColumn(name = "venda_codigo")
    private Venda venda = new Venda();

To fazendo da seguinte maneira mais está gerando todas parcelas com o mes igual, e a minha intenção é sempre aumentar 1 mes a cada quantidade de parcela escolhida.

public void parcelaAutomaticas() {
        LocalDate dataParcela = LocalDate.now();
        for(int i = 1; i <= parcela.getParcela(); i++) {
            parcela.setDataVencimento(dataParcela);
            dataParcela = dataParcela.plusMonths(1);
            parcelas.add(parcela);
            System.out.println("Quantidade de parcelas: " + this.parcelas.size());
        }
    }
2 respostas

Resolvi colocando o new Parcela dentro do meu for, agora tenho uma outra duvida, minhas parcelas estão gerando desse mes de agora, queria que gerasse a partir do mes que vem. :(

solução!

Olá Alisson, para criar parcelas a partir do mês que vem, basta adicionar um mês antes, basta adicionar o mês na primeira linha do seu for, conforme exemplo abaixo:

public void parcelaAutomaticas() {
        LocalDate dataParcela = LocalDate.now();
        for(int i = 1; i <= parcela.getParcela(); i++) {
            dataParcela = dataParcela.plusMonths(1);
            parcela.setDataVencimento(dataParcela);
            parcelas.add(parcela);
            System.out.println("Quantidade de parcelas: " + this.parcelas.size());
        }
    }