Commit Graph

2 Commits

Author SHA1 Message Date
tristan e3e1f9738c feat(catalog) : M7 — écran Modification d'un stockage /admin/storages/{id}/edit (ERP-218)
- Route /admin/storages/{id}/edit, gate catalog.storages.manage, détail via useStorage (GET /api/storages/{id})
- Formulaire factorisé create/edit dans useStorageForm : prefill + bouton « Enregistrer » → PATCH /api/storages/{id} (RG-7.08)
- Mêmes champs/validations que l'ajout (RG-7.01→7.06), erreurs 422 inline par champ
- 409 doublon (site, type, numéro, exclut le courant côté back) → inline sous Numéro + toast
- Pas d'onglets (HP-M7-06) ; libellés i18n edit.* + toast.updateSuccess
- Tests Vitest useStorageForm mode édition (prefill + PATCH + 409)
2026-06-30 11:58:02 +02:00
tristan aa7cda48b3 feat(catalog) : M7 — écran Ajouter un stockage /admin/storages/new (ERP-217)
- Formulaire de création à plat (pas d'onglets, HP-M7-06), gate catalog.storages.manage
- Champs Site, Type de stockage, Numéro, État (multi ≥1) en composants Malio, validation inline 422 par champ via useFormErrors
- 409 doublon (site, type, numéro) RG-7.01 → erreur inline sous Numéro + toast explicite
- Composable useStorageForm (POST /storages, payload relations en IRI), libellés i18n
- Référentiel des types PLAT : pas de cascade Site→Type (RG-7.03 non portée côté back, StorageType sans relation Site — à reclarifier spec)
- Tests Vitest de useStorageForm (référentiel plat, submit, 409/422)
2026-06-30 11:27:57 +02:00