Skip to content

Commit

Permalink
Henter info i søknadsbildet fra behovsmeldingsendepunktet i stedet fo…
Browse files Browse the repository at this point in the history
…r fra saken
  • Loading branch information
matsbyfl committed Nov 4, 2024
1 parent 56410ea commit 9a0ea49
Show file tree
Hide file tree
Showing 13 changed files with 199 additions and 187 deletions.
23 changes: 9 additions & 14 deletions client/src/saksbilde/Søknadsbilde.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,8 @@ const SaksbildeContent = memo(() => {
if (!sak || !behovsmelding) return <div>Fant ikke sak</div>

const erBestilling = sak.data.sakstype === Sakstype.BESTILLING
const levering = behovsmelding.levering
const formidler = levering.hjelpemiddelformidler

return (
<Hovedinnhold columns={`auto ${hotsakHistorikkWidth}`}>
Expand All @@ -60,14 +62,13 @@ const SaksbildeContent = memo(() => {
/>
<FormidlerCard
tittel={erBestilling ? 'Bestiller' : 'Formidler'}
stilling={sak.data.formidler.stilling}
formidlerNavn={sak.data.formidler.navn}
formidlerTelefon={sak.data.formidler.telefon}
kommune={sak.data.formidler.poststed}
stilling={formidler.stilling}
formidlerNavn={formidler.navn}
formidlerTelefon={formidler.telefon}
kommune={formidler.adresse.poststed}
/>
<LeveringCard
formidler={sak.data.formidler}
levering={sak.data.levering}
levering={behovsmelding.levering}
adresseBruker={formaterAdresse(sak.data.personinformasjon)}
/>
<GreitÅViteCard
Expand Down Expand Up @@ -98,18 +99,12 @@ const SaksbildeContent = memo(() => {
<Bruker
bruker={sak.data.bruker}
person={sak.data.personinformasjon}
levering={sak.data.levering}
formidler={sak.data.formidler}
levering={behovsmelding.levering}
vilkår={behovsmelding.brukersituasjon.vilkår}
/>
}
/>
<Route
path="/formidler"
element={
<Formidler formidler={sak.data.formidler} oppfølgingsansvarlig={sak.data.oppfølgingsansvarlig} />
}
/>
<Route path="/formidler" element={<Formidler levering={levering} />} />
</Routes>
</Container>
</section>
Expand Down
16 changes: 7 additions & 9 deletions client/src/saksbilde/bruker/Bruker.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -5,13 +5,11 @@ import { Avstand } from '../../felleskomponenter/Avstand'
import { Merknad } from '../../felleskomponenter/Merknad'
import { Strek } from '../../felleskomponenter/Strek'
import { Brødtekst, Etikett, Tekst } from '../../felleskomponenter/typografi'
import { Vilkår } from '../../types/BehovsmeldingTypes'
import { Levering, Vilkår } from '../../types/BehovsmeldingTypes'
import {
Bosituasjon,
Bruksarena,
Formidler,
Bruker as Hjelpemiddelbruker,
Levering,
PersonInfoKilde,
Personinformasjon,
} from '../../types/types.internal'
Expand All @@ -24,11 +22,11 @@ export interface BrukerProps {
bruker: Hjelpemiddelbruker
person: Personinformasjon
levering: Levering
formidler: Formidler
vilkår: Vilkår[]
}

export function Bruker({ bruker, person, levering, formidler, vilkår }: BrukerProps) {
export function Bruker({ bruker, person, levering, vilkår }: BrukerProps) {
const { utleveringMerknad } = levering
const formatertNavn = formaterNavn(bruker)
const adresseBruker = formaterAdresse(person)
const bosituasjon = getTextForBosituasjon(person.bosituasjon)
Expand Down Expand Up @@ -77,17 +75,17 @@ export function Bruker({ bruker, person, levering, formidler, vilkår }: BrukerP
<HGrid {...hGridProps}>
<Etikett>Leveringsadresse</Etikett>
<Leveringsmåte levering={levering} adresseBruker={adresseBruker} />
<Kontaktperson formidler={formidler} kontaktperson={levering.kontaktperson} />
{levering.merknad && (
<Kontaktperson levering={levering} />
{utleveringMerknad && (
<>
<Merknad>
<Avstand paddingTop={1} />
<Etikett>Merknad til utlevering</Etikett>
</Merknad>
<HStack align="center">
<Brødtekst>{levering.merknad}</Brødtekst>
<Brødtekst>{utleveringMerknad}</Brødtekst>
<Tooltip content="Kopier merknad til utlevering" placement="right">
<CopyButton size="small" copyText={levering.merknad} />
<CopyButton size="small" copyText={utleveringMerknad} />
</Tooltip>
</HStack>
</>
Expand Down
27 changes: 15 additions & 12 deletions client/src/saksbilde/bruker/Kontaktperson.tsx
Original file line number Diff line number Diff line change
@@ -1,16 +1,15 @@
import { CopyButton, HStack, Tooltip } from '@navikt/ds-react'
import { Etikett, Tekst } from '../../felleskomponenter/typografi'
import { Formidler, Kontaktperson as IKontaktperson, KontaktpersonType } from '../../types/types.internal'
import { Kontaktperson as KontaktpersonType, Levering } from '../../types/BehovsmeldingTypes'
import { formaterNavn } from '../../utils/formater'
import { CopyButton, HStack, Tooltip } from '@navikt/ds-react'

export interface KontaktpersonProps {
formidler: Formidler
kontaktperson?: IKontaktperson
levering: Levering
}

export function Kontaktperson({ formidler, kontaktperson }: KontaktpersonProps) {
if (!kontaktperson) return null
const kontaktpersonTekst = lagKontaktpersonTekst(formidler, kontaktperson)
export function Kontaktperson({ levering }: KontaktpersonProps) {
if (!levering.utleveringKontaktperson) return null
const kontaktpersonTekst = lagKontaktpersonTekst(levering)
return (
<>
<Etikett>Kontaktperson</Etikett>
Expand All @@ -24,14 +23,18 @@ export function Kontaktperson({ formidler, kontaktperson }: KontaktpersonProps)
)
}

export function lagKontaktpersonTekst(formidler: Formidler, kontaktperson?: IKontaktperson): string {
switch (kontaktperson?.kontaktpersonType) {
export function lagKontaktpersonTekst(levering: Levering): string {
const { hjelpemiddelformidler, utleveringKontaktperson, annenKontaktperson } = levering
switch (utleveringKontaktperson) {
case KontaktpersonType.HJELPEMIDDELBRUKER:
return 'Hjelpemiddelbruker'
case KontaktpersonType.HJELPEMIDDELFORMIDLER:
return `Formidler (${formaterNavn(formidler.navn)})`
return `Formidler (${formaterNavn(hjelpemiddelformidler.navn)})`
case KontaktpersonType.ANNEN_KONTAKTPERSON:
return `${kontaktperson.navn}. Telefon: ${kontaktperson.telefon}`
return annenKontaktperson
? `${formaterNavn(annenKontaktperson.navn)}. Telefon: ${annenKontaktperson.telefon}`
: ''
case undefined:
return 'Ukjen kontaktperson'
}
return ''
}
20 changes: 11 additions & 9 deletions client/src/saksbilde/bruker/Leveringsmåte.tsx
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
import { Tekst } from '../../felleskomponenter/typografi'
import { Levering, Leveringsmåte as LeveringsmåteType } from '../../types/types.internal'
import { Levering, Utleveringsmåte } from '../../types/BehovsmeldingTypes'
import { formaterAdresse } from '../../utils/formater'

export interface LeveringsmåteProps {
levering: Levering
Expand All @@ -11,16 +12,17 @@ export function Leveringsmåte({ levering, adresseBruker }: LeveringsmåteProps)
return <Tekst>{leveringsmåteTekst}</Tekst>
}

function lagLeveringsmåteTekst({ leveringsmåte, adresse }: Levering, adresseBruker: string): string {
switch (leveringsmåte) {
case LeveringsmåteType.ALLEREDE_LEVERT:
case LeveringsmåteType.ALLE_HJELPEMIDLENE_ER_MARKERT_SOM_UTLEVERT:
function lagLeveringsmåteTekst({ utleveringsmåte, annenUtleveringsadresse }: Levering, adresseBruker: string): string {
switch (utleveringsmåte) {
case Utleveringsmåte.ALLEREDE_UTLEVERT_AV_NAV:
return 'Allerede levert'
case LeveringsmåteType.ANNEN_ADRESSE:
return `${adresse} (Annen adresse)`
case LeveringsmåteType.FOLKEREGISTRERT_ADRESSE:
case Utleveringsmåte.ANNEN_BRUKSADRESSE:
return `${formaterAdresse(annenUtleveringsadresse)} (Annen adresse)`
case Utleveringsmåte.FOLKEREGISTRERT_ADRESSE:
return `${adresseBruker} (Folkeregistert adresse)`
case LeveringsmåteType.HJELPEMIDDELSENTRAL:
case Utleveringsmåte.HJELPEMIDDELSENTRALEN:
return 'Hentes på hjelpemiddelsentralen'
case undefined:
return 'Ukjent leveringsmåte'
}
}
44 changes: 31 additions & 13 deletions client/src/saksbilde/formidler/Formidler.tsx
Original file line number Diff line number Diff line change
@@ -1,19 +1,20 @@
import { Box, Heading, HGrid, HGridProps, HStack } from '@navikt/ds-react'

import { formaterNavn, storForbokstavIAlleOrd } from '../../utils/formater'
import { formaterAdresse, formaterNavn, storForbokstavIAlleOrd } from '../../utils/formater'

import { PersonIcon } from '@navikt/aksel-icons'
import { Merknad } from '../../felleskomponenter/Merknad'
import { Strek } from '../../felleskomponenter/Strek'
import { BrytbarBrødtekst, Brødtekst, Etikett } from '../../felleskomponenter/typografi'
import type { Formidler as FormidlerType, Oppfølgingsansvarlig } from '../../types/types.internal'
import { PersonIcon } from '@navikt/aksel-icons'
import { Levering, Oppfølgingsansvarlig } from '../../types/BehovsmeldingTypes'

export interface FormidlerProps {
formidler: FormidlerType
oppfølgingsansvarlig: Oppfølgingsansvarlig
levering: Levering
}

export function Formidler({ formidler, oppfølgingsansvarlig }: FormidlerProps) {
export function Formidler({ levering }: FormidlerProps) {
const { hjelpemiddelformidler: formidler, oppfølgingsansvarlig, annenOppfølgingsansvarlig } = levering

const InfoFormidler = () => {
return (
<HGrid {...hGridProps}>
Expand All @@ -24,32 +25,49 @@ export function Formidler({ formidler, oppfølgingsansvarlig }: FormidlerProps)
<Etikett>Stilling</Etikett>
<Brødtekst>{`${storForbokstavIAlleOrd(formidler.stilling)}`}</Brødtekst>
<Etikett>Postadresse</Etikett>
<Brødtekst>{`${storForbokstavIAlleOrd(formidler.postadresse)}`}</Brødtekst>
<Brødtekst>{`${storForbokstavIAlleOrd(formidler.adresse.poststed)}`}</Brødtekst>
<Etikett>Telefon</Etikett>
<Brødtekst>{formidler.telefon}</Brødtekst>
<Etikett>Treffest enklest</Etikett>
<Brødtekst>{storForbokstavIAlleOrd(formidler.treffestEnklest)}</Brødtekst>
<Brødtekst>{storForbokstavIAlleOrd(formaterAdresse(formidler.adresse))}</Brødtekst>
<Etikett>E-postadresse</Etikett>
<BrytbarBrødtekst>{formidler.epost}</BrytbarBrødtekst>
</HGrid>
)
}

const InfoOppfølgingsansvarlig = () => {
const oppfølging =
oppfølgingsansvarlig === Oppfølgingsansvarlig.HJELPEMIDDELFORMIDLER
? {
navn: formidler.navn,
arbeidssted: formidler.arbeidssted,
stilling: formidler.stilling,
telefon: formidler.telefon,
ansvarFor: '',
}
: {
navn: annenOppfølgingsansvarlig!.navn,
arbeidssted: annenOppfølgingsansvarlig!.arbeidssted,
stilling: annenOppfølgingsansvarlig!.stilling,
telefon: annenOppfølgingsansvarlig!.telefon,
ansvarFor: annenOppfølgingsansvarlig!.ansvarFor,
}

return (
<Box paddingBlock="4 0">
<Merknad>
<HGrid {...hGridProps}>
<Etikett>Navn</Etikett>
<Brødtekst>{formaterNavn(oppfølgingsansvarlig.navn)}</Brødtekst>
<Brødtekst>{formaterNavn(oppfølging.navn)}</Brødtekst>
<Etikett>Arbeidssted</Etikett>
<Brødtekst>{`${storForbokstavIAlleOrd(oppfølgingsansvarlig.arbeidssted)}`}</Brødtekst>
<Brødtekst>{`${storForbokstavIAlleOrd(oppfølging.arbeidssted)}`}</Brødtekst>
<Etikett>Stilling</Etikett>
<Brødtekst>{`${storForbokstavIAlleOrd(oppfølgingsansvarlig.stilling)}`}</Brødtekst>
<Brødtekst>{`${storForbokstavIAlleOrd(oppfølging.stilling)}`}</Brødtekst>
<Etikett>Telefon</Etikett>
<Brødtekst>{oppfølgingsansvarlig.telefon}</Brødtekst>
<Brødtekst>{oppfølging.telefon}</Brødtekst>
<Etikett>Ansvar</Etikett>
<Brødtekst>{storForbokstavIAlleOrd(oppfølgingsansvarlig.ansvarFor)}</Brødtekst>
<Brødtekst>{storForbokstavIAlleOrd(oppfølging.ansvarFor)}</Brødtekst>
</HGrid>
</Merknad>
</Box>
Expand Down
4 changes: 2 additions & 2 deletions client/src/saksbilde/hjelpemidler/Bytter.tsx
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
import { ExclamationmarkTriangleFillIcon } from '@navikt/aksel-icons'
import { HStack, VStack } from '@navikt/ds-react'
import { Fragment } from 'react'
import { Etikett } from '../../felleskomponenter/typografi'
import { Bytte, BytteÅrsak } from '../../types/types.internal'
import { Bytte, BytteÅrsak } from '../../types/BehovsmeldingTypes'
import { Fremhevet } from './Fremhevet'
import { ExclamationmarkTriangleFillIcon } from '@navikt/aksel-icons'

interface Props {
bytter: Bytte[]
Expand Down
Loading

0 comments on commit 9a0ea49

Please sign in to comment.