feat(front) : onglet adresse prestataire

This commit is contained in:
2026-06-15 09:37:14 +02:00
parent 8e24405423
commit a3e64f0f9e
10 changed files with 896 additions and 5 deletions
@@ -42,6 +42,11 @@ interface SiteMember extends HydraMember {
postalCode: string
}
interface CountryMember extends HydraMember {
code: string
name: string
}
const LD_JSON_HEADERS = { Accept: 'application/ld+json' }
export function useProviderReferentials() {
@@ -49,6 +54,7 @@ export function useProviderReferentials() {
const categories = ref<RefOption[]>([])
const sites = ref<RefOption[]>([])
const countries = ref<RefOption[]>([])
/** Recupere une collection complete (pagination desactivee) en Hydra. */
async function fetchAll<T extends HydraMember>(
@@ -74,12 +80,18 @@ export function useProviderReferentials() {
// du code postal du site), ex: 86100 -> « 86 », 17400 -> « 17 ».
fetchAll<SiteMember>('/sites')
.then((sitesList) => { sites.value = sitesList.map(s => ({ value: s['@id'], label: (s.postalCode ?? '').slice(0, 2) })) }),
// Pays (ERP-116) : la valeur d'option est le NOM du pays (l'adresse stocke
// `country` en chaine libre, « France »...). value === label. Aligne sur
// les ecrans client/fournisseur. Sert le select Pays de l'onglet Adresse.
fetchAll<CountryMember>('/countries')
.then((list) => { countries.value = list.map(c => ({ value: c.name, label: c.name })) }),
])
}
return {
categories,
sites,
countries,
loadMain,
}
}