Skip to content
This repository has been archived by the owner on Nov 5, 2024. It is now read-only.

Commit

Permalink
Merge pull request #710 from navikt/dev/standard-innsats
Browse files Browse the repository at this point in the history
Dev/standard innsats
  • Loading branch information
jstnhlj authored Oct 19, 2023
2 parents dd27ad8 + 37513ad commit 2fd2a0f
Show file tree
Hide file tree
Showing 4 changed files with 13 additions and 8 deletions.
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
package no.nav.fo.veilarbregistrering.profilering

import no.nav.fo.veilarbregistrering.arbeidssoker.formidlingsgruppe.Formidlingsgruppe
import no.nav.fo.veilarbregistrering.bruker.Bruker
import no.nav.fo.veilarbregistrering.config.isDevelopment
import no.nav.fo.veilarbregistrering.oppfolging.OppfolgingGateway
import no.nav.fo.veilarbregistrering.oppfolging.Servicegruppe
import no.nav.fo.veilarbregistrering.registrering.ordinaer.BrukerRegistreringRepository
Expand All @@ -13,16 +15,17 @@ class ProfilertInnsatsgruppeService(
) {

fun erStandardInnsats(bruker: Bruker): Boolean {
val (innsatsgruppe, servicegruppe) = hentProfilering(bruker)
val (innsatsgruppe, servicegruppe, formidlingsgruppe) = hentProfilering(bruker)
val brukInnsatsgruppe = servicegruppe?.value() == "IVURD" || (servicegruppe == null && isDevelopment());

return if (servicegruppe?.value() == "IVURD") {
return if (brukInnsatsgruppe) {
innsatsgruppe == Innsatsgruppe.STANDARD_INNSATS
} else {
servicegruppe?.value() == "IKVAL"
servicegruppe?.value() == "IKVAL" && formidlingsgruppe?.erArbeidssoker() ?: false;
}
}

fun hentProfilering(bruker: Bruker): Pair<Innsatsgruppe?, Servicegruppe?> {
fun hentProfilering(bruker: Bruker): Triple<Innsatsgruppe?, Servicegruppe?, Formidlingsgruppe?> {
val arenaStatus = oppfolgingGateway.arenaStatus(bruker.gjeldendeFoedselsnummer)
val brukerregistrering = brukerRegistreringRepository
.finnOrdinaerBrukerregistreringForAktorIdOgTilstand(bruker.aktorId, listOf(
Expand All @@ -34,6 +37,6 @@ class ProfilertInnsatsgruppeService(

val profilering = brukerregistrering?.let { profileringRepository.hentProfileringForId(brukerregistrering.id) }

return Pair(profilering?.innsatsgruppe, arenaStatus?.servicegruppe)
return Triple(profilering?.innsatsgruppe, arenaStatus?.servicegruppe, arenaStatus?.formidlingsgruppe)
}
}
Original file line number Diff line number Diff line change
@@ -1,10 +1,11 @@
package no.nav.fo.veilarbregistrering.profilering.resources

import no.nav.fo.veilarbregistrering.arbeidssoker.formidlingsgruppe.Formidlingsgruppe
import no.nav.fo.veilarbregistrering.oppfolging.Servicegruppe
import no.nav.fo.veilarbregistrering.profilering.Innsatsgruppe

data class ProfileringDto(val innsatsgruppe: String?, val servicegruppe: String?) {
companion object {
fun fra(pair: Pair<Innsatsgruppe?, Servicegruppe?>) = ProfileringDto(pair.first?.value(), pair.second?.kode)
fun fra(triple: Triple<Innsatsgruppe?, Servicegruppe?, Formidlingsgruppe?>) = ProfileringDto(triple.first?.value(), triple.second?.kode)
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ internal class ProfilertInnsatsgruppeServiceTest {
val hentProfilering =
profilertInnsatsgruppeService.hentProfilering(Bruker(Foedselsnummer("123"), AktorId("456")))

assertEquals(hentProfilering, Pair(Innsatsgruppe.STANDARD_INNSATS, Servicegruppe("IVURD")))
assertEquals(hentProfilering, Triple(Innsatsgruppe.STANDARD_INNSATS, Servicegruppe("IVURD"), Formidlingsgruppe("ARBS")))
}

@Test
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@ import org.springframework.test.context.ContextConfiguration
import org.springframework.test.web.servlet.MockMvc
import org.springframework.test.web.servlet.get
import kotlin.test.assertEquals
import no.nav.fo.veilarbregistrering.arbeidssoker.formidlingsgruppe.Formidlingsgruppe

@AutoConfigureMockMvc
@WebMvcTest
Expand Down Expand Up @@ -55,7 +56,7 @@ class ProfileringResourceConfig {
fun profilertInnsatsgruppeService(): ProfilertInnsatsgruppeService {
val profilertInnsatsgruppeService = mockk<ProfilertInnsatsgruppeService>()

every { profilertInnsatsgruppeService.hentProfilering(any()) } returns Pair(Innsatsgruppe.STANDARD_INNSATS, Servicegruppe("IVURD"))
every { profilertInnsatsgruppeService.hentProfilering(any()) } returns Triple(Innsatsgruppe.STANDARD_INNSATS, Servicegruppe("IVURD"), Formidlingsgruppe("IARBS"))
every { profilertInnsatsgruppeService.erStandardInnsats(any()) } returns false

return profilertInnsatsgruppeService
Expand Down

0 comments on commit 2fd2a0f

Please sign in to comment.