Skip to content

Commit

Permalink
Ajoute les étapes à l'export PDF de la fiche action
Browse files Browse the repository at this point in the history
  • Loading branch information
cparthur committed Dec 18, 2024
1 parent 9bdcf4e commit ed93855
Show file tree
Hide file tree
Showing 3 changed files with 69 additions and 1 deletion.
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ import { useAnnexesFicheActionInfos } from '../FicheAction/data/useAnnexesFicheA
import { useFicheActionNotesSuivi } from '../FicheAction/data/useFicheActionNotesSuivi';
import { useFichesActionLiees } from '../FicheAction/data/useFichesActionLiees';
import { useFicheActionChemins } from '../PlanAction/data/usePlanActionChemin';
import { useGetEtapes } from '@/app/app/pages/collectivite/PlansActions/FicheAction/etapes/use-get-etapes';
import FicheActionPdf from './FicheActionPdf/FicheActionPdf';

type FicheActionPdfContentProps = {
Expand Down Expand Up @@ -40,13 +41,18 @@ export const FicheActionPdfContent = ({
const { data: notesSuivi, isLoading: isLoadingNotesSuivi } =
useFicheActionNotesSuivi(fiche);

const { data: etapes, isLoading: isLoadingEtapes } = useGetEtapes({
id: fiche.id,
});

const isLoading =
isLoadingIndicateurs ||
isLoadingFichesLiees ||
isLoadignActionsListe ||
isLoadingAxes ||
isLoadingAnnexes ||
isLoadingNotesSuivi;
isLoadingNotesSuivi ||
isLoadingEtapes;

useEffect(() => {
if (!isLoading) {
Expand All @@ -63,6 +69,7 @@ export const FicheActionPdfContent = ({
.filter((a) => a.chemin !== null)
.map((a) => a.chemin!),
indicateursListe,
etapes,
fichesLiees,
actionsLiees,
annexes,
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
import React from 'react';

import { Card, Stack, Title } from '@/app/ui/export-pdf/components';

import { RouterOutput } from '@/api/utils/trpc/client';
import classNames from 'classnames';
import { Text } from '@react-pdf/renderer';
import { tw } from '@/app/ui/export-pdf/utils';

const EtapesCard = () => {
<Card wrap={false}>
<Title variant="h4" className="text-primary-8">
Indicateurs de suivi
</Title>
</Card>;
};

type Props = {
etapes: RouterOutput['plans']['fiches']['etapes']['list'];
};

const Etapes = ({ etapes }: Props) => {
const etapesRealiseesCount = etapes.filter((etape) => etape.realise).length;

return (
<Card wrap={false}>
<Title variant="h4" className="text-primary-8">
Étapes {etapes.length > 0 && `${etapesRealiseesCount}/${etapes.length}`}
</Title>
<Stack gap={3}>
{etapes.map((etape) => (
<Stack
key={etape.id}
gap={2}
className="w-[95%] flex-row items-start text-xs text-grey-8 leading-6"
>
<Text style={tw('ml-1')}></Text>
<Text
style={tw(
classNames({
'line-through !text-grey-6': etape.realise,
})
)}
>
{etape.nom}
</Text>
</Stack>
))}
</Stack>
</Card>
);
};

export default Etapes;
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,8 @@ import Notes from './Notes';
import NotesDeSuivi from './NotesDeSuivi';
import Pilotes from './Pilotes';
import Planning from './Planning';
import Etapes from '@/app/app/pages/collectivite/PlansActions/ExportPdf/FicheActionPdf/Etapes';
import { RouterOutput } from '@/api/utils/trpc/client';

export type FicheActionPdfProps = {
fiche: FicheAction;
Expand All @@ -25,6 +27,7 @@ export type FicheActionPdfProps = {
export type FicheActionPdfExtendedProps = FicheActionPdfProps & {
chemins: TAxeRow[][];
indicateursListe: IndicateurDefinition[] | undefined | null;
etapes?: RouterOutput['plans']['fiches']['etapes']['list'];
fichesLiees: FicheResume[];
actionsLiees: TActionStatutsRow[];
annexes: AnnexeInfo[] | undefined;
Expand All @@ -35,6 +38,7 @@ const FicheActionPdf = ({
fiche,
chemins,
indicateursListe,
etapes,
fichesLiees,
actionsLiees,
annexes,
Expand Down Expand Up @@ -79,6 +83,9 @@ const FicheActionPdf = ({
{/* Indicateurs */}
<Indicateurs fiche={fiche} indicateursListe={indicateursListe} />

{/* Étapes */}
{etapes && <Etapes etapes={etapes} />}

{/* Notes de suivi */}
<NotesDeSuivi notesSuivi={notesSuivi} />

Expand Down

0 comments on commit ed93855

Please sign in to comment.