diff --git a/src/components/tabell/kolonner/tiltakshendelse-lenke-kolonne.tsx b/src/components/tabell/kolonner/tiltakshendelse-lenke-kolonne.tsx
new file mode 100755
index 000000000..78be647ff
--- /dev/null
+++ b/src/components/tabell/kolonner/tiltakshendelse-lenke-kolonne.tsx
@@ -0,0 +1,42 @@
+import {BrukerModell} from '../../../model-interfaces';
+import {oppdaterBrukerIKontekstOgNavigerTilLenke} from '../../../utils/utils';
+import {AksjonKnappMedPopoverFeilmelding} from '../../aksjon-knapp-med-popover-feilmelding/aksjon-knapp-med-popover-feilmelding';
+import {getVeilarbpersonflateUrl} from '../../../utils/url-utils';
+
+interface LenkeKolonneProps {
+ bruker: BrukerModell;
+ skalVises: boolean;
+ enhetId: string;
+ className?: string;
+}
+
+export const TiltakshendelseLenkeKolonne = ({bruker, skalVises, enhetId, className}: LenkeKolonneProps) => {
+ if (!skalVises || !bruker.tiltakshendelse) {
+ return null;
+ }
+
+ const tiltakshendelse = bruker.tiltakshendelse;
+
+ const handterKlikk = () =>
+ oppdaterBrukerIKontekstOgNavigerTilLenke(bruker.fnr, getVeilarbpersonflateUrl(tiltakshendelse.lenke, enhetId));
+
+ const handterKlikkNyFane = () =>
+ oppdaterBrukerIKontekstOgNavigerTilLenke(
+ bruker.fnr,
+ getVeilarbpersonflateUrl(tiltakshendelse.lenke, enhetId),
+ true
+ );
+
+ return (
+
+ {tiltakshendelse && (
+
+ )}
+
+ );
+};
diff --git a/src/components/toolbar/listevisning/listevisning-utils.ts b/src/components/toolbar/listevisning/listevisning-utils.ts
index 906de7a84..bd9260e28 100755
--- a/src/components/toolbar/listevisning/listevisning-utils.ts
+++ b/src/components/toolbar/listevisning/listevisning-utils.ts
@@ -54,3 +54,5 @@ alternativerConfig.set(Kolonne.HAR_BARN_UNDER_18, {tekstlabel: 'Barn under 18 å
alternativerConfig.set(Kolonne.UTDANNING_OG_SITUASJON_SIST_ENDRET, {tekstlabel: 'Dato sist endret'});
alternativerConfig.set(Kolonne.HUSKELAPP_KOMMENTAR, {tekstlabel: 'Huskelapp'});
alternativerConfig.set(Kolonne.HUSKELAPP_FRIST, {tekstlabel: 'Frist huskelapp'});
+alternativerConfig.set(Kolonne.TILTAKSHENDELSE_LENKE, {tekstlabel: 'Tiltakshendelse lenke'});
+alternativerConfig.set(Kolonne.TILTAKSHENDELSE_DATO_OPPRETTET, {tekstlabel: 'Tiltakshendelse opprettet'});
diff --git a/src/ducks/features.ts b/src/ducks/features.ts
index 6ef510a77..f88a04514 100755
--- a/src/ducks/features.ts
+++ b/src/ducks/features.ts
@@ -8,7 +8,8 @@ import {
PORTEFOLJE_FEATURES,
SPOR_OM_TILBAKEMELDING,
VEDTAKSTOTTE,
- HUSKELAPP
+ HUSKELAPP,
+ VIS_STATUSFILTER_TILTAKSHENDELSE
} from '../konstanter';
const ADD_FEATURE = 'veilarbportefoljeflatefs/features/ADD_FEATURE';
@@ -24,7 +25,8 @@ const initalState: FeaturesState = {
[ALERTSTRIPE_FEILMELDING]: false,
[VIS_AAP_VURDERINGSFRISTKOLONNER]: false,
[FILTER_FOR_PERSONER_MED_BARN_UNDER_18]: false,
- [HUSKELAPP]: false
+ [HUSKELAPP]: false,
+ [VIS_STATUSFILTER_TILTAKSHENDELSE]: false
};
// Reducer
diff --git a/src/ducks/ui/listevisning-selectors.ts b/src/ducks/ui/listevisning-selectors.ts
index aab69f2c1..295aa8e35 100755
--- a/src/ducks/ui/listevisning-selectors.ts
+++ b/src/ducks/ui/listevisning-selectors.ts
@@ -15,6 +15,7 @@ import {
I_AVTALT_AKTIVITET,
MIN_ARBEIDSLISTE,
MOTER_IDAG,
+ TILTAKSHENDELSER,
TILTAKSPENGER_YTELSE,
UNDER_VURDERING,
UTLOPTE_AKTIVITETER,
@@ -138,6 +139,8 @@ export function getMuligeKolonner(filtervalg: FiltervalgModell, oversiktType: Ov
const filtrertPaHuskelapp = filtervalg.ferdigfilterListe.includes(HUSKELAPP);
+ const filtrertPaTiltakshendelse = filtervalg.ferdigfilterListe.includes(TILTAKSHENDELSER);
+
return ([] as Kolonne[])
.concat(addHvis(Kolonne.FODELAND, filtrertPaLandgruppeEllerFoedeland))
.concat(addHvis(Kolonne.STATSBORGERSKAP, filtrertPaLandgruppeEllerFoedeland))
@@ -153,6 +156,8 @@ export function getMuligeKolonner(filtervalg: FiltervalgModell, oversiktType: Ov
.concat(addHvis(Kolonne.UTLOPTE_AKTIVITETER, filtervalg.ferdigfilterListe.includes(UTLOPTE_AKTIVITETER)))
.concat(addHvis(Kolonne.AVTALT_AKTIVITET, filtervalg.ferdigfilterListe.includes(I_AVTALT_AKTIVITET)))
.concat(addHvis(Kolonne.VENTER_SVAR, filtrertPaVenterSvarFraNavEllerBruker))
+ .concat(addHvis(Kolonne.TILTAKSHENDELSE_LENKE, filtrertPaTiltakshendelse))
+ .concat(addHvis(Kolonne.TILTAKSHENDELSE_DATO_OPPRETTET, filtrertPaTiltakshendelse))
.concat(addHvis(Kolonne.VEDTAKSTATUS, filtrertPaUnderVurdering))
.concat(addHvis(Kolonne.VEDTAKSTATUS_ENDRET, filtrertPaUnderVurdering))
.concat(addHvis(Kolonne.ANSVARLIG_VEILEDER_FOR_VEDTAK, filtrertPaUnderVurdering))
diff --git a/src/ducks/ui/listevisning.ts b/src/ducks/ui/listevisning.ts
index 6ecb6523b..7c992f8bc 100755
--- a/src/ducks/ui/listevisning.ts
+++ b/src/ducks/ui/listevisning.ts
@@ -58,7 +58,9 @@ export enum Kolonne {
HAR_BARN_UNDER_18 = 'har_barn_under_18',
UTDANNING_OG_SITUASJON_SIST_ENDRET = 'utdanning_og_situasjon_sist_endret',
HUSKELAPP_FRIST = 'huskelapp_frist',
- HUSKELAPP_KOMMENTAR = 'huskelapp_kommentar'
+ HUSKELAPP_KOMMENTAR = 'huskelapp_kommentar',
+ TILTAKSHENDELSE_LENKE = 'tiltakshendelse_lenke',
+ TILTAKSHENDELSE_DATO_OPPRETTET = 'tiltakshendelse_dato_opprettet'
}
export enum OversiktType {
diff --git a/src/enhetsportefolje/enhet-kolonner.tsx b/src/enhetsportefolje/enhet-kolonner.tsx
index d9587b839..17bb5693d 100755
--- a/src/enhetsportefolje/enhet-kolonner.tsx
+++ b/src/enhetsportefolje/enhet-kolonner.tsx
@@ -1,4 +1,5 @@
-import * as React from 'react';
+import React from 'react';
+import moment from 'moment';
import BrukerNavn from '../components/tabell/brukernavn';
import BrukerFnr from '../components/tabell/brukerfnr';
import UkeKolonne from '../components/tabell/kolonner/ukekolonne';
@@ -6,6 +7,7 @@ import {
avvik14aVedtakAvhengigeFilter,
I_AVTALT_AKTIVITET,
MOTER_IDAG,
+ TILTAKSHENDELSER,
UNDER_VURDERING,
UTLOPTE_AKTIVITETER,
VENTER_PA_SVAR_FRA_BRUKER,
@@ -42,16 +44,16 @@ import {
toDateString
} from '../utils/dato-utils';
import VarighetKolonne from '../components/tabell/kolonner/varighetkolonne';
-import './enhetsportefolje.css';
-import './brukerliste.css';
import {DagerSidenKolonne} from '../components/tabell/kolonner/dagersidenkolonne';
import {TekstKolonne} from '../components/tabell/kolonner/tekstkolonne';
import SisteEndringKategori from '../components/tabell/sisteendringkategori';
-import moment from 'moment';
import {useGeografiskbostedSelector} from '../hooks/redux/use-geografiskbosted-selector';
import {useTolkbehovSelector} from '../hooks/redux/use-tolkbehovspraak-selector';
import {useFeatureSelector} from '../hooks/redux/use-feature-selector';
import {VIS_AAP_VURDERINGSFRISTKOLONNER} from '../konstanter';
+import {TiltakshendelseLenkeKolonne} from '../components/tabell/kolonner/tiltakshendelse-lenke-kolonne';
+import './enhetsportefolje.css';
+import './brukerliste.css';
interface EnhetKolonnerProps {
className?: string;
@@ -272,6 +274,23 @@ function EnhetKolonner({className, bruker, enhetId, filtervalg, valgteKolonner,
valgteKolonner.includes(Kolonne.VENTER_SVAR)
}
/>
+
+
-
+
+
diff --git a/src/filtrering/filter-konstanter.ts b/src/filtrering/filter-konstanter.ts
index 60bf6dc0d..fccf046fc 100755
--- a/src/filtrering/filter-konstanter.ts
+++ b/src/filtrering/filter-konstanter.ts
@@ -123,7 +123,7 @@ export const ferdigfilterListeLabelTekst = {
VENTER_PA_SVAR_FRA_NAV: 'Venter på svar fra NAV',
VENTER_PA_SVAR_FRA_BRUKER: 'Venter på svar fra bruker',
MOTER_IDAG: 'Møte med NAV i dag',
- TILTAKSHENDELSER: 'Tiltaksdeltakelse',
+ TILTAKSHENDELSER: 'Hendelser på tiltak',
UTLOPTE_AKTIVITETER: 'Utløpte aktiviteter',
IKKE_I_AVTALT_AKTIVITET: 'Ikke i avtalt aktivitet',
I_AVTALT_AKTIVITET: 'I avtalt aktivitet',
diff --git a/src/minoversikt/minoversikt-kolonner.tsx b/src/minoversikt/minoversikt-kolonner.tsx
index 91d053c99..2378e489e 100755
--- a/src/minoversikt/minoversikt-kolonner.tsx
+++ b/src/minoversikt/minoversikt-kolonner.tsx
@@ -1,4 +1,5 @@
-import * as React from 'react';
+import React from 'react';
+import moment from 'moment';
import {
aapRettighetsperiode,
aapVurderingsfrist,
@@ -22,6 +23,7 @@ import {
I_AVTALT_AKTIVITET,
MIN_ARBEIDSLISTE,
MOTER_IDAG,
+ TILTAKSHENDELSER,
UNDER_VURDERING,
UTLOPTE_AKTIVITETER,
VENTER_PA_SVAR_FRA_BRUKER,
@@ -42,16 +44,16 @@ import {
toDateString
} from '../utils/dato-utils';
import VarighetKolonne from '../components/tabell/kolonner/varighetkolonne';
-import './minoversikt.css';
import {DagerSidenKolonne} from '../components/tabell/kolonner/dagersidenkolonne';
import {TekstKolonne} from '../components/tabell/kolonner/tekstkolonne';
import SisteEndringKategori from '../components/tabell/sisteendringkategori';
-import moment from 'moment';
import {useGeografiskbostedSelector} from '../hooks/redux/use-geografiskbosted-selector';
import {useTolkbehovSelector} from '../hooks/redux/use-tolkbehovspraak-selector';
import {useFeatureSelector} from '../hooks/redux/use-feature-selector';
import {VIS_AAP_VURDERINGSFRISTKOLONNER} from '../konstanter';
import {truncateTekst} from '../utils/tekst-utils';
+import {TiltakshendelseLenkeKolonne} from '../components/tabell/kolonner/tiltakshendelse-lenke-kolonne';
+import './minoversikt.css';
interface MinOversiktKolonnerProps {
className?: string;
@@ -290,6 +292,23 @@ function MinoversiktDatokolonner({className, bruker, enhetId, filtervalg, valgte
tekst={moteErAvtaltMedNAV ? 'Avtalt med NAV' : '-'}
skalVises={!!ferdigfilterListe?.includes(MOTER_IDAG) && valgteKolonner.includes(Kolonne.MOTE_ER_AVTALT)}
/>
+
+
+
+
);
diff --git a/src/mocks/data/features.ts b/src/mocks/data/features.ts
index 9a46a87ed..c4d1fa035 100644
--- a/src/mocks/data/features.ts
+++ b/src/mocks/data/features.ts
@@ -19,7 +19,7 @@ const toggles = {
[VIS_AAP_VURDERINGSFRISTKOLONNER]: true,
[FILTER_FOR_PERSONER_MED_BARN_UNDER_18]: true,
[HUSKELAPP]: true,
- [VIS_STATUSFILTER_TILTAKSHENDELSE]: false
+ [VIS_STATUSFILTER_TILTAKSHENDELSE]: true
};
export default toggles;
diff --git a/src/mocks/data/portefolje.ts b/src/mocks/data/portefolje.ts
index 2a6b14ce5..e1619d38a 100644
--- a/src/mocks/data/portefolje.ts
+++ b/src/mocks/data/portefolje.ts
@@ -5,7 +5,8 @@ import {
BarnUnder18Aar,
EnsligeForsorgereOvergangsstonad,
FargekategoriModell,
- KategoriModell
+ KategoriModell,
+ TiltakshendelseModell
} from '../../model-interfaces';
import moment from 'moment';
import {rnd} from '../utils';
@@ -200,6 +201,14 @@ const lagHuskelapp = fnr => {
};
};
+const lagTiltakshendelse = (): TiltakshendelseModell => ({
+ id: '54f06061-4383-417d-a063-1c4fc4701a78',
+ opprettet: new Date(),
+ tekst: 'Utkast til påmelding',
+ lenke: 'https://www.nav.no',
+ tiltakstype: 'ARBFORB'
+});
+
function lagBruker(sikkerhetstiltak = []) {
const grunndata = lagGrunndata();
@@ -231,6 +240,7 @@ function lagBruker(sikkerhetstiltak = []) {
sikkerhetstiltak,
venterPaSvarFraBruker: grunndata.venterPaSvarFraBruker,
venterPaSvarFraNAV: grunndata.venterPaSvarFraNAV,
+ tiltakshendelse: lagTiltakshendelse(),
nyesteUtlopteAktivitet: grunndata.nesteUtlopteAktivitet,
egenAnsatt: random_egenAnsatt ? true : '',
skjermetTil: random_harSkjermetTil ? randomDateInNearFuture() : '',
diff --git a/src/model-interfaces.ts b/src/model-interfaces.ts
index 86ccecf22..4df402e1f 100755
--- a/src/model-interfaces.ts
+++ b/src/model-interfaces.ts
@@ -59,7 +59,9 @@ export enum Sorteringsfelt {
UTDANNING_OG_SITUASJON_SIST_ENDRET = 'utdanningOgSituasjonSistEndret',
HUSKELAPP_KOMMENTAR = 'huskelapp_kommentar',
HUSKELAPP_FRIST = 'huskelapp_frist',
- HUSKELAPP = 'huskelapp'
+ HUSKELAPP = 'huskelapp',
+ TILTAKSHENDELSE_LENKE = 'tiltakshendelse_lenke',
+ TILTAKSHENDELSE_DATO_OPPRETTET = 'tiltakshendelse_dato_opprettet'
}
export interface FiltervalgModell {
@@ -167,7 +169,7 @@ export interface BrukerModell {
nyesteUtlopteAktivitet?: string; // dato
veilederNavn?: string;
brukertiltak?: string[];
- tiltakshendelser?: TiltakshendelseModell[];
+ tiltakshendelse: TiltakshendelseModell | null;
aktiviteter?: AktiviteterModell; // kun avtalte aktiviteter
alleAktiviteter?: AktiviteterModell;
aktivitetStart?: string; // dato
@@ -292,12 +294,11 @@ export interface HuskelappModell {
}
export interface TiltakshendelseModell {
- hendelseId: string;
- hendelseOpprettet: Date;
- hendelseTekst: string;
- hendelseLenke: string;
- tiltakstypeKode: string | null;
- sistEndret: Date;
+ id: string;
+ opprettet: Date;
+ tekst: string;
+ lenke: string;
+ tiltakstype: string | null;
}
export enum Status {