Skip to content

Commit

Permalink
Bestillingsvisning forelder barn og delt bosted. Ekspanderbar visning…
Browse files Browse the repository at this point in the history
… som generell komponent. Div fix
  • Loading branch information
betsytraran committed Jan 24, 2024
1 parent b97968b commit 320f215
Show file tree
Hide file tree
Showing 8 changed files with 152 additions and 15 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@ import { Oppholdsadresse } from '@/components/fagsystem/pdlf/bestilling/partials
import { Kontaktadresse } from '@/components/fagsystem/pdlf/bestilling/partials/Kontaktadresse'
import { Adressebeskyttelse } from '@/components/fagsystem/pdlf/bestilling/partials/Adressebeskyttelse'
import { Sivilstand } from '@/components/fagsystem/pdlf/bestilling/partials/Sivilstand'
import { ForelderBarnRelasjon } from '@/components/fagsystem/pdlf/bestilling/partials/ForelderBarnRelasjon'

export const BestillingTitle = styled.h4`
margin: 5px 0 15px 0;
Expand Down Expand Up @@ -84,6 +85,7 @@ export const Bestillingsdata = ({ bestilling }: any) => {
adressebeskyttelseListe={bestilling.pdldata?.person?.adressebeskyttelse}
/>
<Sivilstand sivilstandListe={bestilling.pdldata?.person?.sivilstand} />
<ForelderBarnRelasjon forelderBarnListe={bestilling.pdldata?.person?.forelderBarnRelasjon} />
</>
)
}
Original file line number Diff line number Diff line change
@@ -1,17 +1,16 @@
import useBoolean from '@/utils/hooks/useBoolean'
import Button from '@/components/ui/button/Button'
import React from 'react'
import { RelatertPerson } from '@/components/bestilling/sammendrag/visning/RelatertPerson'
import { isEmpty } from '@/components/fagsystem/pdlf/form/partials/utils'

type EkspanderbarVisningTypes = {
data: any
vis: boolean
header: string
children?: any
}
export const EkspanderbarVisning = ({ data, header }: EkspanderbarVisningTypes) => {
export const EkspanderbarVisning = ({ vis, header, children }: EkspanderbarVisningTypes) => {
const [visPersonValg, setVisPersonValg, setSkjulPersonValg] = useBoolean(false)

if (!data || isEmpty(data, ['syntetisk'])) {
if (!vis) {
return null
}

Expand All @@ -26,7 +25,7 @@ export const EkspanderbarVisning = ({ data, header }: EkspanderbarVisningTypes)
</Button>
{visPersonValg && (
<div className={'flexbox--align-start flexbox--wrap'} style={{ margin: '10px 0 10px 0' }}>
<RelatertPerson personData={data} />
{children}
</div>
)}
</div>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ export const RelatertPerson = ({ personData }: any) => {
return (
<>
<TitleValue title="Identtype" value={personData.identtype} />
<TitleValue title="Kjønn" value={personData.kjoenn} />
<TitleValue title="Kjønn" value={showLabel('kjoenn', personData.kjoenn)} />
<TitleValue title="Født etter" value={formatDate(personData.foedtEtter)} />
<TitleValue title="Født før" value={formatDate(personData.foedtFoer)} />
<TitleValue title="Fødselsdato" value={formatDate(personData.foedselsdato)} />
Expand All @@ -22,7 +22,7 @@ export const RelatertPerson = ({ personData }: any) => {
kodeverk={AdresseKodeverk.StatsborgerskapLand}
/>
<TitleValue title="Gradering" value={showLabel('gradering', personData.gradering)} />
<TitleValue title="Har mellomnavn" value={personData.nyttNavn?.hasMellomnavn && 'JA'} />
<TitleValue title="Har mellomnavn" value={personData.nyttNavn?.hasMellomnavn && 'Ja'} />
<TitleValue title="Fornavn" value={personData.navn?.fornavn} />
<TitleValue title="Mellomnavn" value={personData.navn?.mellomnavn} />
<TitleValue title="Etternavn" value={personData.navn?.etternavn} />
Expand Down
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
import SubOverskrift from '@/components/ui/subOverskrift/SubOverskrift'
import { DeltBosted } from '@/pages/gruppe/PersonVisning/PersonMiljoeinfo/PdlDataTyper'
import { DeltBostedData } from '@/pages/gruppe/PersonVisning/PersonMiljoeinfo/PdlDataTyper'
import { ArrayHistorikk } from '@/components/ui/historikk/ArrayHistorikk'
import { Adresse } from '@/components/fagsystem/pdlf/visning/partials/DeltBosted'

type PdlDeltBostedProps = {
data: Array<DeltBosted>
data: Array<DeltBostedData>
}

type AdresseProps = {
data: DeltBosted
data: DeltBostedData
idx?: number
}

Expand All @@ -25,8 +25,8 @@ export const PdlDeltBosted = ({ data }: PdlDeltBostedProps) => {
return null
}

const gyldigeAdresser = data.filter((adresse: DeltBosted) => !adresse.metadata?.historisk)
const historiskeAdresser = data.filter((adresse: DeltBosted) => adresse.metadata?.historisk)
const gyldigeAdresser = data.filter((adresse: DeltBostedData) => !adresse.metadata?.historisk)
const historiskeAdresser = data.filter((adresse: DeltBostedData) => adresse.metadata?.historisk)

return (
<>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -142,6 +142,8 @@ export type ForeldreBarnRelasjon = {
relatertPersonsRolle: Rolle
deltBosted?: any
typeForelderBarn?: string
borIkkeSammen?: boolean
partnerErIkkeForelder?: boolean
}

export type DoedfoedtBarnData = {
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
import React from 'react'
import { DeltBostedData } from '@/pages/gruppe/PersonVisning/PersonMiljoeinfo/PdlDataTyper'
import { formatDate, showLabel } from '@/utils/DataFormatter'
import { Vegadresse } from '@/components/fagsystem/pdlf/bestilling/partials/Vegadresse'
import { Matrikkeladresse } from '@/components/fagsystem/pdlf/bestilling/partials/Matrikkeladresse'
import { UkjentBosted } from '@/components/fagsystem/pdlf/bestilling/partials/UkjentBosted'
import { TitleValue } from '@/components/ui/titleValue/TitleValue'

type DeltBostedTypes = {
deltBosted: DeltBostedData
}

export const DeltBosted = ({ deltBosted }: DeltBostedTypes) => {
if (!deltBosted) {
return null
}

return (
<>
<TitleValue
title="Adressetype"
value={showLabel('adressetypeDeltBosted', deltBosted.adressetype)}
/>
<Vegadresse vegadresse={deltBosted.vegadresse} />
<Matrikkeladresse matrikkeladresse={deltBosted.matrikkeladresse} />
<UkjentBosted ukjentBosted={deltBosted.ukjentBosted} />
<TitleValue
title="Startdato for kontrakt"
value={formatDate(deltBosted.startdatoForKontrakt)}
/>
<TitleValue
title="Sluttdato for kontrakt"
value={formatDate(deltBosted.sluttdatoForKontrakt)}
/>
</>
)
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,96 @@
import { ErrorBoundary } from '@/components/ui/appError/ErrorBoundary'
import { BestillingTitle } from '@/components/bestilling/sammendrag/Bestillingsdata'
import { DollyFieldArray } from '@/components/ui/form/fieldArray/DollyFieldArray'
import React from 'react'
import { TitleValue } from '@/components/ui/titleValue/TitleValue'
import { ForeldreBarnRelasjon } from '@/components/fagsystem/pdlf/PdlTypes'
import { showLabel } from '@/utils/DataFormatter'
import { EkspanderbarVisning } from '@/components/bestilling/sammendrag/visning/EkspanderbarVisning'
import { DeltBosted } from '@/components/fagsystem/pdlf/bestilling/partials/DeltBosted'
import { RelatertPerson } from '@/components/bestilling/sammendrag/visning/RelatertPerson'
import { isEmpty } from '@/components/fagsystem/pdlf/form/partials/utils'

type ForelderBarnTypes = {
forelderBarnListe: Array<ForeldreBarnRelasjon>
}

const getHeader = (forelderBarnRelasjon: ForeldreBarnRelasjon) => {
return showLabel('pdlRelasjonTyper', forelderBarnRelasjon?.relatertPersonsRolle)
}

export const ForelderBarnRelasjon = ({ forelderBarnListe }: ForelderBarnTypes) => {
if (!forelderBarnListe || forelderBarnListe.length < 1) {
return null
}

return (
<div className="person-visning">
<ErrorBoundary>
<BestillingTitle>Barn/foreldre</BestillingTitle>
<DollyFieldArray header="Relasjon" getHeader={getHeader} data={forelderBarnListe}>
{(forelderBarn: ForeldreBarnRelasjon, idx: number) => {
if (
forelderBarn.relatertPersonsRolle === 'FORELDER' &&
isEmpty(forelderBarn, [
'kilde',
'master',
'minRolleForPerson',
'relatertPersonsRolle',
])
) {
return <TitleValue title="Relasjon" value="Ingen verdier satt" />
}
const dataIsEmpty = (data: any) => {
return !data || isEmpty(data, ['syntetisk'])
}

return (
<React.Fragment key={idx}>
<TitleValue
title="Rolle for barn"
value={
forelderBarn.relatertPersonsRolle === 'BARN' &&
showLabel('pdlRelasjonTyper', forelderBarn.minRolleForPerson)
}
/>
<TitleValue title="Bor ikke sammen" value={forelderBarn.borIkkeSammen && 'Ja'} />
<TitleValue
title="Partner ikke forelder"
value={forelderBarn.partnerErIkkeForelder && 'Ja'}
/>
<TitleValue
title={`Type ${forelderBarn.relatertPersonsRolle}`}
value={showLabel('typeAnsvarlig', forelderBarn.typeForelderBarn)}
/>
<TitleValue
title={forelderBarn.relatertPersonsRolle}
value={forelderBarn.relatertPerson}
/>
<EkspanderbarVisning
vis={!dataIsEmpty(forelderBarn.deltBosted)}
header="DELT BOSTED"
>
<DeltBosted deltBosted={forelderBarn.deltBosted} />
</EkspanderbarVisning>
<EkspanderbarVisning
vis={!dataIsEmpty(forelderBarn.nyRelatertPerson)}
header={forelderBarn.relatertPersonsRolle}
>
<RelatertPerson personData={forelderBarn.nyRelatertPerson} />
</EkspanderbarVisning>
<EkspanderbarVisning
vis={!dataIsEmpty(forelderBarn.relatertPersonUtenFolkeregisteridentifikator)}
header={forelderBarn.relatertPersonsRolle}
>
<RelatertPerson
personData={forelderBarn.relatertPersonUtenFolkeregisteridentifikator}
/>
</EkspanderbarVisning>
</React.Fragment>
)
}}
</DollyFieldArray>
</ErrorBoundary>
</div>
)
}
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ export type Ident = {
export type HentPerson = {
foedsel: [FoedselData]
bostedsadresse: Array<BostedData>
deltBosted: Array<DeltBosted>
deltBosted: Array<DeltBostedData>
oppholdsadresse: Array<OppholdsadresseData>
kontaktadresse: Array<KontaktadresseData>
adressebeskyttelse: Array<AdressebeskyttelseData>
Expand Down Expand Up @@ -76,14 +76,15 @@ export type BostedData = {
id?: number
}

export type DeltBosted = {
export type DeltBostedData = {
startdatoForKontrakt?: Date
sluttdatoForKontrakt?: Date
coAdressenavn?: string
vegadresse?: VegadresseData
matrikkeladresse?: MatrikkeladresseData
ukjentBosted?: UkjentBostedData
metadata?: Metadata
adressetype?: string
}

export type OppholdsadresseData = {
Expand Down

0 comments on commit 320f215

Please sign in to comment.