fix(plantes): deleteVariety/submitVariety — try/catch + refresh detailPlantObj

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-03-08 19:38:06 +01:00
parent 174ed9c25d
commit 672ac529e7

View File

@@ -868,25 +868,36 @@ function closeFormVariety() {
async function submitVariety() { async function submitVariety() {
if (!detailPlantObj.value?.id) return if (!detailPlantObj.value?.id) return
const payload = { ...formVariety, prix_achat: formVariety.prix_achat ?? undefined } const payload = { ...formVariety, prix_achat: formVariety.prix_achat ?? undefined }
if (editVariety.value?.id) { try {
await plantsStore.updateVariety(detailPlantObj.value.id, editVariety.value.id, payload) if (editVariety.value?.id) {
toast.success('Variété modifiée') await plantsStore.updateVariety(detailPlantObj.value.id, editVariety.value.id, payload)
} else { toast.success('Variété modifiée')
await plantsStore.createVariety(detailPlantObj.value.id, payload) } else {
toast.success('Variété ajoutée') await plantsStore.createVariety(detailPlantObj.value.id, payload)
toast.success('Variété ajoutée')
}
// Refresh plant data so detailPlantObj reflects updated varieties
await plantsStore.fetchAll()
const updatedPlant = plantsStore.plants.find(p => p.id === detailPlantObj.value?.id)
if (updatedPlant) detailPlantObj.value = updatedPlant
closeFormVariety()
} catch {
// L'intercepteur Axios affiche le message d'erreur
} }
// Refresh plant data so detailPlantObj reflects updated varieties
await plantsStore.fetchAll()
const updatedPlant = plantsStore.plants.find(p => p.id === detailPlantObj.value?.id)
if (updatedPlant) detailPlantObj.value = updatedPlant
closeFormVariety()
} }
async function deleteVariety(vid: number) { async function deleteVariety(vid: number) {
if (!detailPlantObj.value?.id) return if (!detailPlantObj.value?.id) return
if (!confirm('Supprimer cette variété ?')) return if (!confirm('Supprimer cette variété ?')) return
await plantsStore.removeVariety(detailPlantObj.value.id, vid) try {
toast.success('Variété supprimée') await plantsStore.removeVariety(detailPlantObj.value.id, vid)
await plantsStore.fetchAll()
const updatedPlant = plantsStore.plants.find(p => p.id === detailPlantObj.value?.id)
if (updatedPlant) detailPlantObj.value = updatedPlant
toast.success('Variété supprimée')
} catch {
// L'intercepteur Axios affiche le message d'erreur
}
} }
async function submitPlant() { async function submitPlant() {