Skip to content

Commit

Permalink
Bestillingsvisning innteksmelding tom naturalytelse gjenopptagelse
Browse files Browse the repository at this point in the history
  • Loading branch information
betsytraran committed Sep 18, 2024
1 parent 4cdb356 commit 41a06a0
Show file tree
Hide file tree
Showing 4 changed files with 202 additions and 1 deletion.
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,7 @@ import { Arbeidsforhold } from '@/components/fagsystem/aareg/bestilling/Arbeidsf
import { Sigrunstub } from '@/components/fagsystem/sigrunstub/bestilling/Sigrunstub'
import { SigrunstubPensjonsgivende } from '@/components/fagsystem/sigrunstubPensjonsgivende/bestilling/SigrunstubPensjonsgivende'
import { Inntektstub } from '@/components/fagsystem/inntektstub/bestilling/Inntektstub'
import { Inntektsmelding } from '@/components/fagsystem/inntektsmelding/bestilling/Inntektsmelding'

export const BestillingTitle = styled.h4`
margin: 5px 0 15px 0;
Expand Down Expand Up @@ -112,6 +113,7 @@ export const Bestillingsdata = ({ bestilling }: any) => {
sigrunstubPensjonsgivendeListe={bestilling.sigrunstubPensjonsgivende}
/>
<Inntektstub inntektstub={bestilling.inntektstub} />
<Inntektsmelding inntektsmelding={bestilling.inntektsmelding} />
</>
)
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,176 @@
import React from 'react'
import { ErrorBoundary } from '@/components/ui/appError/ErrorBoundary'
import { BestillingData, BestillingTitle } from '@/components/bestilling/sammendrag/Bestillingsdata'
import { DollyFieldArray } from '@/components/ui/form/fieldArray/DollyFieldArray'
import { TitleValue } from '@/components/ui/titleValue/TitleValue'
import { Kodeverk } from '@/components/fagsystem/inntektsmelding/InntektsmeldingTypes'
import { useInntektsmeldingKodeverk } from '@/utils/hooks/useInntektsmelding'
import { codeToNorskLabel, formatDate, oversettBoolean } from '@/utils/DataFormatter'
import { isEmpty } from '@/components/fagsystem/pdlf/form/partials/utils'

const showKodeverkLabel = (kodeverkstype: string, value: string) => {
const { kodeverk, loading, error } = useInntektsmeldingKodeverk(kodeverkstype)
if (loading || error) {
return value
}
return kodeverk?.find((kode: any) => kode?.value === value)?.label || value
}

const AvtaltFerie = ({ ferie }) => {
if (!ferie || ferie?.length === 0) {
return null
}

return (
<DollyFieldArray header={'Avtalt ferie'} data={ferie} nested>
{(ferie: any, idx: number) => (
<React.Fragment key={idx}>
<TitleValue title="Fra og med dato" value={formatDate(ferie?.fom)} />
<TitleValue title="Til og med dato" value={formatDate(ferie?.tom)} />
</React.Fragment>
)}
</DollyFieldArray>
)
}

const Refusjon = ({ refusjon }) => {
console.log('refusjon: ', refusjon) //TODO - SLETT MEG
console.log('isEmpty(refusjon): ', isEmpty(refusjon)) //TODO - SLETT MEG
if (!refusjon || isEmpty(refusjon)) {
return null
}

return (
<>
<div className="flexbox--full-width" style={{ margin: '15px 0 -15px 0' }}>
<BestillingTitle>Refusjon</BestillingTitle>
<BestillingData>
<TitleValue
title="Samlet månedlig refusjonsbeløp"
value={refusjon?.refusjonsbeloepPrMnd}
/>
<TitleValue
title="Opphørsdato for refusjon"
value={formatDate(refusjon?.refusjonsopphoersdato)}
/>
</BestillingData>
</div>
{refusjon?.endringIRefusjonListe?.length > 0 && (
<DollyFieldArray header="Endring i refusjon" data={refusjon?.endringIRefusjonListe} nested>
{(endring: any, idx: number) => (
<React.Fragment key={idx}>
<TitleValue title="Endringsdato" value={formatDate(endring?.endringsdato)} />
<TitleValue
title="Nytt refusjonsbeløp per måned"
value={endring?.refusjonsbeloepPrMnd}
/>
</React.Fragment>
)}
</DollyFieldArray>
)}
</>
)
}

const NaturalytelseOpphoer = ({ naturalytelseOpphoer }) => {
if (!naturalytelseOpphoer || naturalytelseOpphoer?.length === 0) {
return null
}

return (
<DollyFieldArray header="Opphør av naturalytelse" data={naturalytelseOpphoer} nested>
{(naturalytelse: any, idx: number) => (
<React.Fragment key={idx}>
<TitleValue title="Beløp per måned" value={naturalytelse?.beloepPrMnd} />
<TitleValue title="Fra og med dato" value={formatDate(naturalytelse?.fom)} />
<TitleValue
title="Årsak til innsending"
value={codeToNorskLabel(naturalytelse?.naturalytelseType)}
/>
</React.Fragment>
)}
</DollyFieldArray>
)
}

const NaturalytelseGjenopptakelse = ({ naturalytelseGjenopptakelse }) => {
if (!naturalytelseGjenopptakelse || naturalytelseGjenopptakelse?.length === 0) {
return null
}

return (
<DollyFieldArray
header="Gjenopptakelse av naturalytelse"
data={naturalytelseGjenopptakelse}
nested
>
{(naturalytelse: any, idx: number) => (
<React.Fragment key={idx}>
<TitleValue title="Beløp per måned" value={naturalytelse?.beloepPrMnd} />
<TitleValue title="Fra og med dato" value={formatDate(naturalytelse?.fom)} />
<TitleValue
title="Årsak til innsending"
value={codeToNorskLabel(naturalytelse?.naturalytelseType)}
/>
</React.Fragment>
)}
</DollyFieldArray>
)
}

export const Inntektsmelding = ({ inntektsmelding }) => {
if (!inntektsmelding || inntektsmelding?.inntekter?.length === 0) {
return null
}

return (
<div className="person-visning">
<ErrorBoundary>
<BestillingTitle>Inntektsmelding (fra Altinn)</BestillingTitle>
<DollyFieldArray header="Inntekt" data={inntektsmelding.inntekter}>
{(inntekt: any, idx: number) => (
<>
<TitleValue
title="Årsak til innsending"
value={codeToNorskLabel(inntekt.aarsakTilInnsending)}
/>
<TitleValue title="Ytelse" value={codeToNorskLabel(inntekt?.ytelse)} />
<TitleValue title="Nær relasjon" value={inntekt?.naerRelasjon ? 'Ja' : null} />
<TitleValue
title="Innsendingstidspunkt"
value={formatDate(inntekt?.avsendersystem?.innsendingstidspunkt)}
/>
<TitleValue
title="Arbeidsgiver (orgnr)"
value={inntekt?.arbeidsgiver?.virksomhetsnummer}
/>
<TitleValue
title="Arbeidsgiver (fnr/dnr/npid)"
value={inntekt?.arbeidsgiverPrivat?.arbeidsgiverFnr}
/>
<TitleValue
title="Arbeidsforhold-ID"
value={inntekt?.arbeidsforhold?.arbeidsforholdId}
/>
<TitleValue title="Beløp" value={inntekt?.arbeidsforhold?.beregnetInntekt?.beloep} />
<TitleValue
title="Årsak ved endring"
value={codeToNorskLabel(inntekt?.arbeidsforhold?.aarsakVedEndring)}
/>
<TitleValue
title="Første fraværsdag"
value={formatDate(inntekt?.arbeidsforhold?.foersteFravaersdag)}
/>
<AvtaltFerie ferie={inntekt?.arbeidsforhold?.avtaltFerieListe} />
<Refusjon refusjon={inntekt?.refusjon} />
<NaturalytelseOpphoer naturalytelseOpphoer={inntekt?.opphoerAvNaturalytelseListe} />
<NaturalytelseGjenopptakelse
naturalytelseGjenopptakelse={inntekt?.gjenopptakelseNaturalytelseListe}
/>
</>
)}
</DollyFieldArray>
</ErrorBoundary>
</div>
)
}
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ export const isEmpty = (attributt: any, excludeList = [] as Array<string>) => {
return (
attributt?.empty ||
Object.values(flattenData(attributt)).every(
(x) => x === null || x === '' || x === false || x === undefined,
(x) => x === null || x === '' || x === false || x === undefined || x?.length === 0,
)
)
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
import useSWR from 'swr'
import { fetcher } from '@/api'

const getKodeverkUrl = (kodeverkstype: string) => {
return `dolly-backend/api/v1/inntektsmelding/${kodeverkstype}`
}

export const useInntektsmeldingKodeverk = (kodeverkstype: string) => {
const { data, isLoading, error } = useSWR<any, Error>(getKodeverkUrl(kodeverkstype), fetcher)
console.log('data: ', data) //TODO - SLETT MEG
const koder =
data &&
Object.keys(data)?.map((key) => ({
label: key,
value: data[key],
}))

return {
kodeverk: koder,
loading: isLoading,
error: error,
}
}

0 comments on commit 41a06a0

Please sign in to comment.