Skip to content

Commit

Permalink
Oppdatering av kontrakter - fra BrukerIdType til AvsenderMottakerIdType
Browse files Browse the repository at this point in the history
Linterendringer
  • Loading branch information
olekvernberg committed Nov 11, 2024
1 parent 20fd5f3 commit 1049f11
Show file tree
Hide file tree
Showing 15 changed files with 35 additions and 46 deletions.
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package no.nav.familie.ef.iverksett.brev

import no.nav.familie.ef.iverksett.brev.domain.JournalpostResultat
import no.nav.familie.ef.iverksett.brev.domain.tilIdType
import no.nav.familie.ef.iverksett.brev.domain.tilAvsenderMottakerIdType
import no.nav.familie.ef.iverksett.infrastruktur.task.opprettNesteTask
import no.nav.familie.ef.iverksett.iverksetting.IverksettingRepository
import no.nav.familie.ef.iverksett.iverksetting.domene.Iverksett
Expand Down Expand Up @@ -171,7 +171,7 @@ class JournalførVedtaksbrevTask(
avsenderMottaker =
AvsenderMottaker(
id = mottaker.ident,
idType = mottaker.identType.tilIdType(),
idType = mottaker.identType.tilAvsenderMottakerIdType(),
navn = mottaker.navn,
),
)
Expand Down Expand Up @@ -223,8 +223,7 @@ class JournalførVedtaksbrevTask(
}
}

private fun lagDokumentTittel(iverksett: IverksettData): String =
lagVedtakstekst(iverksett) + lagStønadtypeTekst(iverksett.fagsak.stønadstype)
private fun lagDokumentTittel(iverksett: IverksettData): String = lagVedtakstekst(iverksett) + lagStønadtypeTekst(iverksett.fagsak.stønadstype)

