fix(commercial) : masque Relation / Prestation de triage selon la categorie (formulaire client)

Les champs « Relation » (depend du distributeur/courtier) et « Prestation de triage » du bloc principal sont masques par defaut et reveles uniquement quand une categorie ordinaire (autre que Distributeur/Courtier) est selectionnee. Masquer ces champs reinitialise leurs valeurs (pas de relation/triage fantome soumis). Applique a la creation et a l'edition.
This commit is contained in:
2026-06-08 10:23:42 +02:00
parent 0df18da00c
commit 8d80781e8c
4 changed files with 93 additions and 5 deletions
@@ -53,6 +53,26 @@ export function buildClientFormTabKeys(
return keys
}
/**
* Codes de categorie « intermediaire » : un client dont la categorie est
* Distributeur ou Courtier n'a ni relation amont (il EST le distributeur /
* courtier) ni prestation de triage. Sert a conditionner l'affichage des champs
* « Relation » et « Prestation de triage » du formulaire principal.
*/
export const DISTRIBUTOR_BROKER_CATEGORY_CODES = ['DISTRIBUTEUR', 'COURTIER'] as const
/**
* Vrai des qu'au moins une categorie « ordinaire » (autre que Distributeur /
* Courtier) est selectionnee. Les champs « Relation » (depend du distributeur /
* courtier) et « Prestation de triage » du formulaire principal sont masques par
* defaut et reveles uniquement dans ce cas.
*/
export function showsRelationAndTriageFields(selectedCategoryCodes: string[]): boolean {
return selectedCategoryCodes.some(
code => !(DISTRIBUTOR_BROKER_CATEGORY_CODES as readonly string[]).includes(code),
)
}
/** Sous-ensemble d'un contact necessaire aux regles de nommage (RG-1.05/1.14). */
export interface ContactDraft {
firstName: string | null