Skip to content

Commit

Permalink
Refaktorert erFerdigUtfylt, tatt variabler og funksjoner ut av erFerd…
Browse files Browse the repository at this point in the history
…igUtfylt.
  • Loading branch information
gunnsteingarmo committed Dec 1, 2023
1 parent 3b5036d commit addce42
Showing 1 changed file with 60 additions and 39 deletions.
99 changes: 60 additions & 39 deletions src/helpers/steg/bosituasjon.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,60 +6,79 @@ import { harValgtSvar } from '../../utils/spørsmålogsvar';
import { erDatoGyldigOgInnaforBegrensninger } from '../../components/dato/utils';
import { DatoBegrensning } from '../../components/dato/Datovelger';

export const erFerdigUtfylt = (bosituasjon: IBosituasjon) => {
const harPlanerOmÅBliSamboerEllerSkalGifteSeg = (bosituasjon: IBosituasjon) => {
const { skalGifteSegEllerBliSamboer } = bosituasjon;

return !!(
skalGifteSegEllerBliSamboer &&
skalGifteSegEllerBliSamboer.svarid === ESvar.JA
);
};

const harSattFødselsdato = (fødselsdato?: string): boolean =>
fødselsdato &&
erDatoGyldigOgInnaforBegrensninger(
fødselsdato,
DatoBegrensning.TidligereDatoer
)
? true
: false;

const harSattIdent = (ident?: string): boolean => (ident ? true : false);

const harFerdigUtfyltOmSamboer = (
samboerDetaljer?: IPersonDetaljer,
erIdentValgfritt?: boolean
): boolean =>
harValgtSvar(samboerDetaljer?.navn?.verdi) &&
(erIdentValgfritt
? true
: harSattIdent(samboerDetaljer?.ident?.verdi) ||
harSattFødselsdato(samboerDetaljer?.fødselsdato?.verdi));

const harFerdigUtfyltPlanerOmÅBliSamboerEllerBliGift = (
bosituasjon: IBosituasjon
): boolean => {
const {
delerBoligMedAndreVoksne,
samboerDetaljer,
skalGifteSegEllerBliSamboer,
datoFlyttetSammenMedSamboer,
datoFlyttetFraHverandre,
datoSkalGifteSegEllerBliSamboer,
vordendeSamboerEktefelle,
} = bosituasjon;

const harPlanerOmÅBliSamboerEllerSkalGifteSeg =
skalGifteSegEllerBliSamboer &&
skalGifteSegEllerBliSamboer.svarid === ESvar.JA;

const harSattFødselsdato = (fødselsdato?: string): boolean =>
fødselsdato &&
erDatoGyldigOgInnaforBegrensninger(
fødselsdato,
DatoBegrensning.TidligereDatoer
)
? true
: false;
const harSattIdent = (ident?: string): boolean => (ident ? true : false);
const harFerdigUtfyltOmSamboer = (
samboerDetaljer?: IPersonDetaljer,
erIdentValgfritt?: boolean
): boolean =>
harValgtSvar(samboerDetaljer?.navn?.verdi) &&
(erIdentValgfritt
? true
: harSattIdent(samboerDetaljer?.ident?.verdi) ||
harSattFødselsdato(samboerDetaljer?.fødselsdato?.verdi));
const harFerdigUtfyltPlanerOmÅBliSamboerEllerBliGift =
skalGifteSegEllerBliSamboer?.svarid === ESvar.NEI ||
(harPlanerOmÅBliSamboerEllerSkalGifteSeg &&
return !!(
(skalGifteSegEllerBliSamboer &&
skalGifteSegEllerBliSamboer?.verdi === false) ||
(harPlanerOmÅBliSamboerEllerSkalGifteSeg(bosituasjon) &&
datoSkalGifteSegEllerBliSamboer &&
erDatoGyldigOgInnaforBegrensninger(
datoSkalGifteSegEllerBliSamboer.verdi,
DatoBegrensning.FremtidigeDatoer
) &&
harFerdigUtfyltOmSamboer(vordendeSamboerEktefelle, false));
const harSattDatoFlyttetFraHverandra: boolean =
datoFlyttetFraHverandre?.verdi &&
harFerdigUtfyltOmSamboer(vordendeSamboerEktefelle, false))
);
};

const harSattDatoFlyttetFraHverandre = (bosituasjon: IBosituasjon) => {
const { datoFlyttetFraHverandre } = bosituasjon;
return datoFlyttetFraHverandre?.verdi &&
erDatoGyldigOgInnaforBegrensninger(
datoFlyttetFraHverandre?.verdi,
DatoBegrensning.AlleDatoer
)
? true
: false;
? true
: false;
};

export const erFerdigUtfylt = (bosituasjon: IBosituasjon) => {
const {
delerBoligMedAndreVoksne,
samboerDetaljer,
datoFlyttetSammenMedSamboer,
} = bosituasjon;

switch (delerBoligMedAndreVoksne.svarid) {
case ESøkerDelerBolig.borAleneMedBarnEllerGravid:
return harFerdigUtfyltPlanerOmÅBliSamboerEllerBliGift;
return harFerdigUtfyltPlanerOmÅBliSamboerEllerBliGift(bosituasjon);

case ESøkerDelerBolig.borMidlertidigFraHverandre:
return true;
Expand All @@ -79,13 +98,15 @@ export const erFerdigUtfylt = (bosituasjon: IBosituasjon) => {
);

case ESøkerDelerBolig.delerBoligMedAndreVoksne:
return harFerdigUtfyltPlanerOmÅBliSamboerEllerBliGift;
return harFerdigUtfyltPlanerOmÅBliSamboerEllerBliGift(bosituasjon);

case ESøkerDelerBolig.tidligereSamboerFortsattRegistrertPåAdresse:
return (
harFerdigUtfyltOmSamboer(samboerDetaljer, true) &&
harSattDatoFlyttetFraHverandra &&
harFerdigUtfyltPlanerOmÅBliSamboerEllerBliGift
harSattDatoFlyttetFraHverandre(bosituasjon) &&
harFerdigUtfyltPlanerOmÅBliSamboerEllerBliGift(bosituasjon)
);
default:
return true;
}
};

0 comments on commit addce42

Please sign in to comment.