override fun onCompletion(task: Task) {
taskService.save(task.opprettNesteTask())
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ package no.nav.familie.ef.iverksett.brev.domain

import no.nav.familie.kontrakter.ef.iverksett.Brevmottaker.IdentType
import no.nav.familie.kontrakter.ef.iverksett.Brevmottaker.MottakerRolle
import no.nav.familie.kontrakter.felles.BrukerIdType
import no.nav.familie.kontrakter.felles.journalpost.AvsenderMottakerIdType

data class Brevmottakere(
val mottakere: List<Brevmottaker>,
Expand All @@ -15,8 +15,8 @@ data class Brevmottaker(
val mottakerRolle: MottakerRolle,
)

fun IdentType.tilIdType(): BrukerIdType =
fun IdentType.tilAvsenderMottakerIdType(): AvsenderMottakerIdType =
when (this) {
IdentType.ORGANISASJONSNUMMER -> BrukerIdType.ORGNR
IdentType.PERSONIDENT -> BrukerIdType.FNR
IdentType.ORGANISASJONSNUMMER -> AvsenderMottakerIdType.ORGNR
IdentType.PERSONIDENT -> AvsenderMottakerIdType.FNR
}
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ import no.nav.familie.ef.iverksett.brev.domain.Brevmottaker
import no.nav.familie.ef.iverksett.brev.domain.FrittståendeBrev
import no.nav.familie.ef.iverksett.brev.domain.JournalpostResultat
import no.nav.familie.ef.iverksett.brev.domain.JournalpostResultatMap
import no.nav.familie.ef.iverksett.brev.domain.tilIdType
import no.nav.familie.ef.iverksett.brev.domain.tilAvsenderMottakerIdType
import no.nav.familie.ef.iverksett.brev.stønadstypeTilDokumenttype
import no.nav.familie.ef.iverksett.repository.findByIdOrThrow
import no.nav.familie.kontrakter.felles.dokarkiv.AvsenderMottaker
Expand Down Expand Up @@ -98,7 +98,7 @@ class JournalførFrittståendeBrevTask(
) = if (frittståendeBrev.personIdent != brevmottaker.ident) {
AvsenderMottaker(
brevmottaker.ident,
brevmottaker.identType.tilIdType(),
brevmottaker.identType.tilAvsenderMottakerIdType(),
brevmottaker.navn,
)
} else {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,9 @@
package no.nav.familie.ef.iverksett.infrastruktur.configuration

import no.nav.familie.kafka.KafkaErrorHandler
import org.springframework.beans.factory.ObjectProvider
import org.springframework.boot.autoconfigure.kafka.KafkaProperties
import org.springframework.boot.ssl.SslBundles
import org.springframework.context.annotation.Bean
import org.springframework.context.annotation.Configuration
import org.springframework.kafka.annotation.EnableKafka
Expand All @@ -15,9 +17,10 @@ class KafkaConsumerConfig {
fun concurrentTilbakekrevingListenerContainerFactory(
properties: KafkaProperties,
kafkaErrorHandler: KafkaErrorHandler,
sslBundles: ObjectProvider<SslBundles>,
): ConcurrentKafkaListenerContainerFactory<String, String> {
val factory = ConcurrentKafkaListenerContainerFactory<String, String>()
factory.consumerFactory = DefaultKafkaConsumerFactory(properties.buildConsumerProperties())
factory.consumerFactory = DefaultKafkaConsumerFactory(properties.buildConsumerProperties(sslBundles.getIfAvailable()))
factory.setCommonErrorHandler(kafkaErrorHandler)
return factory
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -110,8 +110,7 @@ class IverksettingService(
else -> hovedflyt().first().type
}

private fun erIverksettingUtenVedtaksperioder(iverksett: IverksettData) =
iverksett.vedtak.tilkjentYtelse == null && iverksett.vedtak.vedtaksresultat == Vedtaksresultat.AVSLÅTT
private fun erIverksettingUtenVedtaksperioder(iverksett: IverksettData) = iverksett.vedtak.tilkjentYtelse == null && iverksett.vedtak.vedtaksresultat == Vedtaksresultat.AVSLÅTT

fun utledStatus(behandlingId: UUID): IverksettStatus? {
val iverksettResultat = iverksettResultatService.hentIverksettResultat(behandlingId)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,10 +21,11 @@ data class AndelTilkjentYtelse(
val forrigePeriodeId: Long? = null,
val kildeBehandlingId: UUID? = null,
) {
private fun erTilsvarendeForUtbetaling(other: AndelTilkjentYtelse): Boolean = (
this.periode == other.periode &&
this.beløp == other.beløp
)
private fun erTilsvarendeForUtbetaling(other: AndelTilkjentYtelse): Boolean =
(
this.periode == other.periode &&
this.beløp == other.beløp
)

fun harNullBeløp() = this.beløp == 0

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -240,8 +240,7 @@ class OppgaveService(
forrigeBehandling: IverksettOvergangsstønad,
): Boolean = iverksett.vedtaksPeriodeMedMaksTilOgMedDato() != forrigeBehandling.vedtaksPeriodeMedMaksTilOgMedDato()

private fun IverksettOvergangsstønad.gjeldendeVedtak(): VedtaksperiodeOvergangsstønad =
this.vedtak.vedtaksperioder.maxByOrNull { it.periode } ?: error("Kunne ikke finne vedtaksperioder")
private fun IverksettOvergangsstønad.gjeldendeVedtak(): VedtaksperiodeOvergangsstønad = this.vedtak.vedtaksperioder.maxByOrNull { it.periode } ?: error("Kunne ikke finne vedtaksperioder")

private fun IverksettOvergangsstønad.vedtaksPeriodeMedMaksTilOgMedDato(): LocalDate = this.vedtak.vedtaksperioder.maxOf { it.periode.tomDato }

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -122,8 +122,7 @@ class OpprettTilbakekrevingTask(
)
}

private fun finnesÅpenTilbakekrevingsbehandling(nyIverksett: IverksettData): Boolean =
tilbakekrevingClient.finnesÅpenBehandling(nyIverksett.fagsak.eksternId)
private fun finnesÅpenTilbakekrevingsbehandling(nyIverksett: IverksettData): Boolean = tilbakekrevingClient.finnesÅpenBehandling(nyIverksett.fagsak.eksternId)

companion object {
const val TYPE = "opprettTilbakekrevingsbehandling"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -294,6 +294,5 @@ object VedtakstatistikkMapper {
private fun inneholderEøsUnntak(
unntak: SvarId,
vilkårsvurderinger: List<Vilkårsvurdering>,
): Boolean =
vilkårsvurderinger.any { vilkårsvurdering -> vilkårsvurdering.delvilkårsvurderinger.any { delvilkårsvurdering -> delvilkårsvurdering.vurderinger.any { vurdering -> vurdering.svar == unntak } } }
): Boolean = vilkårsvurderinger.any { vilkårsvurdering -> vilkårsvurdering.delvilkårsvurderinger.any { delvilkårsvurdering -> delvilkårsvurdering.vurderinger.any { vurdering -> vurdering.svar == unntak } } }
}
Original file line number Diff line number Diff line change
Expand Up @@ -54,13 +54,13 @@ fun summerManuellePosteringer(detaljertSimuleringResultat: DetaljertSimuleringRe
detaljertSimuleringResultat.simuleringMottaker
.flatMap { simuleringMottaker -> simuleringMottaker.simulertPostering }
.filter { simulertPostering -> simulertPostering.fagOmrådeKode.gjelderManuellPostering() }
.sumOf ( SimulertPostering::beløp )
.sumOf(SimulertPostering::beløp)

fun summerKreditorPosteringer(detaljertSimuleringResultat: DetaljertSimuleringResultat): BigDecimal =
detaljertSimuleringResultat.simuleringMottaker
.flatMap { simuleringMottaker -> simuleringMottaker.simulertPostering }
.filter { simulertPostering -> simulertPostering.gjelderKreditortrekk() }
.sumOf ( SimulertPostering::beløp )
.sumOf(SimulertPostering::beløp)

fun grupperPosteringerEtterDato(mottakere: List<SimuleringMottaker>): List<Simuleringsperiode> =
mottakere
Expand Down Expand Up @@ -105,11 +105,9 @@ fun fagområdeKoderForPosteringer(stønadType: StønadType): Set<FagOmrådeKode>
)
}

private fun hentNyttBeløp(posteringer: List<SimulertPostering>) =
posteringer.sumBarePositiv(YTELSE) - posteringer.sumBarePositiv(FEILUTBETALING)
private fun hentNyttBeløp(posteringer: List<SimulertPostering>) = posteringer.sumBarePositiv(YTELSE) - posteringer.sumBarePositiv(FEILUTBETALING)

private fun hentTidligereUtbetalt(posteringer: List<SimulertPostering>) =
posteringer.sumBareNegativ(FEILUTBETALING) - posteringer.sumBareNegativ(YTELSE)
private fun hentTidligereUtbetalt(posteringer: List<SimulertPostering>) = posteringer.sumBareNegativ(FEILUTBETALING) - posteringer.sumBareNegativ(YTELSE)

private fun hentResultat(posteringer: List<SimulertPostering>): BigDecimal {
val positivFeilutbetaling = posteringer.sumBarePositiv(FEILUTBETALING)
Expand Down Expand Up @@ -141,11 +139,9 @@ private fun hentTotalFeilutbetaling(
.filter { fomDatoNestePeriode == null || it.fom < fomDatoNestePeriode }
.sumOf { it.feilutbetaling }

private fun List<SimulertPostering>.sumBarePositiv(type: PosteringType) =
this.filter { it.posteringType == type && it.beløp > ZERO }.sumOf { it.beløp }
private fun List<SimulertPostering>.sumBarePositiv(type: PosteringType) = this.filter { it.posteringType == type && it.beløp > ZERO }.sumOf { it.beløp }

private fun List<SimulertPostering>.sumBareNegativ(type: PosteringType) =
this.filter { it.posteringType == type && it.beløp < ZERO }.sumOf { it.beløp }
private fun List<SimulertPostering>.sumBareNegativ(type: PosteringType) = this.filter { it.posteringType == type && it.beløp < ZERO }.sumOf { it.beløp }

private data class PeriodeMedForfall(
val fom: LocalDate,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -34,8 +34,7 @@ fun nullAndelTilkjentYtelse(
)

object ØkonomiUtils {
fun andelerUtenNullVerdier(tilkjentYtelse: TilkjentYtelse?): List<AndelTilkjentYtelse> =
tilkjentYtelse?.andelerTilkjentYtelse?.filter { !it.harNullBeløp() } ?: emptyList()
fun andelerUtenNullVerdier(tilkjentYtelse: TilkjentYtelse?): List<AndelTilkjentYtelse> = tilkjentYtelse?.andelerTilkjentYtelse?.filter { !it.harNullBeløp() } ?: emptyList()

/**
* Lager oversikt over siste andel i hver kjede som finnes uten endring i oppdatert tilstand.
Expand Down
4 changes: 2 additions & 2 deletions src/test/kotlin/no/nav/familie/ef/iverksett/DomainTestUtil.kt
Original file line number Diff line number Diff line change
Expand Up @@ -139,7 +139,7 @@ fun posteringer(
posteringstype: PosteringType = PosteringType.YTELSE,
betalingstype: BetalingType = if (beløp >= 0) BetalingType.DEBIT else BetalingType.KREDIT,
fagOmrådeKode: FagOmrådeKode = FagOmrådeKode.ENSLIG_FORSØRGER_OVERGANGSSTØNAD,
klassekode: String = "EFOG"
klassekode: String = "EFOG",
): List<SimulertPostering> =
MutableList(antallMåneder) { index ->
SimulertPostering(
Expand All @@ -155,7 +155,7 @@ fun posteringer(
.atEndOfMonth(),
// Forfallsdato i bank (dagen går til brukeren). Det sendes til banken kanskje en uke i forveien
utenInntrekk = false,
klassekode = klassekode
klassekode = klassekode,
) // Brukes ikke for EF
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -237,9 +237,7 @@ internal class OpprettTilbakekrevingTaskTest {
opprettTilbakekrevingTask.doTask(task)
}

fun Tilbakekrevingsdetaljer.medFeilutbetaling(beløp: Long) =
this.copy(tilbakekrevingMedVarsel = this.tilbakekrevingMedVarsel?.copy(sumFeilutbetaling = beløp.toBigDecimal()))
fun Tilbakekrevingsdetaljer.medFeilutbetaling(beløp: Long) = this.copy(tilbakekrevingMedVarsel = this.tilbakekrevingMedVarsel?.copy(sumFeilutbetaling = beløp.toBigDecimal()))

fun BeriketSimuleringsresultat.medFeilutbetaling(beløp: Long) =
this.copy(oppsummering = this.oppsummering.copy(feilutbetaling = beløp.toBigDecimal()))
fun BeriketSimuleringsresultat.medFeilutbetaling(beløp: Long) = this.copy(oppsummering = this.oppsummering.copy(feilutbetaling = beløp.toBigDecimal()))
}
Original file line number Diff line number Diff line change
Expand Up @@ -369,8 +369,7 @@ fun opprettIverksettOvergangsstønad(
)
}

fun startmåned(andeler: List<AndelTilkjentYtelse>) =
andeler.minOfOrNull { it.periode.fom } ?: error("Trenger å sette startdato hvs det ikke finnes andeler")
fun startmåned(andeler: List<AndelTilkjentYtelse>) = andeler.minOfOrNull { it.periode.fom } ?: error("Trenger å sette startdato hvs det ikke finnes andeler")

fun opprettBrev(): Brev = Brev(ByteArray(256))

Expand Down Expand Up @@ -441,8 +440,7 @@ class IverksettResultatMockBuilder private constructor(
)
}

fun tilbakekrevingResultat(tilbakekrevingResultat: TilbakekrevingResultat?) =
apply { this.tilbakekrevingResultat = tilbakekrevingResultat }
fun tilbakekrevingResultat(tilbakekrevingResultat: TilbakekrevingResultat?) = apply { this.tilbakekrevingResultat = tilbakekrevingResultat }

fun build(
behandlingId: UUID,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -96,5 +96,4 @@ class SimuleringUtilKtTest {

assertThat(summerKreditorPosteringer(simuleringsResultat)).isEqualTo(BigDecimal(3))
}

}

0 comments on commit 1049f11

Please sign in to comment.