Skip to content

Commit

Permalink
r Rydd i FormidlingsgruppeMottak, og fjern midlertidig behandling av …
Browse files Browse the repository at this point in the history
…arbeidssøker siden det skaper en del støy i loggene
  • Loading branch information
marenger committed Mar 9, 2023
1 parent 6e71529 commit 0030151
Show file tree
Hide file tree
Showing 3 changed files with 18 additions and 55 deletions.
Original file line number Diff line number Diff line change
@@ -1,11 +1,7 @@
package no.nav.fo.veilarbregistrering.arbeidssoker.formidlingsgruppe

import no.nav.fo.veilarbregistrering.aktorIdCache.AktorIdCacheService
import no.nav.fo.veilarbregistrering.arbeidssoker.Arbeidssoker
import no.nav.fo.veilarbregistrering.arbeidssoker.ArbeidssokerperiodeService
import no.nav.fo.veilarbregistrering.arbeidssoker.perioder.ArbeidssokerperiodeAvsluttetProducer
import no.nav.fo.veilarbregistrering.arbeidssoker.perioder.PopulerArbeidssokerperioderService
import no.nav.fo.veilarbregistrering.bruker.Foedselsnummer
import no.nav.fo.veilarbregistrering.log.logger
import org.springframework.stereotype.Service
import org.springframework.transaction.annotation.Transactional
Expand All @@ -15,73 +11,46 @@ import java.time.LocalDateTime
class FormidlingsgruppeMottakService(
private val formidlingsgruppeRepository: FormidlingsgruppeRepository,
private val aktorIdCacheService: AktorIdCacheService,
private val populerArbeidssokerperioderService: PopulerArbeidssokerperioderService,
private val arbeidssokerperiodeAvsluttetProducer: ArbeidssokerperiodeAvsluttetProducer,
private val arbeidssokerperiodeService: ArbeidssokerperiodeService
) {

@Transactional
fun behandle(formidlingsgruppeEndretEvent: FormidlingsgruppeEndretEvent) {

if (formidlingsgruppeEndretEvent.formidlingsgruppeEndret.isBefore(LocalDateTime.parse("2010-01-01T00:00:00"))
&& formidlingsgruppeEndretEvent.formidlingsgruppe.kode != "ARBS") {
logger.warn(
"Fikk formidlingsgruppeendring fra før 2010 som ikke har formidlingsgruppe ARBS, " +
"formidlingsgruppe: ${formidlingsgruppeEndretEvent.formidlingsgruppe.kode}, " +
"dato: ${formidlingsgruppeEndretEvent.formidlingsgruppeEndret}) ")
}

if (formidlingsgruppeEndretEvent.operation != Operation.UPDATE) {
logger.info("Forkaster melding som ikke er UPDATE, men lagrer for ettertid - $formidlingsgruppeEndretEvent")
if (formidlingsgruppeEndretEvent.formidlingsgruppe.kode != "ISERV") {
logger.error("Mottok en INSERT-melding med formidlingsgruppe ${formidlingsgruppeEndretEvent.formidlingsgruppe} - vi skal kun få INSERT med ISERV")
}
formidlingsgruppeRepository.lagre(formidlingsgruppeEndretEvent)
return
}
if(vaskFormidlingsgruppeEventOgStopp(formidlingsgruppeEndretEvent)) return

try {
aktorIdCacheService.hentAktorIdFraPDLHvisIkkeFinnes(formidlingsgruppeEndretEvent.foedselsnummer, true)
} catch (e: Exception) {
logger.error("Feil med aktorId fra PDL", e)
logger.warn("Klarte ikke populere aktørid-cache for innkommende formidlingsgruppe", e)
}

try {
arbeidssokerperiodeService.behandleFormidlingsgruppeEvent(formidlingsgruppeEndretEvent)
} catch (e: Exception) {
logger.error("Feil ved behandling av formidlingsgruppe event", e)
}
val arbeidssøker = hentArbeidssøker(formidlingsgruppeEndretEvent.foedselsnummer)
formidlingsgruppeRepository.lagre(formidlingsgruppeEndretEvent)

try {
aktorIdCacheService.hentAktorIdFraPDLHvisIkkeFinnes(formidlingsgruppeEndretEvent.foedselsnummer, true)
} catch (e: Exception) {
logger.warn("Klarte ikke populere aktørid-cache for innkommende formidlingsgruppe", e)
}

behandle(arbeidssøker, formidlingsgruppeEndretEvent)
formidlingsgruppeRepository.lagre(formidlingsgruppeEndretEvent)
}

private fun hentArbeidssøker(foedselsnummer: Foedselsnummer): Arbeidssoker? {
return try {
val arbeidssøker = populerArbeidssokerperioderService.hentArbeidssøker(foedselsnummer)
arbeidssøker.add(arbeidssokerperiodeAvsluttetProducer)
arbeidssøker
} catch (e: RuntimeException) {
logger.error("Henting av arbeidssøker feilet", e)
null
private fun vaskFormidlingsgruppeEventOgStopp(formidlingsgruppeEndretEvent: FormidlingsgruppeEndretEvent): Boolean {
if (formidlingsgruppeEndretEvent.formidlingsgruppeEndret.isBefore(LocalDateTime.parse("2010-01-01T00:00:00"))
&& formidlingsgruppeEndretEvent.formidlingsgruppe.kode != "ARBS") {
logger.warn(
"Fikk formidlingsgruppeendring fra før 2010 som ikke har formidlingsgruppe ARBS, " +
"formidlingsgruppe: ${formidlingsgruppeEndretEvent.formidlingsgruppe.kode}, " +
"dato: ${formidlingsgruppeEndretEvent.formidlingsgruppeEndret}) ")
}
}

private fun behandle(arbeidssøker: Arbeidssoker?, formidlingsgruppeEndretEvent: FormidlingsgruppeEndretEvent) {
if (arbeidssøker == null) return
try {
logger.info("Behandler mottak av $formidlingsgruppeEndretEvent")
arbeidssøker.behandle(formidlingsgruppeEndretEvent)
arbeidssøker.remove(arbeidssokerperiodeAvsluttetProducer)
} catch (e: RuntimeException) {
logger.error("Behandling av formidlingsgruppeEndretEvent feilet", e)
if (formidlingsgruppeEndretEvent.operation != Operation.UPDATE) {
logger.info("Forkaster melding som ikke er UPDATE, men lagrer for ettertid - $formidlingsgruppeEndretEvent")
if (formidlingsgruppeEndretEvent.formidlingsgruppe.kode != "ISERV") {
logger.error("Mottok en INSERT-melding med formidlingsgruppe ${formidlingsgruppeEndretEvent.formidlingsgruppe} - vi skal kun få INSERT med ISERV")
}
formidlingsgruppeRepository.lagre(formidlingsgruppeEndretEvent)
return true
}
return false
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -327,15 +327,11 @@ class ServiceBeansConfig {
fun formidlingsgruppeMottakService(
formidlingsgruppeRepository: FormidlingsgruppeRepository,
aktorIdCacheService: AktorIdCacheService,
populerArbeidssokerperioderService: PopulerArbeidssokerperioderService,
arbeidssokerperiodeAvsluttetProducer: ArbeidssokerperiodeAvsluttetProducer,
arbeidssokerperiodeService: ArbeidssokerperiodeService
): FormidlingsgruppeMottakService {
return FormidlingsgruppeMottakService(
formidlingsgruppeRepository,
aktorIdCacheService,
populerArbeidssokerperioderService,
arbeidssokerperiodeAvsluttetProducer,
arbeidssokerperiodeService
)
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,8 +19,6 @@ class FormidlingsgruppeMottakServiceTest {
formidlingsgruppeMottakService = FormidlingsgruppeMottakService(
formidlingsgruppeRepository,
mockk(relaxed = true),
mockk(relaxed = true),
mockk(relaxed = true),
mockk(relaxed = true)
)
}
Expand Down

0 comments on commit 0030151

Please sign in to comment.