Skip to content

Commit 4b30cda

Browse files
committed
oppdater overstyring med spørsmål om fødsel
1 parent 2f2d294 commit 4b30cda

File tree

3 files changed

+44
-12
lines changed

3 files changed

+44
-12
lines changed

packages/fakta/fodsel/i18n/nb_NO.json

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,9 @@
44
"OverstyringPanel.Tittel": "Fakta om fødsel",
55
"OverstyringForm.Tittel": "Overstyring av fødselsdetaljer",
66
"OverstyringForm.Avbryt": "Avbryt",
7+
"OverstyringForm.ErBarnetFødt": "Er barnet født?",
8+
"OverstyringForm.Ja": "Ja",
9+
"OverstyringForm.Nei": "Nei",
710
"TermindatoFaktaForm.Tittel": "Kontroller opplysninger om termin oppgitt i søknaden",
811
"TermindatoFaktaForm.AdvarselForTidligUtstedtdato": "Terminbekreftelsen utstedt før 22. svangerskapsuke. Kontakt søker for en nyere terminbekreftelse og sett saken på vent. Fortsett dersom ny bekreftelse ikke skal hentes inn. Behandlingen vil avslås på grunn av manglende dokumentasjon",
912
"AvklartBarnFieldArray.LeggTilBarn": "Legg til barn",
@@ -14,7 +17,7 @@
1417
"FaktaFødselFraFReg.Tittel": "Opplysninger fra Folkeregisteret",
1518
"FaktaFødselFraFReg.IngenBarn": "Det er ikke registrert noen fødselshendelse i Folkeregisteret",
1619
"FaktaFødselFraSøknad.Tittel": "Opplysninger oppgitt i søknaden",
17-
"FaktaFødselFraSøknad.Terminbekreftelse" : "Terminbekreftelse",
20+
"FaktaFødselFraSøknad.Terminbekreftelse": "Terminbekreftelse",
1821
"FaktaFødselFraSøknad.VisTerminbekreftelse": "Vis terminbekreftelse",
1922
"Situasjon.OpplysningerGjeldende": "Gjeldende opplysninger",
2023
"Label.NummerertBarn": "Barn {nummer}",

packages/fakta/fodsel/src/components/overstyring/OverstyringForm.tsx

Lines changed: 38 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,8 @@ import { useForm } from 'react-hook-form';
22
import { FormattedMessage } from 'react-intl';
33

44
import { Button, HStack, VStack } from '@navikt/ds-react';
5-
import { Form } from '@navikt/ft-form-hooks';
5+
import { Form, RadioGroupPanel } from '@navikt/ft-form-hooks';
6+
import { required } from '@navikt/ft-form-validators';
67

78
import { type FaktaBegrunnelseFormValues, FaktaBegrunnelseTextField, FaktaSubmitButton } from '@navikt/fp-fakta-felles';
89
import { AksjonspunktKode } from '@navikt/fp-kodeverk';
@@ -17,25 +18,51 @@ interface Props {
1718
gjeldende: FødselGjeldende;
1819
isReadOnly: boolean;
1920
submittable: boolean;
21+
overstyringsAP?: OverstyringFaktaFødselAp;
2022
avbrytOverstyring: () => void;
2123
}
2224

23-
type FormValues = TermindatoFormValues & BarnFormValues & FaktaBegrunnelseFormValues;
25+
type FormValues = { erBarnetFødt: boolean } & TermindatoFormValues & BarnFormValues & FaktaBegrunnelseFormValues;
2426

