Skip to content

Commit 9ead1ef

Browse files
committed
IS-2274: Frisk til arbeid
1 parent fe55357 commit 9ead1ef

11 files changed

+21
-21
lines changed

src/main/kotlin/no/nav/syfo/cronjob/behandlendeenhet/PersonBehandlendeEnhetQuery.kt

+1
Original file line numberDiff line numberDiff line change
@@ -70,6 +70,7 @@ const val queryGetPersonerWithOppgaveAndOldEnhet =
7070
OR trenger_oppfolging = 't'
7171
OR behandler_bistand_ubehandlet = 't'
7272
OR arbeidsuforhet_vurder_avslag_ubehandlet = 't'
73+
OR (friskmelding_til_arbeidsformidling_fom IS NOT NULL AND friskmelding_til_arbeidsformidling_fom >= CURRENT_DATE)
7374
)
7475
AND (tildelt_enhet_updated_at IS NULL OR tildelt_enhet_updated_at <= NOW() - INTERVAL '24 HOURS')
7576
ORDER BY tildelt_enhet_updated_at ASC

src/main/kotlin/no/nav/syfo/cronjob/preloadcache/PreloadCacheCronjob.kt

+1-2
Original file line numberDiff line numberDiff line change
@@ -35,11 +35,10 @@ class PreloadCacheCronjob(
3535
database.getEnheter()
3636
.forEach { enhetNr ->
3737
try {
38-
val now = LocalDate.now()
3938
val personer = database.hentUbehandledePersonerTilknyttetEnhet(enhetNr).map { pPersonOversiktStatus ->
4039
pPersonOversiktStatus.toPersonOversiktStatus(emptyList())
4140
}.filter { personOversiktStatus ->
42-
personOversiktStatus.hasActiveOppgave(arenaCutoff, now)
41+
personOversiktStatus.hasActiveOppgave(arenaCutoff)
4342
}
4443

4544
log.info("Caching ${personer.size} for enhet $enhetNr")

src/main/kotlin/no/nav/syfo/cronjob/virksomhetsnavn/PersonOppfolgingstilfelleVirksomhetsnavnQuery.kt

+1
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,7 @@ const val queryPersonOppfolgingstilfelleVirksomhetNoVirksomhetsnavnList =
4343
OR trenger_oppfolging = 't'
4444
OR behandler_bistand_ubehandlet = 't'
4545
OR arbeidsuforhet_vurder_avslag_ubehandlet = 't'
46+
OR (friskmelding_til_arbeidsformidling_fom IS NOT NULL AND friskmelding_til_arbeidsformidling_fom >= CURRENT_DATE)
4647
)
4748
ORDER BY PERSON_OPPFOLGINGSTILFELLE_VIRKSOMHET.created_at ASC
4849
LIMIT 1000

src/main/kotlin/no/nav/syfo/personstatus/PersonoversiktStatusService.kt

+1-2
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,6 @@ class PersonoversiktStatusService(
2323
val personListe = database.hentUbehandledePersonerTilknyttetEnhet(
2424
enhet = enhet,
2525
)
26-
val today = LocalDate.now()
2726
return personListe.map { pPersonOversikStatus ->
2827
val personOppfolgingstilfelleVirksomhetList = getPersonOppfolgingstilfelleVirksomhetList(
2928
pPersonOversikStatusId = pPersonOversikStatus.id,
@@ -32,7 +31,7 @@ class PersonoversiktStatusService(
3231
personOppfolgingstilfelleVirksomhetList = personOppfolgingstilfelleVirksomhetList,
3332
)
3433
}.filter { personOversiktStatus ->
35-
personOversiktStatus.hasActiveOppgave(arenaCutoff = arenaCutoff, today = today)
34+
personOversiktStatus.hasActiveOppgave(arenaCutoff = arenaCutoff)
3635
}
3736
}
3837

src/main/kotlin/no/nav/syfo/personstatus/api/v2/PersonOversiktStatusDTO.kt

+1-1
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ data class PersonOversiktStatusDTO(
2525
val trengerOppfolgingFrist: LocalDate?,
2626
val behandlerBerOmBistandUbehandlet: Boolean,
2727
val arbeidsuforhetVurderAvslagUbehandlet: Boolean,
28-
val friskmeldingtilarbeidsformidlingFom: LocalDate?,
28+
val friskmeldingTilArbeidsformidlingFom: LocalDate?,
2929
)
3030

3131
data class PersonOppfolgingstilfelleDTO(

src/main/kotlin/no/nav/syfo/personstatus/db/getFromPersonOversiktStatus.kt

+1-1
Original file line numberDiff line numberDiff line change
@@ -124,7 +124,7 @@ fun ResultSet.toPPersonOversiktStatus(): PPersonOversiktStatus =
124124
behandlerBerOmBistandUbehandlet = getBoolean("behandler_bistand_ubehandlet"),
125125
antallSykedager = getObject("antall_sykedager") as Int?,
126126
arbeidsuforhetVurderAvslagUbehandlet = getBoolean("arbeidsuforhet_vurder_avslag_ubehandlet"),
127-
friskmeldingtilarbeidsformidlingFom = getDate("friskmelding_til_arbeidsformidling_fom")?.toLocalDate(),
127+
friskmeldingTilArbeidsformidlingFom = getDate("friskmelding_til_arbeidsformidling_fom")?.toLocalDate(),
128128
)
129129

130130
fun ResultSet.toVeilederBrukerKnytning(): VeilederBrukerKnytning =

src/main/kotlin/no/nav/syfo/personstatus/domain/PPersonOversiktStatus.kt

+2-2
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ data class PPersonOversiktStatus(
4141
val behandlerBerOmBistandUbehandlet: Boolean,
4242
val antallSykedager: Int?,
4343
val arbeidsuforhetVurderAvslagUbehandlet: Boolean,
44-
val friskmeldingtilarbeidsformidlingFom: LocalDate?,
44+
val friskmeldingTilArbeidsformidlingFom: LocalDate?,
4545
)
4646

4747
fun PPersonOversiktStatus.toPersonOversiktStatus(
@@ -73,7 +73,7 @@ fun PPersonOversiktStatus.toPersonOversiktStatus(
7373
trengerOppfolgingFrist = trengerOppfolgingFrist,
7474
behandlerBerOmBistandUbehandlet = behandlerBerOmBistandUbehandlet,
7575
arbeidsuforhetVurderAvslagUbehandlet = arbeidsuforhetVurderAvslagUbehandlet,
76-
friskmeldingtilarbeidsformidlingFom = friskmeldingtilarbeidsformidlingFom,
76+
friskmeldingTilArbeidsformidlingFom = friskmeldingTilArbeidsformidlingFom,
7777
)
7878

7979
fun PPersonOversiktStatus.toPersonOppfolgingstilfelle(

src/main/kotlin/no/nav/syfo/personstatus/domain/PersonOversiktStatus.kt

+6-6
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ data class PersonOversiktStatus(
3636
val trengerOppfolgingFrist: LocalDate? = null,
3737
val behandlerBerOmBistandUbehandlet: Boolean = false,
3838
val arbeidsuforhetVurderAvslagUbehandlet: Boolean = false,
39-
val friskmeldingtilarbeidsformidlingFom: LocalDate? = null,
39+
val friskmeldingTilArbeidsformidlingFom: LocalDate? = null,
4040
) {
4141
constructor(fnr: String) : this(
4242
null, fnr = fnr, null, null, null,
@@ -66,14 +66,14 @@ fun PersonOversiktStatus.isActiveAktivitetskrav(arenaCutoff: LocalDate) =
6666
(aktivitetskrav == AktivitetskravStatus.NY || aktivitetskrav == AktivitetskravStatus.AVVENT) &&
6767
aktivitetskravStoppunkt?.isAfter(arenaCutoff) ?: false
6868

69-
fun PersonOversiktStatus.hasActiveOppgave(arenaCutoff: LocalDate, today: LocalDate): Boolean {
69+
fun PersonOversiktStatus.hasActiveOppgave(arenaCutoff: LocalDate): Boolean {
7070
return this.oppfolgingsplanLPSBistandUbehandlet == true ||
7171
this.dialogmotesvarUbehandlet ||
7272
this.isDialogmotekandidat() ||
7373
(this.motebehovUbehandlet == true && this.latestOppfolgingstilfelle != null) ||
7474
this.isActiveAktivitetskrav(arenaCutoff = arenaCutoff) ||
7575
this.hasActiveBehandlerdialogOppgave() ||
76-
this.hasFriskmeldingTilArbeidsformidling(today) ||
76+
this.hasFriskmeldingTilArbeidsformidling() ||
7777
this.aktivitetskravVurderStansUbehandlet ||
7878
this.trengerOppfolging || this.behandlerBerOmBistandUbehandlet || this.arbeidsuforhetVurderAvslagUbehandlet
7979
}
@@ -119,7 +119,7 @@ fun PersonOversiktStatus.toPersonOversiktStatusDTO(arenaCutoff: LocalDate) =
119119
trengerOppfolgingFrist = trengerOppfolgingFrist,
120120
behandlerBerOmBistandUbehandlet = behandlerBerOmBistandUbehandlet,
121121
arbeidsuforhetVurderAvslagUbehandlet = arbeidsuforhetVurderAvslagUbehandlet,
122-
friskmeldingtilarbeidsformidlingFom = friskmeldingtilarbeidsformidlingFom,
122+
friskmeldingTilArbeidsformidlingFom = friskmeldingTilArbeidsformidlingFom,
123123
)
124124

125125
fun PersonOversiktStatus.hasActiveBehandlerdialogOppgave(): Boolean {
@@ -128,8 +128,8 @@ fun PersonOversiktStatus.hasActiveBehandlerdialogOppgave(): Boolean {
128128
this.behandlerdialogAvvistUbehandlet
129129
}
130130

131-
private fun PersonOversiktStatus.hasFriskmeldingTilArbeidsformidling(today: LocalDate): Boolean =
132-
this.friskmeldingtilarbeidsformidlingFom != null && today.isBeforeOrEqual(this.friskmeldingtilarbeidsformidlingFom)
131+
private fun PersonOversiktStatus.hasFriskmeldingTilArbeidsformidling(): Boolean =
132+
this.friskmeldingTilArbeidsformidlingFom != null && LocalDate.now().isBeforeOrEqual(this.friskmeldingTilArbeidsformidlingFom)
133133

134134
fun PersonOversiktStatus.applyHendelse(
135135
oversikthendelseType: OversikthendelseType,

src/test/kotlin/no/nav/syfo/personstatus/api/v2/PersonoversiktStatusApiV2Spek.kt

+5-5
Original file line numberDiff line numberDiff line change
@@ -592,7 +592,7 @@ object PersonoversiktStatusApiV2Spek : Spek({
592592
with(database) {
593593
createPersonOversiktStatus(PersonOversiktStatus(personident.value))
594594
setTildeltEnhet(personident, NAV_ENHET)
595-
setFriskmeldingtilarbeidsformidlingFom(personident, LocalDate.now().plusDays(1))
595+
setFriskmeldingTilArbeidsformidlingFom(personident, LocalDate.now().plusDays(1))
596596
}
597597

598598
with(
@@ -606,15 +606,15 @@ object PersonoversiktStatusApiV2Spek : Spek({
606606
objectMapper.readValue<List<PersonOversiktStatusDTO>>(response.content!!).first()
607607
personOversiktStatus.fnr shouldBeEqualTo personident.value
608608
personOversiktStatus.enhet shouldBeEqualTo behandlendeEnhetDTO().enhetId
609-
personOversiktStatus.friskmeldingtilarbeidsformidlingFom!! shouldBeAfter LocalDate.now()
609+
personOversiktStatus.friskmeldingTilArbeidsformidlingFom!! shouldBeAfter LocalDate.now()
610610
}
611611
}
612612
it("return person with friskmelding til arbeidsformidling starting today") {
613613
val personident = PersonIdent(ARBEIDSTAKER_FNR)
614614
with(database) {
615615
createPersonOversiktStatus(PersonOversiktStatus(personident.value))
616616
setTildeltEnhet(personident, NAV_ENHET)
617-
setFriskmeldingtilarbeidsformidlingFom(personident, LocalDate.now())
617+
setFriskmeldingTilArbeidsformidlingFom(personident, LocalDate.now())
618618
}
619619

620620
with(
@@ -628,15 +628,15 @@ object PersonoversiktStatusApiV2Spek : Spek({
628628
objectMapper.readValue<List<PersonOversiktStatusDTO>>(response.content!!).first()
629629
personOversiktStatus.fnr shouldBeEqualTo personident.value
630630
personOversiktStatus.enhet shouldBeEqualTo behandlendeEnhetDTO().enhetId
631-
personOversiktStatus.friskmeldingtilarbeidsformidlingFom!! shouldBeEqualTo LocalDate.now()
631+
personOversiktStatus.friskmeldingTilArbeidsformidlingFom!! shouldBeEqualTo LocalDate.now()
632632
}
633633
}
634634
it("does not return person with friskmelding til arbeidsformidling starting yesterday") {
635635
val personident = PersonIdent(ARBEIDSTAKER_FNR)
636636
with(database) {
637637
createPersonOversiktStatus(PersonOversiktStatus(personident.value))
638638
setTildeltEnhet(personident, NAV_ENHET)
639-
setFriskmeldingtilarbeidsformidlingFom(personident, LocalDate.now().minusDays(1))
639+
setFriskmeldingTilArbeidsformidlingFom(personident, LocalDate.now().minusDays(1))
640640
}
641641
with(
642642
handleRequest(HttpMethod.Get, url) {

src/test/kotlin/no/nav/syfo/testutil/TestDatabase.kt

+1-1
Original file line numberDiff line numberDiff line change
@@ -119,7 +119,7 @@ const val queryFriskmeldingtilarbeidsformidlingFom =
119119
WHERE fnr = ?
120120
"""
121121

122-
fun DatabaseInterface.setFriskmeldingtilarbeidsformidlingFom(
122+
fun DatabaseInterface.setFriskmeldingTilArbeidsformidlingFom(
123123
ident: PersonIdent,
124124
fom: LocalDate,
125125
) {

src/test/kotlin/no/nav/syfo/testutil/generator/PPersonOversiktStatusGenerator.kt

+1-1
Original file line numberDiff line numberDiff line change
@@ -38,5 +38,5 @@ fun generatePPersonOversiktStatus(fnr: String = UserConstants.ARBEIDSTAKER_FNR)
3838
behandlerBerOmBistandUbehandlet = false,
3939
antallSykedager = null,
4040
arbeidsuforhetVurderAvslagUbehandlet = false,
41-
friskmeldingtilarbeidsformidlingFom = null,
41+
friskmeldingTilArbeidsformidlingFom = null,
4242
)

0 commit comments

Comments
 (0)