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

Commit

Permalink
f Jobb som henter 5 tilfeldige fnr som stikkprøver og prøver å popule…
Browse files Browse the repository at this point in the history
…re arbeidssøkerperioder for dem
  • Loading branch information
marenger committed Feb 24, 2023
1 parent 17dd4da commit 23bd8cd
Show file tree
Hide file tree
Showing 4 changed files with 55 additions and 0 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -6,4 +6,6 @@ interface AktorIdCacheRepository {

fun lagre(aktorIdCache: AktorIdCache)
fun hentAktørId(fnr: Foedselsnummer): AktorIdCache?

fun hentTilfeldigFnr(antall: Int): List<AktorIdCache>
}
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,11 @@ class AktorIdCacheRepositoryImpl(private val db: NamedParameterJdbcTemplate): Ak
return db.query(sql, params, aktorIdCacheRowMapper).firstOrNull()
}

override fun hentTilfeldigFnr(antall: Int): List<AktorIdCache> {
val sql = "SELECT * FROM aktor_id_cache ORDER BY random() limit $antall"
return db.query(sql, aktorIdCacheRowMapper)
}

companion object {
private val aktorIdCacheRowMapper = RowMapper { rs, _ ->
AktorIdCache(
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
package no.nav.fo.veilarbregistrering.arbeidssoker.perioder

import no.nav.fo.veilarbregistrering.aktorIdCache.AktorIdCacheRepository
import no.nav.fo.veilarbregistrering.bruker.Bruker
import no.nav.fo.veilarbregistrering.bruker.PdlOppslagGateway
import no.nav.fo.veilarbregistrering.log.secureLogger
import org.springframework.scheduling.annotation.Scheduled

class PopulerHistoriskePerioderScheduler(
private val populerArbeidssokerperioderService: PopulerArbeidssokerperioderService,
private val pdlOppslagGateway: PdlOppslagGateway,
private val aktorIdCacheRepository: AktorIdCacheRepository
) {

@Scheduled(initialDelay = 180000, fixedDelay = Long.MAX_VALUE)
fun populerHistoriskePerioder() {
val tilfeldigeFnr = aktorIdCacheRepository.hentTilfeldigFnr(5)

tilfeldigeFnr.forEach {
val identer = pdlOppslagGateway.hentIdenter(it.aktorId)

val arbeidssoker = populerArbeidssokerperioderService.hentArbeidssøker(
Bruker(
identer.finnGjeldendeFnr(),
it.aktorId,
identer.finnHistoriskeFoedselsnummer()
)
)

secureLogger.info("Fant følgende perioder for fnr ${identer.finnGjeldendeFnr()}: ${arbeidssoker.allePerioder()}")
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ package no.nav.fo.veilarbregistrering.config
import no.nav.common.auth.context.AuthContextHolder
import no.nav.common.featuretoggle.UnleashClient
import no.nav.common.health.selftest.SelfTestChecks
import no.nav.fo.veilarbregistrering.aktorIdCache.AktorIdCacheRepository
import no.nav.fo.veilarbregistrering.aktorIdCache.AktorIdCacheService
import no.nav.fo.veilarbregistrering.arbeidsforhold.ArbeidsforholdGateway
import no.nav.fo.veilarbregistrering.arbeidsforhold.resources.ArbeidsforholdResource
Expand All @@ -16,6 +17,7 @@ import no.nav.fo.veilarbregistrering.arbeidssoker.meldekort.resources.MeldekortR
import no.nav.fo.veilarbregistrering.arbeidssoker.perioder.ArbeidssokerService
import no.nav.fo.veilarbregistrering.arbeidssoker.perioder.ArbeidssokerperiodeAvsluttetProducer
import no.nav.fo.veilarbregistrering.arbeidssoker.perioder.PopulerArbeidssokerperioderService
import no.nav.fo.veilarbregistrering.arbeidssoker.perioder.PopulerHistoriskePerioderScheduler
import no.nav.fo.veilarbregistrering.arbeidssoker.perioder.resources.ArbeidssokerResource
import no.nav.fo.veilarbregistrering.autorisasjon.TilgangskontrollService
import no.nav.fo.veilarbregistrering.bruker.KontaktinfoService
Expand Down Expand Up @@ -321,6 +323,19 @@ class ServiceBeansConfig {
brukerReaktiveringRepository)
}

@Bean
fun populerArbeiddsokerPerioderScheduler(
populerArbeidssokerperioderService: PopulerArbeidssokerperioderService,
pdlOppslagGateway: PdlOppslagGateway,
aktorIdCacheRepository: AktorIdCacheRepository
): PopulerHistoriskePerioderScheduler {
return PopulerHistoriskePerioderScheduler(
populerArbeidssokerperioderService,
pdlOppslagGateway,
aktorIdCacheRepository
)
}

@Bean
fun formidlingsgruppeMottakService(
formidlingsgruppeRepository: FormidlingsgruppeRepository,
Expand Down

0 comments on commit 23bd8cd

Please sign in to comment.