meta données pour cette page
Différences
Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
| certif:procedure:develop:angular:validator [2026/03/13 16:43] – [Les différents dx-validator] nicolas | certif:procedure:develop:angular:validator [2026/05/21 11:50] (Version actuelle) – [Tests "manuels"] nicolas | ||
|---|---|---|---|
| Ligne 17: | Ligne 17: | ||
| * [[certif: | * [[certif: | ||
| * les validateurs " | * les validateurs " | ||
| + | * [[certif: | ||
| - | ==== Cas particulier | + | ===== L' |
| - | === HTML === | + | Comme on l'a vu plus haut les validators sont regroupés en **validationGroup**\\ |
| + | Dans le composant on va déclaré une série de procédures (pour une meilleur lecture on essaye de garder la nomenclature) | ||
| < | < | ||
| - | < | + | private Notification= inject(NotificationService) |
| - | [max]=" | + | |
| - | [style.background-color]=" | + | |
| - | < | + | |
| - | < | + | |
| - | </ | + | |
| - | </ | + | |
| - | </ | + | |
| - | === TS === | + | |
| - | < | + | |
| - | // Bornes de validation de la date de naissance | + | |
| - | public today: Date = new Date(); | + | |
| - | public minDateNaissance: | + | |
| | | ||
| - | // Message dynamique pour le validateur | + | |
| - | | + | |
| + | | ||
| + | } | ||
| - | | + | |
| - | this.initValidationDates(); | + | this.Notification.analyseStockValidation(" |
| } | } | ||
| + | | ||
| + | handleInfoBanqueChanged() { | ||
| + | // votre code si beoin | ||
| + | this.triggerValidation(); | ||
| + | this.infoBancairesChange.emit(JSON.stringify(this.infoBanque)) | ||
| + | } | ||
| + | </ | ||
| + | | ||
| + | ==== Tests " | ||
| + | < | ||
| + | test_warning(){ | ||
| + | this.Notification.videWarning(); | ||
| + | if (this.personne.dateFinConservation) { | ||
| + | const aujourdhui = new Date(); aujourdhui.setHours(0, | ||
| + | if (this.personne.dateFinConservation && new Date(this.personne.dateFinConservation) < aujourdhui) { | ||
| + | this.Notification.ajouteWarning(' | ||
| + | else { | ||
| + | const bientot = new Date(); aujourdhui.setHours(0, | ||
| + | if (this.personne.dateFinConservation && new Date(this.personne.dateFinConservation) < bientot) { | ||
| + | this.Notification.ajouteWarning(' | ||
| + | } | ||
| + | } | ||
| + | } else {this.Notification.ajouteWarning(' | ||
| + | } | ||
| + | </ | ||
| + | \\ | ||
| + | < | ||
| + | private triggerValidation() { | ||
| + | this.Notification.analyseStockValidation(" | ||
| + | if ((this.SIREN=="" | ||
| + | this.Notification.ajouteErreur(" | ||
| + | } | ||
| + | } | ||
| + | </ | ||
| - | /** | ||
| - | * Initialise les bornes de temps pour le dx-date-box | ||
| - | */ | ||
| - | private initValidationDates() { | ||
| - | // 1. On fixe AUJOURD' | ||
| - | // Cela évite que la date du jour soit considérée comme "dans le futur" | ||
| - | this.today = new Date(); | ||
| - | this.today.setHours(23, | ||
| - | // 2. On calcule MINIMUM (Aujourd' | + | ==== Le service " |
| - | this.minDateNaissance | + | Il publie plusieurs fonctions : |
| - | | + | |analyseStockValidation(validateGroup: |
| - | | + | |
| - | + | ||
| - | // 3. On prépare | + | |
| - | this.rangeMessage = `La date doit être comprise entre ${this.minDateNaissance.getFullYear()} et aujourd'hui.`; | + | |
| - | } | + | |
| - | + | ||
| - | </ | + | |