OpenConcerto

Dépôt officiel du code source de l'ERP OpenConcerto
sonarqube

svn://code.openconcerto.org/openconcerto

Rev

Rev 152 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 152 Rev 169
Line 45... Line 45...
45
        final SQLRowValues vals = new SQLRowValues(this.table);
45
        final SQLRowValues vals = new SQLRowValues(this.table);
46
        vals.put(this.table.getKey().getName(), null);
46
        vals.put(this.table.getKey().getName(), null);
47
        vals.put("NUMERO", null);
47
        vals.put("NUMERO", null);
48
        vals.put("DATE", null);
48
        vals.put("DATE", null);
49
        vals.put("ID_ABONNEMENT", null);
49
        vals.put("ID_ABONNEMENT", null);
-
 
50
        final boolean containsPrev = this.table.contains("PREVISIONNELLE");
-
 
51
        if (containsPrev) {
50
        vals.put("PREVISIONNELLE", null);
52
            vals.put("PREVISIONNELLE", null);
-
 
53
        }
51
        vals.put("CREATION_AUTO_VALIDER", null);
54
        vals.put("CREATION_AUTO_VALIDER", null);
52
 
55
 
53
        final SQLRowValuesListFetcher fetcher = new SQLRowValuesListFetcher(vals);
56
        final SQLRowValuesListFetcher fetcher = new SQLRowValuesListFetcher(vals);
54
        fetcher.setSelTransf(new ITransformer<SQLSelect, SQLSelect>() {
57
        fetcher.setSelTransf(new ITransformer<SQLSelect, SQLSelect>() {
55
            @Override
58
            @Override
Line 73... Line 76...
73
        for (SQLRowValues sqlRow : list) {
76
        for (SQLRowValues sqlRow : list) {
74
            map.put(sqlRow.getInt("ID_ABONNEMENT"), sqlRow);
77
            map.put(sqlRow.getInt("ID_ABONNEMENT"), sqlRow);
75
        }
78
        }
76
 
79
 
77
        // Verification du renouvellement des abonnements
80
        // Verification du renouvellement des abonnements
78
        SQLSelect selAb = new SQLSelect(this.table.getDBSystemRoot(), true);
81
        SQLSelect selAb = new SQLSelect();
79
        SQLTable tableAb = Configuration.getInstance().getRoot().findTable("ABONNEMENT");
82
        SQLTable tableAb = Configuration.getInstance().getRoot().findTable("ABONNEMENT");
80
        selAb.addSelectStar(tableAb);
83
        selAb.addSelectStar(tableAb);
81
        List<SQLRow> rows = SQLRowListRSH.execute(selAb);
84
        List<SQLRow> rows = SQLRowListRSH.execute(selAb);
82
 
85
 
83
        // Liste des abonnements associés à la prochaine date de renouvellement
86
        // Liste des abonnements associés à la prochaine date de renouvellement
Line 92... Line 95...
92
                // On recupere la derniere date de l'abonnement soit la date de debut soit la date
95
                // On recupere la derniere date de l'abonnement soit la date de debut soit la date
93
                // de la derniere facture
96
                // de la derniere facture
94
                Calendar calStartFact = sqlRow.getDate("DATE_DEBUT_" + this.type);
97
                Calendar calStartFact = sqlRow.getDate("DATE_DEBUT_" + this.type);
95
                SQLRowValues rowFact = map.get(sqlRow.getID());
98
                SQLRowValues rowFact = map.get(sqlRow.getID());
96
                if (rowFact != null) {
99
                if (rowFact != null) {
97
                    if (rowFact.getObject("PREVISIONNELLE") != null && !rowFact.getBoolean("PREVISIONNELLE")) {
100
                    if (!containsPrev || (rowFact.getObject("PREVISIONNELLE") != null && !rowFact.getBoolean("PREVISIONNELLE"))) {
98
                        calStartFact = rowFact.getDate("DATE");
101
                        calStartFact = rowFact.getDate("DATE");
99
                    } else {
102
                    } else {
100
                        // Si le dernier element de l'abonnement n'a pas été validé on ne crée pas
103
                        // Si le dernier element de l'abonnement n'a pas été validé on ne crée pas
101
                        // le prochain
104
                        // le prochain
102
                        continue;
105
                        continue;