fix(back,front) : adresse client — au moins une categorie obligatoire
Spec-front § Adresse : la categorie est obligatoire sur une adresse, mais n'etait enforced ni au back ni au front. - Back : ClientAddress::$categories porte desormais Assert\Count(min: 1) (POST/PATCH sans categorie -> 422). Test testAddressRequiresAtLeastOneCategory ; deux tests existants qui creaient une adresse sans categorie recoivent une categorie SECTEUR. - Front : canValidateAddresses (creation + modification) exige >= 1 categorie par adresse -> bouton Enregistrer desactive tant qu'aucune categorie n'est choisie (meme gating que les sites).
This commit is contained in:
@@ -743,7 +743,9 @@ const canValidateAddresses = computed(() =>
|
||||
addresses.value.length > 0
|
||||
&& addresses.value.every((a) => {
|
||||
const filledBillingEmail = a.billingEmail !== null && a.billingEmail.trim() !== ''
|
||||
return a.siteIris.length >= 1 && (!isBillingEmailRequired(a) || filledBillingEmail)
|
||||
return a.siteIris.length >= 1
|
||||
&& a.categoryIris.length >= 1
|
||||
&& (!isBillingEmailRequired(a) || filledBillingEmail)
|
||||
}),
|
||||
)
|
||||
|
||||
|
||||
@@ -755,7 +755,9 @@ const canValidateAddresses = computed(() =>
|
||||
addresses.value.length > 0
|
||||
&& addresses.value.every((a) => {
|
||||
const filledBillingEmail = a.billingEmail !== null && a.billingEmail.trim() !== ''
|
||||
return a.siteIris.length >= 1 && (!isBillingEmailRequired(a) || filledBillingEmail)
|
||||
return a.siteIris.length >= 1
|
||||
&& a.categoryIris.length >= 1
|
||||
&& (!isBillingEmailRequired(a) || filledBillingEmail)
|
||||
}),
|
||||
)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user