Procházet zdrojové kódy

fix Delete btn and educationTiming edition page

Olivier Massot před 2 roky
rodič
revize
f4b17a16b3

+ 4 - 2
components/Ui/Button/Delete.vue

@@ -12,7 +12,7 @@ Bouton Delete avec modale de confirmation de la suppression
       :show="showDialog"
     >
       <template #dialogType>{{ $t('delete_assistant') }}</template>
-      <template #dialogTitle>{{ $t('attention') }}</template>
+      <template #dialogTitle>{{ $t('caution') }}</template>
       <template #dialogText>
         <v-card-text>
           <p>{{ $t('confirm_to_delete') }}</p>
@@ -36,6 +36,7 @@ import {Ref} from "@vue/reactivity";
 import {useEntityManager} from "~/composables/data/useEntityManager";
 import ApiResource from "~/models/ApiResource";
 import {usePageStore} from "~/stores/page";
+import ApiModel from "~/models/ApiModel";
 
 const props = defineProps({
     model: {
@@ -59,7 +60,8 @@ const { em } = useEntityManager()
 
 const deleteItem = async () => {
   try {
-    await em.delete(props.model.value, props.entity)
+    //@ts-ignore
+    await em.delete(props.model, props.entity)
     usePageStore().addAlert(TYPE_ALERT.SUCCESS, ['deleteSuccess'])
   } catch (error: any) {
     usePageStore().addAlert(TYPE_ALERT.ALERT, [error.message])

+ 1 - 1
lang/fr.json

@@ -311,7 +311,7 @@
   "back": "Retour",
   "cancel": "Annuler",
   "delete": "Supprimer",
-  "confirm_to_delete": "Vous êtes sur le point de supprimer un élément.",
+  "confirm_to_delete": "Vous êtes sur le point de supprimer un élément.\nVoulez-vous continuer?",
   "saveSuccess": "Sauvegarde effectuée",
   "deleteSuccess": "Suppression effectuée",
   "quit_form": "Quitter le formulaire",

+ 20 - 13
pages/parameters/education_timings/[id].vue

@@ -2,40 +2,43 @@
   <LayoutContainer>
     <UiLoadingPanel v-if="pending" />
     <div v-else>
-      <h2>EducationTiming</h2>
+      <h2>{{ $t('educationTiming') }}</h2>
       <UiForm
         ref="form"
         :model="EducationTiming"
-        :entity="education_timings"
+        :entity="educationTiming"
         :submitActions="submitActions"
       >
         <UiInputNumber
           field="educationtiming"
-          v-model="education_timings.timing"
+          v-model="educationTiming.timing"
           :rules="rules"
         />
       </UiForm>
+      <v-btn class="mr-12" @click="quit">
+        {{ $t('back') }}
+      </v-btn>
     </div>
   </LayoutContainer>
 </template>
 <script setup lang="ts">
-import { ref, computed } from 'vue'
+import {ref, computed, ComputedRef} from 'vue'
 import { useEntityFetch } from '~/composables/data/useEntityFetch'
 import EducationTiming from '~/models/Education/EducationTiming'
-import { useRoute } from 'vue-router'
+import {RouteLocationPathRaw, useRoute, useRouter} from 'vue-router'
 import { useI18n } from 'vue-i18n'
 import { AnyJson } from '~/types/data'
 import { SUBMIT_TYPE } from '~/types/enum/enums'
+import {Ref} from "@vue/reactivity";
 
 const i18n = useI18n()
 const { fetch } = useEntityFetch()
 const route = useRoute()
-const idValue = Array.isArray(route.params.id)
-  ? route.params.id[0]
-  : route.params.id
-const educationTimingID = ref(parseInt(idValue))
+const router = useRouter()
 
-const goBackRoute = { path: `/parameters`, query: { tab: 'educationTimings' } }
+const educationTimingId: Ref<number> = ref(parseInt(route.params.id as string))
+
+const goBackRoute: RouteLocationPathRaw = { path: `/parameters`, query: { tab: 'educationTimings' } }
 
 const submitActions = computed(() => {
   let actions: AnyJson = {}
@@ -43,14 +46,18 @@ const submitActions = computed(() => {
   return actions
 })
 
-const { data: education_timings, pending } = fetch(
+const { data: educationTiming, pending } = fetch(
   EducationTiming,
-  educationTimingID.value
+  educationTimingId.value
 )
-console.log(education_timings)
 
 const rules = () => [
   (timing: string | null) =>
     (timing !== null && timing.length > 0) || i18n.t('please_enter_a_value'),
 ]
+
+const quit = () => {
+  router.push(goBackRoute)
+}
+
 </script>