From 09a641e5cf6b5223164f8e1328172ef656ec3f70 Mon Sep 17 00:00:00 2001 From: sroy Date: Fri, 27 Feb 2026 13:05:47 +0000 Subject: [PATCH] [#356] modification front page admin bovin (!37) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit | Numéro du ticket | Titre du ticket | |------------------|-----------------| | #356 | modification front page admin bovin | ## Description de la PR ## Modification du .env ## Check list - [x] Pas de régression - [ ] TU/TI/TF rédigée - [x] TU/TI/TF OK - [x] CHANGELOG modifié Reviewed-on: https://gitea.malio.fr/MALIO-DEV/Ferme/pulls/37 Reviewed-by: Autin Co-authored-by: sroy Co-committed-by: sroy --- CHANGELOG.md | 1 + frontend/i18n/locales/fr.json | 9 ++- frontend/layouts/default.vue | 4 +- frontend/pages/admin/bovin/[[id]].vue | 36 +++++++----- frontend/pages/admin/bovin/bovin-list.vue | 67 +++++++++++++++++++++ frontend/pages/admin/bovin/list.vue | 72 ----------------------- frontend/pages/admin/carrier/[[id]].vue | 5 +- frontend/services/bovine-type.ts | 14 ++++- 8 files changed, 112 insertions(+), 96 deletions(-) create mode 100644 frontend/pages/admin/bovin/bovin-list.vue delete mode 100644 frontend/pages/admin/bovin/list.vue diff --git a/CHANGELOG.md b/CHANGELOG.md index 337fbda..571a195 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -56,6 +56,7 @@ Ajouter dans le fichier .env du frontend * [#327] afficher/modifier écran expédition terminée * [#352] modification front admin fournisseur * [#355] afficher/modifier écran expédition terminée +* [#356] front page admin bovin ### Changed ### Fixed diff --git a/frontend/i18n/locales/fr.json b/frontend/i18n/locales/fr.json index 57c2d34..91dbc6a 100644 --- a/frontend/i18n/locales/fr.json +++ b/frontend/i18n/locales/fr.json @@ -82,7 +82,10 @@ "list": "Impossible de récupérer la liste des camions." }, "bovin": { - "list": "Impossible de récupérer la liste des races de bovins." + "list": "Impossible de récupérer la liste des races de bovins.", + "fetch": "Impossible de récupérer le type bovin.", + "create": "Impossible de créer le type bovin.", + "update": "Impossible de mettre à jour le type bovin." }, "carrier": { "list": "Impossible de récupérer la liste des transporteurs.", @@ -133,6 +136,10 @@ "update": "Transporteur mis à jour", "create": "Transporteur créé" }, + "bovin": { + "update": "Type bovin mis à jour avec succès.", + "create": "Type bovin créé avec succès." + }, "weight": { "update": "Pesée mis à jour" } diff --git a/frontend/layouts/default.vue b/frontend/layouts/default.vue index e973e3f..40edd7b 100644 --- a/frontend/layouts/default.vue +++ b/frontend/layouts/default.vue @@ -108,7 +108,7 @@ @@ -214,7 +214,7 @@ Clients - + Bovins diff --git a/frontend/pages/admin/bovin/[[id]].vue b/frontend/pages/admin/bovin/[[id]].vue index d4ad04a..3735eff 100644 --- a/frontend/pages/admin/bovin/[[id]].vue +++ b/frontend/pages/admin/bovin/[[id]].vue @@ -1,24 +1,32 @@ @@ -29,6 +37,8 @@ const router = useRouter() const route = useRoute() const isLoading = ref(false) const isHydrating = ref(false) +const idBovin = computed(() => resolveId(route.params.id)) +const isEdit = computed(() => idBovin.value !== null) function resolveId(param: unknown) { const idStr = Array.isArray(param) ? param[0] : param @@ -37,9 +47,6 @@ function resolveId(param: unknown) { return Number.isFinite(id) ? id : null } -const idBovin = computed(() => resolveId(route.params.id)) -const isEdit = computed(() => idBovin.value !== null) - const form = reactive({ label: '', code: '' @@ -92,7 +99,6 @@ async function validate() { } else { await createBovin(basePayload) } - await navigate() } finally { isLoading.value = false } diff --git a/frontend/pages/admin/bovin/bovin-list.vue b/frontend/pages/admin/bovin/bovin-list.vue new file mode 100644 index 0000000..aba9eb1 --- /dev/null +++ b/frontend/pages/admin/bovin/bovin-list.vue @@ -0,0 +1,67 @@ + + + diff --git a/frontend/pages/admin/bovin/list.vue b/frontend/pages/admin/bovin/list.vue deleted file mode 100644 index 1fec8ab..0000000 --- a/frontend/pages/admin/bovin/list.vue +++ /dev/null @@ -1,72 +0,0 @@ - - - diff --git a/frontend/pages/admin/carrier/[[id]].vue b/frontend/pages/admin/carrier/[[id]].vue index 5da4420..a3978cc 100644 --- a/frontend/pages/admin/carrier/[[id]].vue +++ b/frontend/pages/admin/carrier/[[id]].vue @@ -101,11 +101,10 @@ async function validate() { if(idCarrier.value){ await updateCarrier(idCarrier.value, basePayload) - navigate() return + }else{ + await createCarrier(basePayload) } - await createCarrier(basePayload) - navigate() } function navigate(){ diff --git a/frontend/services/bovine-type.ts b/frontend/services/bovine-type.ts index 98e62c4..1ca98f1 100644 --- a/frontend/services/bovine-type.ts +++ b/frontend/services/bovine-type.ts @@ -24,19 +24,27 @@ export async function getBovineTypeList(): Promise { export async function getBovin(id: number): Promise { const api = useApi() - const response = await api.get(`bovine_types/${id}`) + const response = await api.get(`bovine_types/${id}`, {}, { + toastErrorKey: 'errors.bovin.fetch' + }) return mapToBovineTypeData(response) } export async function createBovin(payload: BovinPayload = {}): Promise { const api = useApi() - const response = await api.post('bovine_types', toBovineTypePayload(payload)) + const response = await api.post('bovine_types', toBovineTypePayload(payload), { + toastErrorKey: 'errors.bovin.create', + toastSuccessKey: 'success.bovin.create' + }) return mapToBovineTypeData(response) } export async function updateBovin(id: number, payload: BovinPayload = {}): Promise { const api = useApi() - const response = await api.patch(`bovine_types/${id}`, toBovineTypePayload(payload)) + const response = await api.patch(`bovine_types/${id}`, toBovineTypePayload(payload), { + toastErrorKey: 'errors.bovin.update', + toastSuccessKey: 'success.bovin.update' + }) return mapToBovineTypeData(response) }