Skip to content

Commit

Permalink
IS-2596: Remove usage of vurder stans oppgave and replace with isExpired
Browse files Browse the repository at this point in the history
  • Loading branch information
andersrognstad committed Aug 23, 2024
1 parent cb47e7a commit 84e4937
Show file tree
Hide file tree
Showing 15 changed files with 77 additions and 85 deletions.
1 change: 1 addition & 0 deletions mock/isaktivitetskrav/aktivitetskravMock.ts
Original file line number Diff line number Diff line change
Expand Up @@ -195,6 +195,7 @@ const aktivitetskravForhandsvarsel: AktivitetskravDTO = {
uuid: varselUuid,
createdAt: daysFromToday(-2),
svarfrist: daysFromToday(19),
isExpired: false,
document: getForhandsvarselDocument(begrunnelse, daysFromToday(1)),
},
},
Expand Down
1 change: 1 addition & 0 deletions mock/isaktivitetskrav/mockIsaktivitetskrav.ts
Original file line number Diff line number Diff line change
Expand Up @@ -85,6 +85,7 @@ export const mockIsaktivitetskrav = (server: any) => {
uuid: "123",
createdAt: new Date(),
svarfrist: daysFromToday(21),
isExpired: false,
document: body.document,
};
const newForhandsvarselVurdering: AktivitetskravVurderingDTO = {
Expand Down
9 changes: 0 additions & 9 deletions mock/ispersonoppgave/personoppgaveMock.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@ import {
import dayjs from "dayjs";
import { PersonOppgaveType } from "../../src/data/personoppgave/types/PersonOppgave";
import { meldingUuids } from "../isbehandlerdialog/behandlerdialogMock";
import { varselUuid } from "../isaktivitetskrav/aktivitetskravMock";

const personOppgaveUbehandletOppfolgingsplanLPS = {
uuid: "5f1e2629-062b-442d-ae1f-3b08e9574cd0",
Expand All @@ -33,13 +32,6 @@ export const personOppgaveUbehandletBehandlerBerOmBistand2 = {
referanseUuid: "222248ba-4c3c-4b3f-b7a3-385b7e7c927d",
};

export const personOppgaveUbehandletVurderStans = {
...personOppgaveUbehandletOppfolgingsplanLPS,
uuid: "5f1e2625-061b-443d-ae1f-3b08e9574cd1",
referanseUuid: varselUuid,
type: "AKTIVITETSKRAV_VURDER_STANS",
};

const personOppgaveUbehandletDialogmotesvar = {
...personOppgaveUbehandletOppfolgingsplanLPS,
uuid: "5f1e2629-062b-442d-ae1f-3b08e9574cd1",
Expand Down Expand Up @@ -142,7 +134,6 @@ export const personoppgaverMock = () => {
personOppgaveBehandletBehandlerdialogUbesvartMelding,
personOppgaveUbehandletBehandlerdialogAvvistMelding,
personOppgaveBehandletBehandlerdialogAvvistMelding,
personOppgaveUbehandletVurderStans,
personOppgaveUbehandletBehandlerBerOmBistand,
personOppgaveUbehandletBehandlerBerOmBistand2,
];
Expand Down
1 change: 1 addition & 0 deletions src/data/aktivitetskrav/aktivitetskravTypes.ts
Original file line number Diff line number Diff line change
Expand Up @@ -79,6 +79,7 @@ export interface AktivitetskravVarselDTO {
uuid: string;
createdAt: Date;
svarfrist: Date;
isExpired: boolean;
document: DocumentComponentDto[];
}

Expand Down
1 change: 0 additions & 1 deletion src/data/personoppgave/types/PersonOppgave.ts
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,5 @@ export enum PersonOppgaveType {
BEHANDLERDIALOG_SVAR = "BEHANDLERDIALOG_SVAR",
BEHANDLERDIALOG_MELDING_UBESVART = "BEHANDLERDIALOG_MELDING_UBESVART",
BEHANDLERDIALOG_MELDING_AVVIST = "BEHANDLERDIALOG_MELDING_AVVIST",
AKTIVITETSKRAV_VURDER_STANS = "AKTIVITETSKRAV_VURDER_STANS",
BEHANDLER_BER_OM_BISTAND = "BEHANDLER_BER_OM_BISTAND",
}
Original file line number Diff line number Diff line change
Expand Up @@ -10,9 +10,6 @@ import React, { ReactElement } from "react";
import { avventVurderingArsakTexts } from "@/data/aktivitetskrav/aktivitetskravTexts";
import { AktivitetskravAlertstripe } from "@/sider/aktivitetskrav/AktivitetskravAlertstripe";
import { BodyLong, BodyShort, Label } from "@navikt/ds-react";
import { usePersonoppgaverQuery } from "@/data/personoppgave/personoppgaveQueryHooks";
import { hasUbehandletPersonoppgave } from "@/utils/personOppgaveUtils";
import { PersonOppgaveType } from "@/data/personoppgave/types/PersonOppgave";

const texts = {
forhandsvarselInfoBody:
Expand All @@ -29,17 +26,12 @@ interface AktivitetskravVurderingAlertProps {
export const AktivitetskravVurderingAlert = ({
vurdering,
}: AktivitetskravVurderingAlertProps): ReactElement | null => {
const { data: oppgaver } = usePersonoppgaverQuery();
const hasUbehandletVurderStansOppgave = hasUbehandletPersonoppgave(
oppgaver,
PersonOppgaveType.AKTIVITETSKRAV_VURDER_STANS
);
const { status, beskrivelse, arsaker, frist, createdAt } = vurdering;
const { status, beskrivelse, arsaker, frist, createdAt, varsel } = vurdering;
const vurderingDato = tilLesbarDatoMedArUtenManedNavn(createdAt);

switch (status) {
case AktivitetskravStatus.FORHANDSVARSEL: {
return hasUbehandletVurderStansOppgave ? (
return varsel?.isExpired ? (
<AktivitetskravAlertstripe variant="warning">
<Label size="small">{texts.forhandsvarselWarningLabel}</Label>
<BodyShort size="small">{`Det ble sendt ut et forhåndsvarsel ${vurderingDato}.`}</BodyShort>
Expand Down
10 changes: 2 additions & 8 deletions src/sider/aktivitetskrav/vurdering/VurderAktivitetskravTabs.tsx
Original file line number Diff line number Diff line change
@@ -1,7 +1,4 @@
import React from "react";
import { usePersonoppgaverQuery } from "@/data/personoppgave/personoppgaveQueryHooks";
import { hasUbehandletPersonoppgave } from "@/utils/personOppgaveUtils";
import { PersonOppgaveType } from "@/data/personoppgave/types/PersonOppgave";
import {
AktivitetskravDTO,
AktivitetskravStatus,
Expand Down Expand Up @@ -53,11 +50,8 @@ interface VurderAktivitetskravTabsProps {
export const VurderAktivitetskravTabs = ({
aktivitetskrav,
}: VurderAktivitetskravTabsProps) => {
const { data: oppgaver } = usePersonoppgaverQuery();
const isIkkeOppfyltTabVisible = hasUbehandletPersonoppgave(
oppgaver,
PersonOppgaveType.AKTIVITETSKRAV_VURDER_STANS
);
const isIkkeOppfyltTabVisible =
aktivitetskrav.vurderinger[0]?.varsel?.isExpired;
const isForhandsvarselTabVisible = isValidStateForForhandsvarsel(
aktivitetskrav.status
);
Expand Down
13 changes: 5 additions & 8 deletions src/utils/globalNavigasjonUtils.ts
Original file line number Diff line number Diff line change
Expand Up @@ -55,18 +55,15 @@ const numberOfActiveLPSOppfolgingsplaner = (
};

const getNumberOfAktivitetskravOppgaver = (
aktivitetskrav: AktivitetskravDTO[],
personOppgaver: PersonOppgave[]
aktivitetskrav: AktivitetskravDTO[]
) => {
const newAktivitetskrav = aktivitetskrav.find((krav) => {
return krav.status === AktivitetskravStatus.NY;
});
const hasUbehandletOppgaveVurderStans = hasUbehandletPersonoppgave(
personOppgaver,
PersonOppgaveType.AKTIVITETSKRAV_VURDER_STANS
);
const isExpiredForhandsvarsel =
aktivitetskrav[0]?.vurderinger[0]?.varsel?.isExpired;

return newAktivitetskrav || hasUbehandletOppgaveVurderStans ? 1 : 0;
return newAktivitetskrav || isExpiredForhandsvarsel ? 1 : 0;
};

const getNumberOfBehandlerDialogOppgaver = (
Expand Down Expand Up @@ -147,7 +144,7 @@ export const numberOfTasks = (
)
);
case Menypunkter.AKTIVITETSKRAV:
return getNumberOfAktivitetskravOppgaver(aktivitetskrav, personOppgaver);
return getNumberOfAktivitetskravOppgaver(aktivitetskrav);
case Menypunkter.BEHANDLERDIALOG:
return getNumberOfBehandlerDialogOppgaver(personOppgaver);
case Menypunkter.SYKMELDINGER:
Expand Down
1 change: 1 addition & 0 deletions test/aktivitetskrav/AktivitetskravHistorikkTest.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -71,6 +71,7 @@ const varsel: AktivitetskravVarselDTO = {
uuid: "123",
createdAt: today,
svarfrist: daysFromToday(21),
isExpired: false,
document: [
{
type: DocumentComponentType.HEADER_H1,
Expand Down
16 changes: 4 additions & 12 deletions test/aktivitetskrav/AktivitetskravVurderingAlertTest.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ import {
avventVurdering,
avventVurderingUtenFrist,
createAktivitetskravVurdering,
expiredForhandsvarselVurdering,
forhandsvarselVurdering,
} from "../testDataUtils";
import {
Expand All @@ -21,14 +22,9 @@ import { navEnhet } from "../dialogmote/testData";
import React from "react";
import { AktivitetskravVurderingAlert } from "@/sider/aktivitetskrav/vurdering/AktivitetskravVurderingAlert";
import { queryClientWithMockData } from "../testQueryClient";
import { personoppgaverQueryKeys } from "@/data/personoppgave/personoppgaveQueryHooks";
import { ARBEIDSTAKER_DEFAULT } from "../../mock/common/mockConstants";
import { personOppgaveUbehandletVurderStans } from "../../mock/ispersonoppgave/personoppgaveMock";

let queryClient: QueryClient;

const fnr = ARBEIDSTAKER_DEFAULT.personIdent;

const renderAktivitetskravVurderingAlert = (
vurdering: AktivitetskravVurderingDTO
) => {
Expand Down Expand Up @@ -81,7 +77,7 @@ describe("AktivitetskravVurderingAlert", () => {
expect(screen.getByText("Har bedt om mer informasjon fra behandler")).to
.exist;
});
it("viser info når siste aktivitetskrav-vurdering er FORHANDSVARSEL uten vurder stans-oppgave", () => {
it("viser info når siste aktivitetskrav-vurdering er ikke-utløpt FORHANDSVARSEL", () => {
renderAktivitetskravVurderingAlert(forhandsvarselVurdering);

expect(screen.getByRole("img", { name: "Informasjon" })).to.exist;
Expand All @@ -93,12 +89,8 @@ describe("AktivitetskravVurderingAlert", () => {
)
);
});
it("viser warning når siste aktivitetskrav-vurdering er FORHANDSVARSEL og det ubehandlet vurder stans-oppgave", () => {
queryClient.setQueryData(
personoppgaverQueryKeys.personoppgaver(fnr),
() => [personOppgaveUbehandletVurderStans]
);
renderAktivitetskravVurderingAlert(forhandsvarselVurdering);
it("viser warning når siste aktivitetskrav-vurdering er utløpt FORHANDSVARSEL", () => {
renderAktivitetskravVurderingAlert(expiredForhandsvarselVurdering);

expect(screen.getByRole("img", { name: "Advarsel" })).to.exist;
expect(screen.getByText("Aktivitetskravet må vurderes"));
Expand Down
12 changes: 2 additions & 10 deletions test/aktivitetskrav/vurdering/AktivitetskravForhandsvarselTest.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -26,9 +26,6 @@ import {
} from "@/data/aktivitetskrav/aktivitetskravTypes";
import { expect, describe, it, beforeEach, afterEach } from "vitest";
import { getSendForhandsvarselDocument } from "../varselDocuments";
import { personoppgaverQueryKeys } from "@/data/personoppgave/personoppgaveQueryHooks";
import { personOppgaveUbehandletVurderStans } from "../../../mock/ispersonoppgave/personoppgaveMock";
import { ARBEIDSTAKER_DEFAULT } from "../../../mock/common/mockConstants";
import { apiMock } from "../../stubs/stubApi";
import { stubVurderAktivitetskravForhandsvarselApi } from "../../stubs/stubIsaktivitetskrav";
import nock from "nock";
Expand All @@ -37,6 +34,7 @@ import { Brevmal } from "@/data/aktivitetskrav/forhandsvarselTexts";
import {
aktivitetskrav,
enLangBeskrivelse,
expiredForhandsvarselAktivitetskrav,
forhandsvarselAktivitetskrav,
tabTexts,
} from "./vurderingTestUtils";
Expand Down Expand Up @@ -229,13 +227,7 @@ describe("VurderAktivitetskrav forhåndsvarsel", () => {
});

it("IKKE_OPPFYLT is present when status is forhandsvarsel and it is expired", async () => {
queryClient.setQueryData(
personoppgaverQueryKeys.personoppgaver(
ARBEIDSTAKER_DEFAULT.personIdent
),
() => [personOppgaveUbehandletVurderStans]
);
renderVurderAktivitetskrav(forhandsvarselAktivitetskrav);
renderVurderAktivitetskrav(expiredForhandsvarselAktivitetskrav);

await clickTab(tabTexts["IKKE_OPPFYLT"]);

Expand Down
15 changes: 5 additions & 10 deletions test/aktivitetskrav/vurdering/VurderAktivitetskravTest.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -41,8 +41,6 @@ import {
getOppfyltDocument,
getUnntakDocument,
} from "../varselDocuments";
import { personoppgaverQueryKeys } from "@/data/personoppgave/personoppgaveQueryHooks";
import { personOppgaveUbehandletVurderStans } from "../../../mock/ispersonoppgave/personoppgaveMock";
import { ARBEIDSTAKER_DEFAULT } from "../../../mock/common/mockConstants";
import { apiMock } from "../../stubs/stubApi";
import { stubVurderAktivitetskravApi } from "../../stubs/stubIsaktivitetskrav";
Expand All @@ -54,6 +52,7 @@ import {
buttonTexts,
enKortBeskrivelse,
enLangBeskrivelse,
expiredForhandsvarselAktivitetskrav,
forhandsvarselAktivitetskrav,
oppfolgingstilfelle,
tabTexts,
Expand Down Expand Up @@ -105,17 +104,13 @@ describe("VurderAktivitetskrav", () => {
expect(screen.queryByRole("tab", { name: "Ikke oppfylt" })).to.not.exist;
});

it("renders ikke-oppfylt when ubehandlet vurder-stans oppgave", () => {
queryClient.setQueryData(
personoppgaverQueryKeys.personoppgaver(ARBEIDSTAKER_DEFAULT.personIdent),
() => [personOppgaveUbehandletVurderStans]
);

renderVurderAktivitetskrav(aktivitetskrav);
it("renders ikke-oppfylt when expired forhåndsvarsel", () => {
renderVurderAktivitetskrav(expiredForhandsvarselAktivitetskrav);

expect(screen.queryByRole("tab", { name: "Sett unntak" })).to.exist;
expect(screen.queryByRole("tab", { name: "Er i aktivitet" })).to.exist;
expect(screen.queryByRole("tab", { name: "Send forhåndsvarsel" })).to.exist;
expect(screen.queryByRole("tab", { name: "Send forhåndsvarsel" })).to.not
.exist;
expect(screen.queryByRole("tab", { name: "Ikke oppfylt" })).to.exist;
});

Expand Down
7 changes: 7 additions & 0 deletions test/aktivitetskrav/vurdering/vurderingTestUtils.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
import {
createAktivitetskrav,
expiredForhandsvarselVurdering,
forhandsvarselVurdering,
generateOppfolgingstilfelle,
} from "../../testDataUtils";
Expand All @@ -15,6 +16,12 @@ export const forhandsvarselAktivitetskrav = createAktivitetskrav(
AktivitetskravStatus.FORHANDSVARSEL,
[forhandsvarselVurdering]
);
export const expiredForhandsvarselAktivitetskrav = createAktivitetskrav(
daysFromToday(5),
AktivitetskravStatus.FORHANDSVARSEL,
[expiredForhandsvarselVurdering]
);

export const tilfelleStart = daysFromToday(-50);
export const tilfelleEnd = daysFromToday(50);
export const oppfolgingstilfelle = generateOppfolgingstilfelle(
Expand Down
34 changes: 30 additions & 4 deletions test/components/GlobalNavigasjonTest.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,12 @@ import {
ferdigbehandletKandidatMock,
senOppfolgingKandidatMock,
} from "../../mock/ismeroppfolging/mockIsmeroppfolging";
import { aktivitetskravQueryKeys } from "@/data/aktivitetskrav/aktivitetskravQueryHooks";
import {
aktivitetskrav,
expiredForhandsvarselAktivitetskrav,
forhandsvarselAktivitetskrav,
} from "../aktivitetskrav/vurdering/vurderingTestUtils";

const fnr = ARBEIDSTAKER_DEFAULT.personIdent;
let queryClient: QueryClient;
Expand Down Expand Up @@ -163,16 +169,36 @@ describe("GlobalNavigasjon", () => {
.exist;
});

it("viser rød prikk for menypunkt Aktivitetskrav når ubehandlet oppgave vurder stans", () => {
queryClient.setQueryData(personoppgaverQueryKeys.personoppgaver(fnr), () =>
personoppgaverMock()
);
it("viser rød prikk for menypunkt Aktivitetskrav når nytt aktivitetskrav", () => {
queryClient.setQueryData(aktivitetskravQueryKeys.aktivitetskrav(fnr), [
aktivitetskrav,
]);

renderGlobalNavigasjon();

expect(screen.getByRole("link", { name: "Aktivitetskrav 1" })).to.exist;
});

it("viser rød prikk for menypunkt Aktivitetskrav når utløpt forhåndsvarsel", () => {
queryClient.setQueryData(aktivitetskravQueryKeys.aktivitetskrav(fnr), [
expiredForhandsvarselAktivitetskrav,
]);

renderGlobalNavigasjon();

expect(screen.getByRole("link", { name: "Aktivitetskrav 1" })).to.exist;
});

it("viser ikke rød prikk for menypunkt Aktivitetskrav når ikke-utløpt forhåndsvarsel", () => {
queryClient.setQueryData(aktivitetskravQueryKeys.aktivitetskrav(fnr), [
forhandsvarselAktivitetskrav,
]);

renderGlobalNavigasjon();

expect(screen.getByRole("link", { name: "Aktivitetskrav" })).to.exist;
});

it("viser rød prikk for menypunkt Arbeidsuforhet når siste vurdering er utløpt forhåndsvarsel", () => {
const expiredForhandsvarsel = createForhandsvarsel({
createdAt: new Date(),
Expand Down
29 changes: 16 additions & 13 deletions test/testDataUtils.ts
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,6 @@ import {
AktivitetskravVurderingDTO,
AvventVurderingArsak,
OppfyltVurderingArsak,
UnntakVurderingArsak,
VurderingArsak,
} from "@/data/aktivitetskrav/aktivitetskravTypes";
import { generateUUID } from "@/utils/uuidUtils";
Expand Down Expand Up @@ -93,18 +92,6 @@ export const oppfyltVurdering = createAktivitetskravVurdering(
AktivitetskravStatus.OPPFYLT,
[OppfyltVurderingArsak.FRISKMELDT]
);
export const unntakVurdering = createAktivitetskravVurdering(
AktivitetskravStatus.UNNTAK,
[UnntakVurderingArsak.SJOMENN_UTENRIKS]
);
export const ikkeOppfyltVurdering = createAktivitetskravVurdering(
AktivitetskravStatus.IKKE_OPPFYLT,
[]
);
export const ikkeAktuellVurdering = createAktivitetskravVurdering(
AktivitetskravStatus.IKKE_AKTUELL,
[]
);
export const forhandsvarselVurdering = createAktivitetskravVurdering(
AktivitetskravStatus.FORHANDSVARSEL,
[],
Expand All @@ -115,6 +102,22 @@ export const forhandsvarselVurdering = createAktivitetskravVurdering(
uuid: generateUUID(),
createdAt: new Date(),
svarfrist: daysFromToday(21),
isExpired: false,
document: [],
}
);

export const expiredForhandsvarselVurdering = createAktivitetskravVurdering(
AktivitetskravStatus.FORHANDSVARSEL,
[],
"Begrunnelse for forhåndsvarsel",
new Date(),
undefined,
{
uuid: generateUUID(),
createdAt: new Date(),
svarfrist: daysFromToday(-1),
isExpired: true,
document: [],
}
);

0 comments on commit 84e4937

Please sign in to comment.