meta données pour cette page
  •  

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
certif:procedure:usageclasseinterface [2026/05/06 12:05] – [Les fonctions « normées » correspondant au CRUD] nicolascertif:procedure:usageclasseinterface [2026/05/06 12:17] (Version actuelle) – [Les fonctions « normées » à usage interne de la classe ("protected")] nicolas
Ligne 86: Ligne 86:
 ^ Fonction ^ Description ^ ^ Fonction ^ Description ^
 |<code>static override readonly sqlTableName: string = "personne";</code>|En haut de la classe, doit indiqué (en minuscule) le nom de la table correspondante dans la BDD| |<code>static override readonly sqlTableName: string = "personne";</code>|En haut de la classe, doit indiqué (en minuscule) le nom de la table correspondante dans la BDD|
 +|<code>
 +constructor(init?: Partial<TSQLPersonne>) {
 +  super(init);
 +  if (init) {Object.assign(this, init)}
 +}</code> |
 +|<code>
 +override corrigeDataFromBDD(){
 +  super.corrigeDataFromBDD();
 +  [...]\\ code spécifique à la classe
 +}</code>| Cette fonction doit s'assurer que la donnée qu'elle manipule est bien conforme à la classe. Par exemple une date reçu en texte doit être transformer en Date ...\\  **Elle ne doit manipuler que les objets de sa classe, celle des classes mère doivent être faite par la fonction éponyme de la classe mère**|
 +|<code>
 +override async prepareDataToBDD( 
 +        source: "FICHIER" | "COMPTA" | "SANSOBJET" = "SANSOBJET",
 +        DureeConsentement: number, 
 +        ReValidationDateConservation_Compta:boolean,  
 +        ReValidationDateConservation_Modif:boolean){
 +  super.prepareDataToBDD(source,DureeConsentement,
 +    ReValidationDateConservation_Compta,
 +    ReValidationDateConservation_Modif);
 +  [...]\\ code spécifique à la classe
 +}</code>| Cette fonction doit s'assurer que la donnée qu'elle manipule est conforme à ce que le back s'attends à recevoir. Par exemple un sous objet doit être transformer en string...\\  Elle peut aussi gérer des champs "calculé" par exemple la date de fin de consentent. **On préfèrera toujours le faire ici afin d'éviter divergence et redondance)** **Elle ne doit manipuler que les objets de sa classe, celle des classes mère doivent être faite par la fonction éponyme de la classe mère**|
 +|<code>override toGrid():IFamilleGrid</code>|Met à plat la structure parente (champ personnalisé, sous structure...) afin de faciliter leur affichage dans les grilles\\ Peut permettre au passage à ajouter des champs calculé\\ **Attention :** la structure résultante est une Interface elle ne peut/doit pas servir pour interfacer avec le back ou autre|
 +|<code>static toGrids(liste:TSQLFamille[]):IFamilleGrid[]</code>|Boucle sur les éléments du tableau pour appelé togrid|
 +
  
  
-==== Les fonctions « normées » à usage interne de la classe ("protected") ==== 
-^Nom de la fonction^Usage^ 
-|protected override corrigeDataFromBDD()|Appelé sur chaque enregistrement lors du chargement depuis le back, via la procédure  MapUtils.mapArrayTo. Elle permet de corriger, mapper.. les données sur le modèle de la classe. Elle permet en outre de s'affranchir des problèmes de case entre back et front| 
-|protected override async prepareDataToBDD()|Appelé par la fonction sauveToBDD$ elle permet de mettre les format angular au format attendu par le back| 
  
-==== Les fonctions « normées » à usage public ==== 
-^Nom de la fonction^Usage^ 
-|override toGrid():IFamilleGrid|Met à plat la structure parente (champ personnalisé, sous structure...) afin de faciliter leur affichage dans les grilles\\ Peut permettre au passage à ajouter des champs calculé\\ **Attention :** la structure résultante est une Interface elle ne peut/doit pas servir pour interfacer avec le back ou autre| 
-|static toGrids(liste:TSQLFamille[]):IFamilleGrid[]|Boucle sur les éléments du tableau pour appelé togrid| 
  
 ==== Les fonctions spécifique à la classe ==== ==== Les fonctions spécifique à la classe ====
 Dépends de chaque classe voir la classe Dépends de chaque classe voir la classe