From 35d12db50e82073a561ed235570d94ff498e4a11 Mon Sep 17 00:00:00 2001 From: Artur Rucinski Date: Fri, 16 Feb 2024 22:58:34 +0100 Subject: [PATCH] =?UTF-8?q?fix:=20sync=20modified=20data=20state=20in=20d?= =?UTF-8?q?=C3=A9claration=20indicator=20r=C3=A9numeration?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../declaration/[siren]/[year]/RecapCardIndicator.tsx | 2 +- .../declaration/remunerations/RemunerationForm.tsx | 9 ++++++--- .../declaration/resultat-global/ResultatGlobalForm.tsx | 7 ++++++- 3 files changed, 13 insertions(+), 5 deletions(-) diff --git a/packages/app/src/app/(default)/index-egapro/declaration/[siren]/[year]/RecapCardIndicator.tsx b/packages/app/src/app/(default)/index-egapro/declaration/[siren]/[year]/RecapCardIndicator.tsx index bdd850c397..c4d45e0f99 100644 --- a/packages/app/src/app/(default)/index-egapro/declaration/[siren]/[year]/RecapCardIndicator.tsx +++ b/packages/app/src/app/(default)/index-egapro/declaration/[siren]/[year]/RecapCardIndicator.tsx @@ -51,7 +51,7 @@ export const RecapCardIndicator = ({ name, customContent, edit, déclaration }:

)} - {note !== undefined && ( + {note !== undefined && !motifNc && ( { const router = useRouter(); - const { formData, saveFormData } = useDeclarationFormManager(); + const { formData, saveFormData, savePageData } = useDeclarationFormManager(); assertOrRedirectCommencerStep(formData); @@ -153,14 +153,17 @@ export const RemunerationForm = () => { }); } - // Prevent stale data mixing with new data + //FIXME: changing estCalculable to non on modified déclaration desyncs remunerations-resultat + if (data.estCalculable === "non") { + draft["remunerations-resultat"] = undefined; + savePageData("remunerations-resultat", undefined); + } if (data.estCalculable !== formData[stepName]?.estCalculable) { draft[stepName] = getModifiedFormValues(dirtyFields, data) as DeclarationDTO[typeof stepName]; } else { draft[stepName] = data as DeclarationDTO[typeof stepName]; } }); - saveFormData(newFormData); return router.push(funnelConfig(newFormData)[stepName].next().url); diff --git a/packages/app/src/app/(default)/index-egapro/declaration/resultat-global/ResultatGlobalForm.tsx b/packages/app/src/app/(default)/index-egapro/declaration/resultat-global/ResultatGlobalForm.tsx index 83087adc19..51e2858b4e 100644 --- a/packages/app/src/app/(default)/index-egapro/declaration/resultat-global/ResultatGlobalForm.tsx +++ b/packages/app/src/app/(default)/index-egapro/declaration/resultat-global/ResultatGlobalForm.tsx @@ -49,10 +49,15 @@ const stepName: FunnelKey = "resultat-global"; export const ResultatGlobalForm = () => { const router = useRouter(); - const { formData, saveFormData } = useDeclarationFormManager(); + const { formData, saveFormData, savePageData } = useDeclarationFormManager(); assertOrRedirectCommencerStep(formData); + //FIXME: Sync renumaration with renuerationResultat when editing + if (formData.remunerations?.estCalculable === "non") { + savePageData("remunerations-resultat", undefined); + } + const computed = computeDeclarationIndex(DeclarationComputerInputBuilder.fromDeclarationDTO(formData)); // We don't compute the index if we only read an existing declaration.