From dbb407b7a2e4d027c885923b7a67825ad5fd9b55 Mon Sep 17 00:00:00 2001 From: julienmalard Date: Thu, 10 Oct 2024 09:19:46 +0530 Subject: [PATCH] =?UTF-8?q?Am=C3=A9liorations=20tableaux?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../tableaux/CarteColonneTableau.vue | 8 ++++ .../tableaux/Ent\303\252teColonneTableau.vue" | 2 + .../src/components/tableaux/TableauBd.vue | 37 +++++++++++++++++ .../tableaux/TableauNu\303\251e.vue" | 40 ++++++++++++++++++- 4 files changed, 86 insertions(+), 1 deletion(-) diff --git a/packages/renderer/src/components/tableaux/CarteColonneTableau.vue b/packages/renderer/src/components/tableaux/CarteColonneTableau.vue index 3297fdeab..8cef5758a 100644 --- a/packages/renderer/src/components/tableaux/CarteColonneTableau.vue +++ b/packages/renderer/src/components/tableaux/CarteColonneTableau.vue @@ -79,6 +79,13 @@ + + {{ t('communs.effacer') }} + @@ -139,6 +146,7 @@ const émettre = defineEmits<{ }; }, ): void; + (é: 'effacer'): void; }>(); const {mdAndUp} = useDisplay(); diff --git "a/packages/renderer/src/components/tableaux/Ent\303\252teColonneTableau.vue" "b/packages/renderer/src/components/tableaux/Ent\303\252teColonneTableau.vue" index 3e412721d..1285d125d 100644 --- "a/packages/renderer/src/components/tableaux/Ent\303\252teColonneTableau.vue" +++ "b/packages/renderer/src/components/tableaux/Ent\303\252teColonneTableau.vue" @@ -31,6 +31,7 @@ :regles="regles" :permission-modifier="permissionModifier" @sauvegarder="info => émettre('sauvegarder', info)" + @effacer="() => émettre('effacer')" > @@ -407,6 +409,41 @@ const ajouterColonne = async ({ } }; +const modifierColonne = async ({ + idColonne, + index, + // variable, // à faire + règles, +}: { + idColonne: string; + index: boolean; + // variable: string; + règles: { + nouvelles: valid.règleVariable[]; + àEffacer: string[]; + } +}) => { + await constl.tableaux.changerColIndex({idTableau: props.idTableau, idColonne, val: index}); + for (const r of règles.nouvelles) await constl.tableaux.ajouterRègleTableau({ + idTableau: props.idTableau, + idColonne, + règle: r, + }); + // await constl.tableaux.changerVariableColonne({idTableau: props.idTableau, idColonne, variable}) + for (const r of règles.àEffacer) await constl.tableaux.effacerRègleTableau({ + idTableau: props.idTableau, + idRègle: r, + }); +}; + +const effacerColonne = async ({idColonne}: {idColonne: string}) => { + await constl.tableaux.effacerColonneTableau({ + idTableau: props.idTableau, + idColonne, + }); +}; + + // Données const données = suivre(constl.tableaux.suivreDonnées, { idTableau: props.idTableau, diff --git "a/packages/renderer/src/components/tableaux/TableauNu\303\251e.vue" "b/packages/renderer/src/components/tableaux/TableauNu\303\251e.vue" index 98254434a..2ce8d85f6 100644 --- "a/packages/renderer/src/components/tableaux/TableauNu\303\251e.vue" +++ "b/packages/renderer/src/components/tableaux/TableauNu\303\251e.vue" @@ -56,6 +56,8 @@ :est-ordonnee="isSorted(column)" :icone-ordonner="getSortIcon(column) as string" @basculer-ordonner="() => toggleSort(column)" + @sauvegarder="info=>modifierColonne({idColonne: c.key, ...info})" + @effacer="()=>effacerColonne({idColonne: c.key})" /> @@ -97,7 +99,7 @@ const props = defineProps<{idNuee: string; idTableau: string; clefTableau: strin const autorisation = suivre(constl.suivrePermission, {idObjet: props.idTableau}); // Variables -const variables = suivre(constl.tableaux.suivreVariables, {idTableau: props.idTableau}); +const variables = suivre(constl.tableaux.suivreVariables, {idTableau: props.idTableau}); // à faire: .nuées. // Règles const règles = suivre(constl.nuées.suivreRèglesTableauNuée, {idNuée: props.idNuee, clefTableau: props.clefTableau}); @@ -217,6 +219,42 @@ const ajouterColonne = async ({ } }; + +const modifierColonne = async ({ + idColonne, + index, + // variable, // à faire + règles, +}: { + idColonne: string; + index: boolean; + // variable: string; + règles: { + nouvelles: valid.règleVariable[]; + àEffacer: string[]; + } +}) => { + await constl.nuées.changerColIndexTableauNuée({idTableau: props.idTableau, idColonne, val: index}); + for (const r of règles.nouvelles) await constl.nuées.ajouterRègleTableauNuée({ + idTableau: props.idTableau, + idColonne, + règle: r, + }); + // await constl.nuées.changerVariableColonne({idTableau: props.idTableau, idColonne, variable}) + for (const r of règles.àEffacer) await constl.nuées.effacerRègleTableauNuée({ + idTableau: props.idTableau, + idRègle: r, + }); +}; + +const effacerColonne = async ({idColonne}: {idColonne: string}) => { + await constl.nuées.effacerColonneTableauNuée({ + idTableau: props.idTableau, + idColonne, + }); +}; + + // Effacer tableau const effacerTableau = async () => { await constl.nuées.effacerTableauNuée({idNuée: props.idNuee, idTableau: props.idTableau});