bjr at tout

voici mon code d'ajout dansla liste
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
 
private int k = 1;
 
    public void Chargetable(ActionEvent event) {
        Utilisateur utilisateur = (Utilisateur) FacesContext.getCurrentInstance().getExternalContext().getSessionMap().get("user");
        this.lignefactures = new Lignefacture();
        Query query = em.createQuery("select t from Tbproduit t where t.codeproduit=:codeproduit");
        query.setParameter("codeproduit", this.numeroproduit);
        List result = query.getResultList();
        listetproduit = result;
        for (int i = 0; i < listetproduit.size(); i++) {
            Tbproduit getpro = listetproduit.get(i);
            Query querystock = em.createQuery("select t from Tbstockage t where t.codeproduit.codeproduit=:codeproduit and t.codemagasin.codemagasin=:codemagasin");
            querystock.setParameter("codeproduit", getpro.getCodeproduit());
            querystock.setParameter("codemagasin", utilisateur.getCodemagasin().getCodemagasin());
            List resultstock = querystock.getResultList();
            listestockage = resultstock;
            for (int j = 0; j < listestockage.size(); j++) {
                Tbstockage get = listestockage.get(j);
                if (get.getQuantiteenstock() < this.quantitefacturee) {
                    FacesContext context = FacesContext.getCurrentInstance();
                    context.addMessage(null, new FacesMessage("La quantité de ce produit en stock est insuffiante à la commande"));
                } else {
                    lignefactures.setCodeproduit(getpro);
                    lignefactures.setDesignation(getpro.getDesignation());
                    lignefactures.setPrixvente(getpro.getPrixvente());
                    lignefactures.setQuantite(this.quantitefacturee);
                    lignefactures.setMontant(getpro.getPrixvente() * this.quantitefacturee);
                    lignefactures.setIdlignefac(-k);
 
                    listelignefacture.add(lignefactures);
 
 
 
                }
            }
        }       
        k++;
 
    }
au moment d'exploiter la liste je constate que les deux derniers éléments sont identiques

j'ai vraiment besoin d'aide