Skip to content

Commit 00acd62

Browse files
geiralundandroa
andauthored
Feature/person mapping inntekt (#88)
* Del 1: Tilpasse inntekt-api for automatisert saksbehandlingsløp - Opprettet en ny tabell for å mappe person mot inntekt - vedtakid er fortsatt påkrevd, men er nå kan det være en streng i APIet - fødselsnummer kan være NULL for å opprettholde bakoverkompabilitet I del 2 skal inntekt_V1_arena_mapping migreres til inntekt_V1_person_mapping navikt/dagpenger#397 Co-authored-by: André Roaldseth <[email protected]>
1 parent a5dca0d commit 00acd62

27 files changed

+468
-213
lines changed

build.gradle.kts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -104,7 +104,6 @@ dependencies {
104104
testImplementation(Junit5.api)
105105
testImplementation(Junit5.params)
106106
testRuntimeOnly(Junit5.engine)
107-
testRuntimeOnly(Junit5.vintageEngine)
108107
testImplementation(Wiremock.standalone)
109108
testImplementation(KoTest.assertions)
110109
testImplementation(KoTest.runner)

gradle/dependency-locks/compileClasspath.lockfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ com.github.luben:zstd-jni:1.4.0-1
1515
com.github.navikt.dp-biblioteker:ktor-utils:2020.04.27-20.17.e64cb8a0fb81
1616
com.github.navikt.dp-biblioteker:sts-klient:2020.04.27-20.17.e64cb8a0fb81
1717
com.github.navikt:dagpenger-events:2020.04.27-16.29.d11aef4d21d1
18-
com.github.navikt:dagpenger-streams:2020.04.27-19.17.f2e457c85808
18+
com.github.navikt:dagpenger-streams:2020.04.28-09.38.acb13848c1b4
1919
com.github.seratch:kotliquery:1.3.1
2020
com.googlecode.json-simple:json-simple:1.1.1
2121
com.natpryce:konfig:1.6.10.0

gradle/dependency-locks/default.lockfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ com.github.luben:zstd-jni:1.4.0-1
1818
com.github.navikt.dp-biblioteker:ktor-utils:2020.04.27-20.17.e64cb8a0fb81
1919
com.github.navikt.dp-biblioteker:sts-klient:2020.04.27-20.17.e64cb8a0fb81
2020
com.github.navikt:dagpenger-events:2020.04.27-16.29.d11aef4d21d1
21-
com.github.navikt:dagpenger-streams:2020.04.27-19.17.f2e457c85808
21+
com.github.navikt:dagpenger-streams:2020.04.28-09.38.acb13848c1b4
2222
com.github.seratch:kotliquery:1.3.1
2323
com.google.code.findbugs:jsr305:3.0.2
2424
com.google.code.gson:gson:2.8.5

gradle/dependency-locks/implementationDependenciesMetadata.lockfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ com.github.luben:zstd-jni:1.4.0-1
1515
com.github.navikt.dp-biblioteker:ktor-utils:2020.04.27-20.17.e64cb8a0fb81
1616
com.github.navikt.dp-biblioteker:sts-klient:2020.04.27-20.17.e64cb8a0fb81
1717
com.github.navikt:dagpenger-events:2020.04.27-16.29.d11aef4d21d1
18-
com.github.navikt:dagpenger-streams:2020.04.27-19.17.f2e457c85808
18+
com.github.navikt:dagpenger-streams:2020.04.28-09.38.acb13848c1b4
1919
com.github.seratch:kotliquery:1.3.1
2020
com.googlecode.json-simple:json-simple:1.1.1
2121
com.natpryce:konfig:1.6.10.0

gradle/dependency-locks/runtimeClasspath.lockfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ com.github.luben:zstd-jni:1.4.0-1
1818
com.github.navikt.dp-biblioteker:ktor-utils:2020.04.27-20.17.e64cb8a0fb81
1919
com.github.navikt.dp-biblioteker:sts-klient:2020.04.27-20.17.e64cb8a0fb81
2020
com.github.navikt:dagpenger-events:2020.04.27-16.29.d11aef4d21d1
21-
com.github.navikt:dagpenger-streams:2020.04.27-19.17.f2e457c85808
21+
com.github.navikt:dagpenger-streams:2020.04.28-09.38.acb13848c1b4
2222
com.github.seratch:kotliquery:1.3.1
2323
com.google.code.findbugs:jsr305:3.0.2
2424
com.google.code.gson:gson:2.8.5

gradle/dependency-locks/testCompileClasspath.lockfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ com.github.luben:zstd-jni:1.4.0-1
1717
com.github.navikt.dp-biblioteker:ktor-utils:2020.04.27-20.17.e64cb8a0fb81
1818
com.github.navikt.dp-biblioteker:sts-klient:2020.04.27-20.17.e64cb8a0fb81
1919
com.github.navikt:dagpenger-events:2020.04.27-16.29.d11aef4d21d1
20-
com.github.navikt:dagpenger-streams:2020.04.27-19.17.f2e457c85808
20+
com.github.navikt:dagpenger-streams:2020.04.28-09.38.acb13848c1b4
2121
com.github.seratch:kotliquery:1.3.1
2222
com.github.tomakehurst:wiremock-standalone:2.21.0
2323
com.googlecode.json-simple:json-simple:1.1.1

gradle/dependency-locks/testImplementationDependenciesMetadata.lockfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ com.github.luben:zstd-jni:1.4.0-1
1717
com.github.navikt.dp-biblioteker:ktor-utils:2020.04.27-20.17.e64cb8a0fb81
1818
com.github.navikt.dp-biblioteker:sts-klient:2020.04.27-20.17.e64cb8a0fb81
1919
com.github.navikt:dagpenger-events:2020.04.27-16.29.d11aef4d21d1
20-
com.github.navikt:dagpenger-streams:2020.04.27-19.17.f2e457c85808
20+
com.github.navikt:dagpenger-streams:2020.04.28-09.38.acb13848c1b4
2121
com.github.seratch:kotliquery:1.3.1
2222
com.github.tomakehurst:wiremock-standalone:2.21.0
2323
com.googlecode.json-simple:json-simple:1.1.1

gradle/dependency-locks/testRuntimeClasspath.lockfile

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ com.github.mifmif:generex:1.0.2
2121
com.github.navikt.dp-biblioteker:ktor-utils:2020.04.27-20.17.e64cb8a0fb81
2222
com.github.navikt.dp-biblioteker:sts-klient:2020.04.27-20.17.e64cb8a0fb81
2323
com.github.navikt:dagpenger-events:2020.04.27-16.29.d11aef4d21d1
24-
com.github.navikt:dagpenger-streams:2020.04.27-19.17.f2e457c85808
24+
com.github.navikt:dagpenger-streams:2020.04.28-09.38.acb13848c1b4
2525
com.github.seratch:kotliquery:1.3.1
2626
com.github.tomakehurst:wiremock-standalone:2.21.0
2727
com.github.wumpz:diffutils:2.2
@@ -129,7 +129,7 @@ javax.validation:validation-api:2.0.0.Final
129129
javax.xml.bind:jaxb-api:2.3.1
130130
jline:jline:0.9.94
131131
joda-time:joda-time:2.10.1
132-
junit:junit:4.13
132+
junit:junit:4.12
133133
net.bytebuddy:byte-buddy-agent:1.9.10
134134
net.bytebuddy:byte-buddy:1.9.10
135135
net.java.dev.jna:jna-platform:5.5.0
@@ -204,7 +204,6 @@ org.junit.platform:junit-platform-commons:1.6.1
204204
org.junit.platform:junit-platform-engine:1.6.1
205205
org.junit.platform:junit-platform-launcher:1.6.1
206206
org.junit.platform:junit-platform-suite-api:1.6.1
207-
org.junit.vintage:junit-vintage-engine:5.6.1
208207
org.junit:junit-bom:5.6.1
209208
org.latencyutils:LatencyUtils:2.0.3
210209
org.lz4:lz4-java:1.6.0
Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,10 @@
11
# This is a Gradle generated file for dependency locking.
22
# Manual edits can break the build and are not advised.
33
# This file is expected to be part of source control.
4-
junit:junit:4.13
54
org.apiguardian:apiguardian-api:1.1.0
6-
org.hamcrest:hamcrest-core:1.3
75
org.junit.jupiter:junit-jupiter-api:5.6.1
86
org.junit.jupiter:junit-jupiter-engine:5.6.1
97
org.junit.platform:junit-platform-commons:1.6.1
108
org.junit.platform:junit-platform-engine:1.6.1
11-
org.junit.vintage:junit-vintage-engine:5.6.1
129
org.junit:junit-bom:5.6.1
1310
org.opentest4j:opentest4j:1.2.0
Lines changed: 24 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,29 +1,43 @@
11
package no.nav.dagpenger.inntekt
22

33
import no.nav.dagpenger.inntekt.db.InntektStore
4+
import no.nav.dagpenger.inntekt.db.Inntektparametre
5+
import no.nav.dagpenger.inntekt.db.StoreInntektCommand
46
import no.nav.dagpenger.inntekt.db.StoredInntekt
57
import no.nav.dagpenger.inntekt.inntektskomponenten.v1.InntektkomponentRequest
68
import no.nav.dagpenger.inntekt.inntektskomponenten.v1.InntektskomponentClient
79
import no.nav.dagpenger.inntekt.opptjeningsperiode.Opptjeningsperiode
810

9-
class BehandlingsInntektsGetter(private val inntektskomponentClient: InntektskomponentClient, private val inntektStore: InntektStore) {
11+
class BehandlingsInntektsGetter(
12+
private val inntektskomponentClient: InntektskomponentClient,
13+
private val inntektStore: InntektStore
14+
) {
1015

11-
suspend fun getBehandlingsInntekt(behandlingsKey: BehandlingsKey): StoredInntekt {
12-
13-
val opptjeningsperiode = Opptjeningsperiode(behandlingsKey.beregningsDato)
16+
suspend fun getBehandlingsInntekt(inntektparametre: Inntektparametre): StoredInntekt {
17+
val opptjeningsperiode = Opptjeningsperiode(inntektparametre.beregningsdato)
1418

1519
val inntektkomponentRequest = InntektkomponentRequest(
16-
behandlingsKey.aktørId,
20+
inntektparametre.aktørId,
1721
opptjeningsperiode.førsteMåned,
1822
opptjeningsperiode.sisteAvsluttendeKalenderMåned
1923
)
2024

21-
val storedInntekt = inntektStore.getInntektId(behandlingsKey)?.let { inntektStore.getInntekt(it) }
22-
?: inntektStore.insertInntekt(
23-
behandlingsKey,
24-
inntektskomponentClient.getInntekt(inntektkomponentRequest)
25+
return isInntektStored(inntektparametre)?.let { inntektStore.getInntekt(it) }
26+
?: fetchAndStoreInntekt(inntektparametre, inntektkomponentRequest)
27+
}
28+
29+
private suspend fun fetchAndStoreInntekt(
30+
inntektparametre: Inntektparametre,
31+
inntektkomponentRequest: InntektkomponentRequest
32+
): StoredInntekt {
33+
return inntektStore.storeInntekt(
34+
StoreInntektCommand(
35+
inntektparametre = inntektparametre,
36+
inntekt = inntektskomponentClient.getInntekt(inntektkomponentRequest)
2537
)
2638

27-
return storedInntekt
39+
)
2840
}
41+
42+
private fun isInntektStored(inntektparametre: Inntektparametre) = inntektStore.getInntektId(inntektparametre)
2943
}

0 commit comments

Comments
 (0)