Skip to content

Commit

Permalink
IS-2588: WIP
Browse files Browse the repository at this point in the history
  • Loading branch information
vetlesolgaard committed Aug 27, 2024
1 parent 01268e5 commit edfae8b
Show file tree
Hide file tree
Showing 4 changed files with 79 additions and 44 deletions.
2 changes: 1 addition & 1 deletion mock/isfrisktilarbeid/mockIsfrisktilarbeid.ts
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ import {
VedtakResponseDTO,
} from "../../src/data/frisktilarbeid/frisktilarbeidTypes";
import dayjs from "dayjs";
import { addWeeks } from "@/utils/datoUtils";
import { addWeeks } from "../../src/utils/datoUtils";

let vedtak: VedtakResponseDTO[] = [];

Expand Down
33 changes: 33 additions & 0 deletions src/sider/senoppfolging/KandidatSvar.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
import { SenOppfolgingFormResponseDTOV2 } from "@/data/senoppfolging/senOppfolgingTypes";
import { tilLesbarDatoMedArUtenManedNavn } from "@/utils/datoUtils";
import { BodyShort, Box, Heading, Label } from "@navikt/ds-react";
import React from "react";

const texts = {
heading: "Sykmeldtes svar",
};

interface KandidatSvarProps {
svar: SenOppfolgingFormResponseDTOV2;
}

export function KandidatSvar({ svar }: KandidatSvarProps) {
const svardato = svar && tilLesbarDatoMedArUtenManedNavn(svar.createdAt);
return (
<Box
background="surface-default"
padding="6"
className="flex flex-col gap-4 mb-2"
>
<Heading size="medium">{texts.heading}</Heading>
<BodyShort size="small">Den sykmeldte svarte {svardato}.</BodyShort>
{svar &&
svar?.questionResponses.map((response, index) => (
<div key={index}>
<Label size="small">{response.questionText}</Label>
<BodyShort size="small">{response.answerText}</BodyShort>
</div>
))}
</Box>
);
}
48 changes: 5 additions & 43 deletions src/sider/senoppfolging/SenOppfolging.tsx
Original file line number Diff line number Diff line change
@@ -1,22 +1,11 @@
import React, { ReactElement } from "react";
import { BodyShort, Box, Heading, Label, List } from "@navikt/ds-react";
import { BodyShort, Box } from "@navikt/ds-react";
import { useSenOppfolgingSvarQuery } from "@/data/senoppfolging/useSenOppfolgingSvarQuery";
import { tilLesbarDatoMedArUtenManedNavn } from "@/utils/datoUtils";
import { useSenOppfolgingKandidatQuery } from "@/data/senoppfolging/useSenOppfolgingKandidatQuery";
import { VurderSenOppfolging } from "@/sider/senoppfolging/VurderSenOppfolging";
import { KandidatSvar } from "@/sider/senoppfolging/KandidatSvar";
import { Vurdering } from "@/sider/senoppfolging/Vurdering";

const texts = {
heading: "Sykmeldtes svar",
oppfolging: "Vurder videre oppfølging",
vurderFolgende: "Basert på svarene kan du vurdere følgende",
rutine: [
"§ 14a-vedtak: Hvis den sykmeldte har svart at han eller hun trenger oppfølging, skal det gjøres et § 14a-vedtak i Arena",
"Dialogmøte: Vurder om det burde kalles inn til et dialogmøte",
"Kontakt bruker: Ta kontakt med den sykmeldte for å avklare behov for videre oppfølging",
"Kontakt arbeidsgiver: Ta kontakt med arbeidsgiver for å avklare muligheter for tilrettelegging",
"Kontakt behandler: Ta kontakt med behandler for å innhente medisinske opplysninger",
"AAP: Vurder om den sykmeldte bør søke om AAP",
],
ikkeVarslet: {
info1:
"Den sykmeldte har ikke mottatt varsel om at det snart er slutt på sykepengene enda.",
Expand All @@ -29,40 +18,13 @@ const texts = {

export default function SenOppfolging(): ReactElement {
const { data: svar } = useSenOppfolgingSvarQuery();
const svardato = svar && tilLesbarDatoMedArUtenManedNavn(svar.createdAt);
const { data: kandidater } = useSenOppfolgingKandidatQuery();
const kandidat = kandidater[0];

return svar ? (
<>
<Box
background="surface-default"
padding="6"
className="flex flex-col gap-4 mb-2"
>
<Heading size="medium">{texts.heading}</Heading>
<BodyShort size="small">Den sykmeldte svarte {svardato}.</BodyShort>
{svar &&
svar?.questionResponses.map((response, index) => (
<div key={index}>
<Label size="small">{response.questionText}</Label>
<BodyShort size="small">{response.answerText}</BodyShort>
</div>
))}
</Box>
<Box
background="surface-default"
padding="6"
className="flex flex-col gap-4 mb-2"
>
<Heading size="medium">{texts.oppfolging}</Heading>
<List as="ul" title={texts.vurderFolgende} size="small">
{texts.rutine.map((text, index) => (
<List.Item key={index}>{text}</List.Item>
))}
</List>
{kandidat && <VurderSenOppfolging kandidat={kandidat} />}
</Box>
<KandidatSvar svar={svar} />
<Vurdering kandidat={kandidat} />
</>
) : (
<Box
Expand Down
40 changes: 40 additions & 0 deletions src/sider/senoppfolging/Vurdering.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
import { Box, Heading, List, Textarea } from "@navikt/ds-react";
import { VurderSenOppfolging } from "@/sider/senoppfolging/VurderSenOppfolging";
import React from "react";
import { SenOppfolgingKandidatResponseDTO } from "@/data/senoppfolging/senOppfolgingTypes";

const texts = {
oppfolging: "Vurder videre oppfølging",
vurderFolgende: "Basert på svarene kan du vurdere følgende",
rutine: [
"§ 14a-vedtak: Hvis den sykmeldte har svart at han eller hun trenger oppfølging, skal det gjøres et § 14a-vedtak i Arena",
"Dialogmøte: Vurder om det burde kalles inn til et dialogmøte",
"Kontakt bruker: Ta kontakt med den sykmeldte for å avklare behov for videre oppfølging",
"Kontakt arbeidsgiver: Ta kontakt med arbeidsgiver for å avklare muligheter for tilrettelegging",
"Kontakt behandler: Ta kontakt med behandler for å innhente medisinske opplysninger",
"AAP: Vurder om den sykmeldte bør søke om AAP",
],
};

interface Props {
kandidat: SenOppfolgingKandidatResponseDTO;
}

export function Vurdering({ kandidat }: Props) {
return (
<Box
background="surface-default"
padding="6"
className="flex flex-col gap-4 mb-2"
>
<Heading size="medium">{texts.oppfolging}</Heading>
<List as="ul" title={texts.vurderFolgende} size="small">
{texts.rutine.map((text, index) => (
<List.Item key={index}>{text}</List.Item>
))}
</List>
<Textarea label="Begrunnelse (obligatorisk)" />
{kandidat && <VurderSenOppfolging kandidat={kandidat} />}
</Box>
);
}

0 comments on commit edfae8b

Please sign in to comment.