Skip to content

Commit

Permalink
Henter totalt antall også fra oppgave-v3, konsistent med pr behandlin…
Browse files Browse the repository at this point in the history
…gstype (#2844)

* Henter totalt antall også fra oppgave-v3, konsistent med pr behandlingstype

* Henter totalt antall også fra oppgave-v3, konsistent med pr behandlingstype
  • Loading branch information
tendestad authored Jan 6, 2025
1 parent 5125d4b commit 2262f1a
Show file tree
Hide file tree
Showing 8 changed files with 44 additions and 15 deletions.
3 changes: 2 additions & 1 deletion src/main/kotlin/no/nav/k9/los/KoinProfiles.kt
Original file line number Diff line number Diff line change
Expand Up @@ -310,7 +310,7 @@ fun common(app: Application, config: Configuration) = module {
single {
OppgaveTjeneste(
oppgaveRepository = get(),
oppgaveRepositoryV2 = get(),
oppgaverGruppertRepository = get(),
oppgaveKøRepository = get(),
saksbehandlerRepository = get(),
reservasjonRepository = get(),
Expand All @@ -321,6 +321,7 @@ fun common(app: Application, config: Configuration) = module {
statistikkRepository = get(),
reservasjonOversetter = get(),
statistikkChannel = get(named("statistikkRefreshChannel")),
koinProfile = config.koinProfile,
)
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,12 @@ class OppgaverGruppertRepository(private val dataSource: DataSource) {
val antall: Int
)

fun hentTotaltAntallÅpneOppgaver(kode6 : Boolean): Int {
return hentAntallÅpneOppgaverPrOppgavetypeBehandlingstype(kode6)
.map { it.antall }
.reduce(Int::plus)
}

fun hentAntallÅpneOppgaverPrOppgavetypeBehandlingstype(kode6 : Boolean): List<BehandlingstypeAntallDto> {
return cacheAntallÅpneOppgaverPrOppgavetypeBehandlingstype.hent(
nøkkel = kode6,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -183,7 +183,11 @@ class NokkeltallTjeneste constructor(
} else {
val harTilgangTilKode6 = pepClient.harTilgangTilKode6()
val grupperte = oppgaverGruppertRepository.hentAntallÅpneOppgaverPrOppgavetypeBehandlingstype(harTilgangTilKode6)
return grupperte.map { AlleApneBehandlinger(BehandlingType.fraKode(it.behandlistype!!), it.antall) }
val (medbehandlingType, utenBehandlingType) = grupperte.partition { it.behandlistype != null }
if (utenBehandlingType.isNotEmpty()) {
log.warn("Fant ${utenBehandlingType.map {it.antall}.reduce(Int::plus)} oppgaver uten behandlingstype, de blir ikke med oversikt som viser antall")
}
return medbehandlingType.map { AlleApneBehandlinger(BehandlingType.fraKode(it.behandlistype!!), it.antall) }

}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ import no.nav.k9.los.integrasjon.rest.idToken
import no.nav.k9.los.nyoppgavestyring.domeneadaptere.k9.reservasjonkonvertering.ReservasjonOversetter
import no.nav.k9.los.nyoppgavestyring.reservasjon.ReservasjonV3
import no.nav.k9.los.nyoppgavestyring.visningoguttrekk.OppgaveNøkkelDto
import no.nav.k9.los.nyoppgavestyring.visningoguttrekk.nøkkeltall.OppgaverGruppertRepository
import no.nav.k9.los.tjenester.avdelingsleder.nokkeltall.AlleOppgaverHistorikk
import no.nav.k9.los.tjenester.fagsak.PersonDto
import no.nav.k9.los.tjenester.saksbehandler.nokkeltall.NyeOgFerdigstilteOppgaverDto
Expand All @@ -40,7 +41,7 @@ private val log: Logger =

class OppgaveTjeneste constructor(
private val oppgaveRepository: OppgaveRepository,
private val oppgaveRepositoryV2: OppgaveRepositoryV2,
private val oppgaverGruppertRepository: OppgaverGruppertRepository,
private val oppgaveKøRepository: OppgaveKøRepository,
private val saksbehandlerRepository: SaksbehandlerRepository,
private val pdlService: IPdlService,
Expand All @@ -51,6 +52,7 @@ class OppgaveTjeneste constructor(
private val statistikkRepository: StatistikkRepository,
private val reservasjonOversetter: ReservasjonOversetter,
private val statistikkChannel: Channel<Boolean>,
private val koinProfile: KoinProfile
) {

suspend fun hentOppgaver(oppgavekøId: UUID): List<Oppgave> {
Expand Down Expand Up @@ -747,7 +749,12 @@ class OppgaveTjeneste constructor(
}

suspend fun hentAntallOppgaverTotalt(): Int {
return oppgaveRepository.hentAktiveOppgaverTotalt()
if (koinProfile == KoinProfile.PROD) {
return oppgaveRepository.hentAktiveOppgaverTotalt()
} else {
val harTilgangTilKode6 = pepClient.harTilgangTilKode6()
return oppgaverGruppertRepository.hentTotaltAntallÅpneOppgaver(harTilgangTilKode6)
}
}

suspend fun hentNesteOppgaverIKø(kø: UUID): List<OppgaveDto> {
Expand Down
5 changes: 3 additions & 2 deletions src/test/kotlin/no/nav/k9/los/KoinModules.kt
Original file line number Diff line number Diff line change
Expand Up @@ -216,7 +216,7 @@ fun buildAndTestConfig(dataSource: DataSource, pepClient: IPepClient = PepClient
single {
OppgaveTjeneste(
oppgaveRepository = get(),
oppgaveRepositoryV2 = get(),
oppgaverGruppertRepository = get(),
oppgaveKøRepository = get(),
saksbehandlerRepository = get(),
pdlService = get(),
Expand All @@ -226,7 +226,8 @@ fun buildAndTestConfig(dataSource: DataSource, pepClient: IPepClient = PepClient
pepClient = get(),
statistikkRepository = get(),
reservasjonOversetter = reservasjonOversetterMock,
statistikkChannel = get(named("statistikkRefreshChannel"))
statistikkChannel = get(named("statistikkRefreshChannel")),
koinProfile = config.koinProfile(),
)
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ import io.mockk.mockk
import kotlinx.coroutines.runBlocking
import no.nav.k9.los.AbstractK9LosIntegrationTest
import no.nav.k9.los.Configuration
import no.nav.k9.los.KoinProfile
import no.nav.k9.los.domene.lager.oppgave.Oppgave
import no.nav.k9.los.domene.lager.oppgave.v2.OppgaveRepositoryV2
import no.nav.k9.los.domene.modell.AksjonspunktStatus
Expand All @@ -22,6 +23,7 @@ import no.nav.k9.los.integrasjon.azuregraph.IAzureGraphService
import no.nav.k9.los.integrasjon.pdl.IPdlService
import no.nav.k9.los.nyoppgavestyring.domeneadaptere.k9.reservasjonkonvertering.ReservasjonOversetter
import no.nav.k9.los.nyoppgavestyring.reservasjon.ReservasjonV3
import no.nav.k9.los.nyoppgavestyring.visningoguttrekk.nøkkeltall.OppgaverGruppertRepository
import no.nav.k9.los.tjenester.saksbehandler.oppgave.OppgaveTjeneste
import org.junit.jupiter.api.Test
import org.koin.core.qualifier.named
Expand Down Expand Up @@ -133,7 +135,7 @@ class BeslutterSkalIkkePlukkeEgenSakTest : AbstractK9LosIntegrationTest() {

return OppgaveTjeneste(
get<OppgaveRepository>(),
get<OppgaveRepositoryV2>(),
get<OppgaverGruppertRepository>(),
get<OppgaveKøRepository>(),
get<SaksbehandlerRepository>(),
get<IPdlService>(),
Expand All @@ -143,7 +145,8 @@ class BeslutterSkalIkkePlukkeEgenSakTest : AbstractK9LosIntegrationTest() {
get<IPepClient>(),
get<StatistikkRepository>(),
oversetterMock,
get(named("statistikkRefreshChannel"))
get(named("statistikkRefreshChannel")),
KoinProfile.LOCAL
)
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,7 @@ import no.nav.k9.los.nyoppgavestyring.mottak.omraade.Område
import no.nav.k9.los.nyoppgavestyring.mottak.oppgave.OppgaveDto
import no.nav.k9.los.nyoppgavestyring.mottak.oppgave.OppgaveFeltverdiDto
import no.nav.k9.los.nyoppgavestyring.mottak.oppgave.OppgaveV3Tjeneste
import no.nav.k9.los.nyoppgavestyring.visningoguttrekk.nøkkeltall.OppgaverGruppertRepository
import no.nav.k9.los.tjenester.sse.SseEvent
import org.junit.jupiter.api.BeforeEach
import org.junit.jupiter.api.Test
Expand Down Expand Up @@ -76,6 +77,7 @@ class OppgaveTjenesteSettSkjermetTest : KoinTest, AbstractPostgresTest() {

val oppgaveRepository = get<OppgaveRepository>()
val oppgaveRepositoryV2 = get<OppgaveRepositoryV2>()
val oppgaverGruppertRepository = get<OppgaverGruppertRepository>()

val oppgaveKøRepository = OppgaveKøRepository(
dataSource = get(),
Expand Down Expand Up @@ -106,11 +108,11 @@ class OppgaveTjenesteSettSkjermetTest : KoinTest, AbstractPostgresTest() {
val azureGraphService = mockk<AzureGraphService>()
val oppgaveTjeneste = OppgaveTjeneste(
oppgaveRepository,
oppgaveRepositoryV2,
oppgaverGruppertRepository,
oppgaveKøRepository,
saksbehandlerRepository,
pdlService,
reservasjonRepository, config, azureGraphService, pepClient, statistikkRepository, reservasjonOversetter, statistikkChannel
reservasjonRepository, config, azureGraphService, pepClient, statistikkRepository, reservasjonOversetter, statistikkChannel, KoinProfile.LOCAL
)

val uuid = UUID.randomUUID()
Expand Down Expand Up @@ -215,6 +217,7 @@ class OppgaveTjenesteSettSkjermetTest : KoinTest, AbstractPostgresTest() {

val oppgaveRepository = OppgaveRepository(dataSource = dataSource,pepClient = PepClientLocal(), refreshOppgave = oppgaverRefresh)
val oppgaveRepositoryV2 = OppgaveRepositoryV2(dataSource = dataSource)
val oppgaverGruppertRepository = get<OppgaverGruppertRepository>()

val oppgaveKøRepository = OppgaveKøRepository(
dataSource = dataSource,
Expand Down Expand Up @@ -243,11 +246,11 @@ class OppgaveTjenesteSettSkjermetTest : KoinTest, AbstractPostgresTest() {
val reservasjonOversetter = get<ReservasjonOversetter>()
val oppgaveTjeneste = OppgaveTjeneste(
oppgaveRepository,
oppgaveRepositoryV2,
oppgaverGruppertRepository,
oppgaveKøRepository,
saksbehandlerRepository,
pdlService,
reservasjonRepository, config, azureGraphService, pepClient, statistikkRepository, reservasjonOversetter, statistikkChannel
reservasjonRepository, config, azureGraphService, pepClient, statistikkRepository, reservasjonOversetter, statistikkChannel, KoinProfile.LOCAL
)

val oppgave1 = Oppgave(
Expand Down Expand Up @@ -412,6 +415,7 @@ class OppgaveTjenesteSettSkjermetTest : KoinTest, AbstractPostgresTest() {

val oppgaveRepository = OppgaveRepository(dataSource = dataSource,pepClient = PepClientLocal(), refreshOppgave = oppgaverRefresh)
val oppgaveRepositoryV2 = OppgaveRepositoryV2(dataSource = dataSource)
val oppgaverGruppertRepository = get<OppgaverGruppertRepository>()

val oppgaveKøRepository = OppgaveKøRepository(
dataSource = dataSource,
Expand Down Expand Up @@ -443,11 +447,11 @@ class OppgaveTjenesteSettSkjermetTest : KoinTest, AbstractPostgresTest() {
coEvery { azureGraphService.hentIdentTilInnloggetBruker() } returns "123"
val oppgaveTjeneste = OppgaveTjeneste(
oppgaveRepository,
oppgaveRepositoryV2,
oppgaverGruppertRepository,
oppgaveKøRepository,
saksbehandlerRepository,
pdlService,
reservasjonRepository, config, azureGraphService, pepClient, statistikkRepository, reservasjonOversetter, statistikkChannel
reservasjonRepository, config, azureGraphService, pepClient, statistikkRepository, reservasjonOversetter, statistikkChannel, KoinProfile.LOCAL
)


Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ import io.mockk.mockk
import kotlinx.coroutines.runBlocking
import no.nav.k9.los.AbstractK9LosIntegrationTest
import no.nav.k9.los.Configuration
import no.nav.k9.los.KoinProfile
import no.nav.k9.los.domene.lager.oppgave.Oppgave
import no.nav.k9.los.domene.lager.oppgave.v2.OppgaveRepositoryV2
import no.nav.k9.los.domene.lager.oppgave.v2.TransactionalManager
Expand All @@ -23,6 +24,7 @@ import no.nav.k9.los.nyoppgavestyring.mottak.oppgave.OppgaveFeltverdiDto
import no.nav.k9.los.nyoppgavestyring.mottak.oppgave.OppgaveV3Tjeneste
import no.nav.k9.los.nyoppgavestyring.reservasjon.ReservasjonV3
import no.nav.k9.los.nyoppgavestyring.visningoguttrekk.OppgaveNøkkelDto
import no.nav.k9.los.nyoppgavestyring.visningoguttrekk.nøkkeltall.OppgaverGruppertRepository
import no.nav.k9.los.tjenester.avdelingsleder.oppgaveko.AndreKriterierDto
import org.junit.jupiter.api.BeforeEach
import org.junit.jupiter.api.Test
Expand Down Expand Up @@ -952,7 +954,7 @@ class OppgaveTjenesteTest : AbstractK9LosIntegrationTest() {

return OppgaveTjeneste(
get<OppgaveRepository>(),
get<OppgaveRepositoryV2>(),
get<OppgaverGruppertRepository>(),
get<OppgaveKøRepository>(),
get<SaksbehandlerRepository>(),
get<IPdlService>(),
Expand All @@ -963,6 +965,7 @@ class OppgaveTjenesteTest : AbstractK9LosIntegrationTest() {
get<StatistikkRepository>(),
oversetterMock,
statistikkChannel = get(named("statistikkRefreshChannel")),
KoinProfile.LOCAL,
)
}

Expand Down

0 comments on commit 2262f1a

Please sign in to comment.