25-
export const OverstyringForm = ({ gjeldende, isReadOnly, submittable, avbrytOverstyring }: Props) => {
27+
export const OverstyringForm = ({ gjeldende, isReadOnly, submittable, avbrytOverstyring, overstyringsAP }: Props) => {
2628
const { submitCallback } = usePanelDataContext();
2729

2830
const formMethods = useForm<FormValues>({
29-
defaultValues: initialValues(gjeldende),
31+
defaultValues: initialValues(gjeldende, overstyringsAP),
3032
});
3133

3234
return (
3335
<Form formMethods={formMethods} onSubmit={values => submitCallback(transformValues(values))}>
34-
<VStack gap="4">
36+
<VStack gap="6">
3537
<Termindato isReadOnly={isReadOnly} />
36-
<BarnFieldArray isReadOnly={isReadOnly} />
38+
<RadioGroupPanel
39+
name="erBarnetFødt"
40+
label={<FormattedMessage id="OverstyringForm.ErBarnetFødt" />}
41+
validate={[required]}
42+
isReadOnly={isReadOnly}
43+
isHorizontal
44+
size="medium"
45+
isTrueOrFalseSelection
46+
radios={[
47+
{
48+
label: <FormattedMessage id="OverstyringForm.Ja" />,
49+
value: 'true',
50+
element: <BarnFieldArray isReadOnly={isReadOnly} />,
51+
},
52+
{
53+
label: <FormattedMessage id="OverstyringForm.Nei" />,
54+
value: 'false',
55+
disabled: gjeldende.barn.some(b => b.kilde === 'FOLKEREGISTER'),
56+
},
57+
]}
58+
/>
59+
<FaktaBegrunnelseTextField
60+
isSubmittable={submittable}
61+
isReadOnly={isReadOnly}
62+
hasBegrunnelse={true}
63+
size="medium"
64+
/>
3765

38-
<FaktaBegrunnelseTextField isSubmittable={submittable} isReadOnly={isReadOnly} hasBegrunnelse={true} />
3966
<HStack gap="2">
4067
<FaktaSubmitButton
4168
isSubmittable={submittable}
@@ -58,15 +85,16 @@ export const OverstyringForm = ({ gjeldende, isReadOnly, submittable, avbrytOver
5885
);
5986
};
6087

61-
const initialValues = (gjeldende: FødselGjeldende) => ({
88+
const initialValues = (gjeldende: FødselGjeldende, overstyringsAP?: OverstyringFaktaFødselAp) => ({
6289
termindato: gjeldende.termindato?.termindato ?? '',
90+
erBarnetFødt: gjeldende.barn.length > 0,
6391
...BarnFieldArray.initialValues(gjeldende),
64-
...FaktaBegrunnelseTextField.initialValues(),
92+
...FaktaBegrunnelseTextField.initialValues(overstyringsAP?.begrunnelse),
6593
});
6694

6795
const transformValues = (values: FormValues): OverstyringFaktaFødselAp => ({
6896
kode: AksjonspunktKode.OVERSTYRING_AV_FAKTA_OM_FØDSEL,
6997
termindato: values.termindato,
70-
...BarnFieldArray.transformValues(values),
98+
...(values.erBarnetFødt ? BarnFieldArray.transformValues(values) : {}),
7199
...FaktaBegrunnelseTextField.transformValues(values),
72100
});

packages/fakta/fodsel/src/components/overstyring/OverstyringPanel.tsx

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ export const OverstyringPanel = ({ kanOverstyre, gjeldende, submittable }: Props
2525
const overstyringAksjonspunkter = aksjonspunkterForPanel.filter(
2626
a => a.definisjon === AksjonspunktKode.OVERSTYRING_AV_FAKTA_OM_FØDSEL,
2727
);
28-
const [erOverstyrt, setErOverstyrt] = useState(!!overstyringAksjonspunkter[0]?.begrunnelse);
28+
const [erOverstyrt, setErOverstyrt] = useState(!!overstyringAksjonspunkter[0]?.status);
2929
return (
3030
<>
3131
<HStack gap="4">
@@ -44,6 +44,7 @@ export const OverstyringPanel = ({ kanOverstyre, gjeldende, submittable }: Props
4444
isReadOnly={isReadOnly}
4545
gjeldende={gjeldende}
4646
submittable={submittable}
47+
overstyringsAP={overstyringAksjonspunkter[0]}
4748
avbrytOverstyring={() => setErOverstyrt(false)}
4849
/>
4950
</FaktaKort>

0 commit comments

Comments
 (0)