OpenConcerto

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

svn://code.openconcerto.org/openconcerto

Rev

Rev 145 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 145 Rev 152
Line 238... Line 238...
238
 
238
 
239
        // Date de renouvellement des abonnements
239
        // Date de renouvellement des abonnements
240
        SubscriptionChecker checker = new SubscriptionChecker(elt.getTable());
240
        SubscriptionChecker checker = new SubscriptionChecker(elt.getTable());
241
        Map<SQLRow, Calendar> listLastCreateElt = checker.check();
241
        Map<SQLRow, Calendar> listLastCreateElt = checker.check();
242
 
242
 
-
 
243
        Date today = new Date();
243
        for (SQLRow rowAbonnement : listLastCreateElt.keySet()) {
244
        for (SQLRow rowAbonnement : listLastCreateElt.keySet()) {
244
 
245
 
245
            // FIXME On recupere des abonnements archives (à tester sur BD 2Si)
246
            // FIXME On recupere des abonnements archives (à tester sur BD 2Si)
246
            if (!rowAbonnement.isArchived()) {
247
            if (!rowAbonnement.isArchived()) {
247
                // On duplique le devis
248
                // On duplique le devis
248
                SQLRow rowsCmd = rowAbonnement.getForeignRow("ID_" + elt.getTable().getName());
249
                SQLRow rowsCmd = rowAbonnement.getForeignRow("ID_" + elt.getTable().getName());
249
                Calendar date = listLastCreateElt.get(rowAbonnement);
250
                Calendar date = listLastCreateElt.get(rowAbonnement);
250
                if (date == null) {
251
                if (date == null) {
251
                    date = rowsCmd.getDate("DATE");
252
                    date = rowsCmd.getDate("DATE");
252
                    date.add(Calendar.MONTH, rowAbonnement.getInt("NB_MOIS_" + type));
-
 
253
                }
253
                }
-
 
254
                date.add(Calendar.MONTH, rowAbonnement.getInt("NB_MOIS_" + type));
-
 
255
                while (date.getTime().compareTo(today) < 0) {
254
 
256
 
255
                // Si l'abonnement n'est pas expiré
257
                    // Si l'abonnement n'est pas expiré
256
                if (rowAbonnement.getObject("DATE_FIN_" + type) == null || date.compareTo(rowAbonnement.getDate("DATE_FIN_" + type)) <= 0) {
258
                    if (rowAbonnement.getObject("DATE_FIN_" + type) == null || date.compareTo(rowAbonnement.getDate("DATE_FIN_" + type)) <= 0) {
257
 
259
 
258
                    final SQLRowValues rowVals = new SQLRowValues(elt.getTable());
260
                        final SQLRowValues rowVals = new SQLRowValues(elt.getTable());
Line 268... Line 270...
268
                    } catch (SQLException exn) {
270
                        } catch (SQLException exn) {
269
 
271
 
270
                        ExceptionHandler.handle("Erreur lors de la création  " + elt.getSingularName() + " d'abonnement.", exn);
272
                            ExceptionHandler.handle("Erreur lors de la création  " + elt.getSingularName() + " d'abonnement.", exn);
271
                    }
273
                        }
272
                }
274
                    }
-
 
275
                    date.add(Calendar.MONTH, rowAbonnement.getInt("NB_MOIS_" + type));
-
 
276
                }
273
            }
277
            }
274
        }
278
        }
275
    }
279
    }
276
}
280
}