fix(commercial) : corrections ajout fournisseur — addressType en select, 422 inline (addressType/catégorie/compta complète/LCR sur paymentType), Information facultative (RG-2.03 retirée, miroir client) (ERP-94)
This commit is contained in:
@@ -10,26 +10,19 @@
|
||||
@click="$emit('remove')"
|
||||
/>
|
||||
|
||||
<!-- Type d'adresse : radio exclusif Prospect / Depart / Rendu (RG-2.09).
|
||||
Une seule colonne (radios empiles), sans label de groupe ; le caractere
|
||||
obligatoire est porte par chaque radio (prop `required`). L'erreur 422
|
||||
(propertyPath `addressType`) s'affiche sous le groupe. -->
|
||||
<div class="flex flex-col gap-2">
|
||||
<MalioRadioButton
|
||||
v-for="opt in addressTypeOptions"
|
||||
:key="opt.value"
|
||||
:name="radioName"
|
||||
:model-value="model.addressType"
|
||||
:value="opt.value"
|
||||
:label="opt.label"
|
||||
:required="true"
|
||||
:readonly="readonly"
|
||||
:disabled="readonly"
|
||||
group-class="mt-0"
|
||||
@update:model-value="() => update('addressType', opt.value)"
|
||||
/>
|
||||
<span v-if="errors?.addressType" class="text-sm text-red-600">{{ errors.addressType }}</span>
|
||||
</div>
|
||||
<!-- Type d'adresse : Prospect / Depart / Rendu (RG-2.09). Select en attendant
|
||||
l'arbitrage metier (radio vs select) ; l'erreur 422 (propertyPath
|
||||
`addressType`) s'affiche via la prop native :error de MalioSelect. -->
|
||||
<MalioSelect
|
||||
:model-value="model.addressType"
|
||||
:options="addressTypeOptions"
|
||||
:label="t('commercial.suppliers.form.address.addressType')"
|
||||
:readonly="readonly"
|
||||
empty-option-label=""
|
||||
:required="true"
|
||||
:error="errors?.addressType"
|
||||
@update:model-value="(v: string | number | null) => update('addressType', v === null ? null : (v as SupplierAddressType))"
|
||||
/>
|
||||
|
||||
<!-- Sites Starseed : multiselect a tags (>= 1 obligatoire, RG-2.06). -->
|
||||
<MalioSelectCheckbox
|
||||
@@ -210,10 +203,6 @@ const autocomplete = useAddressAutocomplete()
|
||||
|
||||
const model = computed(() => props.modelValue)
|
||||
|
||||
// Nom de groupe radio unique par bloc (sinon les radios de blocs differents se
|
||||
// partageraient la selection). Derive du titre (« Adresse 1 », « Adresse 2 »...).
|
||||
const radioName = computed(() => `supplier-address-type-${props.title.replace(/\s+/g, '-')}`)
|
||||
|
||||
const addressTypeOptions = computed<{ value: SupplierAddressType, label: string }[]>(() => [
|
||||
{ value: 'PROSPECT', label: t('commercial.suppliers.form.address.addressTypeProspect') },
|
||||
{ value: 'DEPART', label: t('commercial.suppliers.form.address.addressTypeDepart') },
|
||||
|
||||
Reference in New Issue
Block a user