@@ -302,6 +302,69 @@ public void skal_ikke_flette_inn_gjeldende_14a_vedtak_for_flere_brukere_med_ulik
302
302
assertThat (oppfolgingsbruker2 .getGjeldendeVedtak14a ()).isNull ();
303
303
}
304
304
305
+ @ Test
306
+ public void skal_flette_inn_gjeldende_14a_vedtak_når_personen_har_vedtak_og_vedtak_fattet_dato_er_innenfor_oppfølging_startdato_minus_4_døgn () {
307
+ GjeldendeIdenter ident1 = genererGjeldendeIdent ();
308
+ ZonedDateTime startdatoForOppfolging = ZonedDateTime .parse ("2020-11-13T10:00:00+02:00" );
309
+
310
+ OppfolgingsBruker oppfolgingsbruker = new OppfolgingsBruker ()
311
+ .setFnr (ident1 .getFnr ().get ())
312
+ .setAktoer_id (ident1 .getAktorId ().get ());
313
+
314
+ Siste14aVedtakForBruker siste14AVedtakForBruker = Siste14aVedtakForBruker .builder ()
315
+ .aktorId (ident1 .getAktorId ())
316
+ .innsatsgruppe (Innsatsgruppe .STANDARD_INNSATS )
317
+ .hovedmal (Hovedmal .BEHOLDE_ARBEID )
318
+ .fattetDato (startdatoForOppfolging .minusDays (3 ).minusHours (23 ).minusMinutes (59 ))
319
+ .build ();
320
+
321
+ Map <AktorId , Siste14aVedtakForBruker > aktorIdSiste14aVedtakMap = Map .of (ident1 .getAktorId (), siste14AVedtakForBruker );
322
+
323
+
324
+ Map <AktorId , Optional <ZonedDateTime >> aktorIdStartDatoForOppfolgingMap =
325
+ Map .of (ident1 .getAktorId (), Optional .of (startdatoForOppfolging ));
326
+
327
+ when (siste14aVedtakRepository .hentSiste14aVedtakForBrukere (any ())).thenReturn (aktorIdSiste14aVedtakMap );
328
+ when (oppfolgingRepositoryV2 .hentStartDatoForOppfolging (any ())).thenReturn (aktorIdStartDatoForOppfolgingMap );
329
+
330
+ postgresOpensearchMapper .flettInnGjeldende14aVedtak (List .of (oppfolgingsbruker ));
331
+
332
+ assertThat (oppfolgingsbruker .getGjeldendeVedtak14a ()).isNotNull ();
333
+ assertThat (oppfolgingsbruker .getGjeldendeVedtak14a ().fattetDato ()).isEqualTo (siste14AVedtakForBruker .getFattetDato ());
334
+ assertThat (oppfolgingsbruker .getGjeldendeVedtak14a ().innsatsgruppe ()).isEqualTo (siste14AVedtakForBruker .getInnsatsgruppe ());
335
+ assertThat (oppfolgingsbruker .getGjeldendeVedtak14a ().hovedmal ()).isEqualTo (siste14AVedtakForBruker .getHovedmal ());
336
+ }
337
+
338
+ @ Test
339
+ public void skal_ikke_flette_inn_gjeldende_14a_vedtak_når_personen_har_vedtak_og_vedtak_fattet_dato_er_utenfor_oppfølging_startdato_minus_4_døgn () {
340
+ GjeldendeIdenter ident1 = genererGjeldendeIdent ();
341
+ ZonedDateTime startdatoForOppfolging = ZonedDateTime .parse ("2020-11-13T10:00:00+02:00" );
342
+
343
+ OppfolgingsBruker oppfolgingsbruker = new OppfolgingsBruker ()
344
+ .setFnr (ident1 .getFnr ().get ())
345
+ .setAktoer_id (ident1 .getAktorId ().get ());
346
+
347
+ Siste14aVedtakForBruker siste14AVedtakForBruker = Siste14aVedtakForBruker .builder ()
348
+ .aktorId (ident1 .getAktorId ())
349
+ .innsatsgruppe (Innsatsgruppe .STANDARD_INNSATS )
350
+ .hovedmal (Hovedmal .BEHOLDE_ARBEID )
351
+ .fattetDato (startdatoForOppfolging .minusDays (5 ))
352
+ .build ();
353
+
354
+ Map <AktorId , Siste14aVedtakForBruker > aktorIdSiste14aVedtakMap = Map .of (ident1 .getAktorId (), siste14AVedtakForBruker );
355
+
356
+
357
+ Map <AktorId , Optional <ZonedDateTime >> aktorIdStartDatoForOppfolgingMap =
358
+ Map .of (ident1 .getAktorId (), Optional .of (startdatoForOppfolging ));
359
+
360
+ when (siste14aVedtakRepository .hentSiste14aVedtakForBrukere (any ())).thenReturn (aktorIdSiste14aVedtakMap );
361
+ when (oppfolgingRepositoryV2 .hentStartDatoForOppfolging (any ())).thenReturn (aktorIdStartDatoForOppfolgingMap );
362
+
363
+ postgresOpensearchMapper .flettInnGjeldende14aVedtak (List .of (oppfolgingsbruker ));
364
+
365
+ assertThat (oppfolgingsbruker .getGjeldendeVedtak14a ()).isNull ();
366
+ }
367
+
305
368
private GjeldendeIdenter genererGjeldendeIdent () {
306
369
return GjeldendeIdenter .builder ().fnr (randomFnr ()).aktorId (randomAktorId ()).build ();
307
370
}
0 commit comments