feat(transport) : saisie assistée QUALIMAT + champs conditionnels (ERP-166) #123
Reference in New Issue
Block a user
Delete Branch "feat/erp-166-qualimat-search"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
RG-4.01→4.03 + LIOT. Ticket ERP-166.
⚠️ Stack sur #122 (ERP-165) → #121 (ERP-164), non encore mergées : à merger APRÈS #122 et #121. Tant qu'elles ne sont pas mergées, ce diff inclut leurs commits.
Périmètre :
Note : le champ Décharge est rendu visible+obligatoire mais la résolution File → IRI (useUpload) est laissée à ERP-171 (TODO balisé dans le code).
Review front — ERP-166 (saisie assistée QUALIMAT + champs conditionnels)
Verdict : à corriger avant merge.
Base technique saine : recherche debouncée (300 ms), race-condition couverte par le
fetchTokendeusePaginatedList, pagination Hydra sansitemsPerPage=999, 422 inline, composantsMalio*, i18n complet.Findings
applyQualimatSelectionmute le state local (name,certificationType='QUALIMAT'figé en lecture seule,qualimatCarrierIri,qualimatAddress) avant letry/catchdu PATCH. Si le PATCH échoue (cas transporteur déjà créé,carrierId !== null), l'UI affiche une intégration QUALIMAT non persistée côté serveur, sans retour arrière possible — l'utilisateur reste coincé avec une certif readonly non sauvegardée. Déclencheur limité (rare sur l'écran de création), mais réel.→ Déplacer les mutations après le
await patchCarrier(...)réussi, ou restaurer l'état précédent dans lecatch. Ajouter un test du chemin d'échec PATCH.buildMainPayloadles omet bien à l'envoi (pas de valeur orpheline côté back 👍), mais d'anciennes valeurs resurgissent si la condition réapparaît (re-cocher Affréter).→
watchde reset surisChartered/certificationType/isLiot(nettoie aussi les erreurs inline résiduelles).MalioRadioButtonde sélection QUALIMAT est readonly mais reste interactif (zone morte de clic possible) ; le rendre explicitementdisabled/décoratif. Helpers date (isExpired/formatDateFr) réimplémentés inline.View command line instructions
Checkout
From your project repository, check out a new branch and test the changes.