@@ -21,6 +21,7 @@ import io.prometheus.client.Counter
21
21
import kotlinx.coroutines.Dispatchers
22
22
import kotlinx.coroutines.withContext
23
23
import mu.KotlinLogging
24
+ import mu.withLoggingContext
24
25
import no.nav.dagpenger.inntekt.db.InntektNotFoundException
25
26
import no.nav.dagpenger.inntekt.db.InntektStore
26
27
import no.nav.dagpenger.inntekt.db.Inntektparametre
@@ -40,22 +41,17 @@ import no.nav.dagpenger.inntekt.oppslag.PersonOppslag
40
41
import no.nav.dagpenger.inntekt.opptjeningsperiode.Opptjeningsperiode
41
42
import java.time.LocalDate
42
43
43
- private val LOGGER = KotlinLogging .logger {}
44
+ private val logger = KotlinLogging .logger {}
44
45
const val INNTEKT_KORRIGERING = " inntekt_korrigering"
45
- private val inntektKorrigeringCounter = Counter .build()
46
- .name(INNTEKT_KORRIGERING )
47
- .help(" Antall ganger saksbehandler har korrigert inntekter" )
48
- .register()
46
+ private val inntektKorrigeringCounter =
47
+ Counter .build().name(INNTEKT_KORRIGERING ).help(" Antall ganger saksbehandler har korrigert inntekter" ).register()
49
48
const val INNTEKT_OPPFRISKING = " inntekt_oppfrisking"
50
- private val inntektOppfriskingCounter = Counter .build()
51
- .name(INNTEKT_OPPFRISKING )
52
- .help(" Antall ganger saksbehandler har oppdatert inntekter" )
53
- .register()
49
+ private val inntektOppfriskingCounter =
50
+ Counter .build().name(INNTEKT_OPPFRISKING ).help(" Antall ganger saksbehandler har oppdatert inntekter" ).register()
54
51
const val INNTEKT_OPPFRISKING_BRUKT = " inntekt_oppfrisking_brukt"
55
- private val inntektOppfriskingBruktCounter = Counter .build()
56
- .name(INNTEKT_OPPFRISKING_BRUKT )
57
- .help(" Antall ganger saksbehandler har brukt oppdaterte inntekter" )
58
- .register()
52
+ private val inntektOppfriskingBruktCounter =
53
+ Counter .build().name(INNTEKT_OPPFRISKING_BRUKT ).help(" Antall ganger saksbehandler har brukt oppdaterte inntekter" )
54
+ .register()
59
55
60
56
fun Route.uklassifisertInntekt (
61
57
inntektskomponentClient : InntektskomponentClient ,
@@ -73,52 +69,49 @@ fun Route.uklassifisertInntekt(
73
69
regelkontekst = RegelKontekst (this .kontekstId, this .kontekstType),
74
70
beregningsdato = this .beregningsDato
75
71
)
76
- )
77
- ?.let {
78
- inntektStore.getInntekt(it)
79
- }?.let {
80
- val person = personOppslag.hentPerson(this .aktørId)
81
- val inntektsmottaker = Inntektsmottaker (person?.fødselsnummer, person?.sammensattNavn())
82
- mapToGUIInntekt(it, Opptjeningsperiode (this .beregningsDato), inntektsmottaker)
83
- }?.let {
84
- call.respond(HttpStatusCode .OK , it)
85
- } ? : throw InntektNotFoundException (" Inntekt with for $this not found." )
72
+ )?.let {
73
+ inntektStore.getInntekt(it)
74
+ }?.let {
75
+ val person = personOppslag.hentPerson(this .aktørId)
76
+ val inntektsmottaker = Inntektsmottaker (person?.fødselsnummer, person?.sammensattNavn())
77
+ mapToGUIInntekt(it, Opptjeningsperiode (this .beregningsDato), inntektsmottaker)
78
+ }?.let {
79
+ call.respond(HttpStatusCode .OK , it)
80
+ } ? : throw InntektNotFoundException (" Inntekt with for $this not found." )
86
81
}
87
82
}
88
83
}
89
84
post {
90
85
withContext(Dispatchers .IO ) {
91
86
parseUrlPathParameters().run {
92
87
val guiInntekt = call.receive<GUIInntekt >()
93
- mapToStoredInntekt(guiInntekt)
94
- .let {
95
- inntektStore.storeInntekt(
96
- StoreInntektCommand (
97
- inntektparametre = Inntektparametre (
98
- aktørId = this .aktørId,
99
- regelkontekst = RegelKontekst (this .kontekstId, this .kontekstType),
100
- beregningsdato = this .beregningsDato
101
- ),
102
- inntekt = it.inntekt,
103
- manueltRedigert = ManueltRedigert .from(
104
- guiInntekt.redigertAvSaksbehandler,
105
- getSubject()
106
- )
88
+ mapToStoredInntekt(guiInntekt).let {
89
+ inntektStore.storeInntekt(
90
+ StoreInntektCommand (
91
+ inntektparametre = Inntektparametre (
92
+ aktørId = this .aktørId,
93
+ regelkontekst = RegelKontekst (this .kontekstId, this .kontekstType),
94
+ beregningsdato = this .beregningsDato
95
+ ),
96
+ inntekt = it.inntekt,
97
+ manueltRedigert = ManueltRedigert .from(
98
+ guiInntekt.redigertAvSaksbehandler,
99
+ getSubject()
107
100
)
108
101
)
109
- }
110
- .let {
111
- call.respond(
112
- HttpStatusCode .OK ,
113
- mapToGUIInntekt(
114
- it,
115
- Opptjeningsperiode (this .beregningsDato),
116
- guiInntekt.inntektsmottaker
117
- )
102
+ )
103
+ }.let {
104
+ call.respond(
105
+ HttpStatusCode .OK ,
106
+ mapToGUIInntekt(
107
+ it,
108
+ Opptjeningsperiode (this .beregningsDato),
109
+ guiInntekt.inntektsmottaker
118
110
)
119
- }.also {
120
- inntektKorrigeringCounter.inc()
121
- }
111
+ )
112
+ }.also {
113
+ inntektKorrigeringCounter.inc()
114
+ }
122
115
}
123
116
}
124
117
}
@@ -129,21 +122,29 @@ fun Route.uklassifisertInntekt(
129
122
val callId = call.callId
130
123
withContext(Dispatchers .IO ) {
131
124
parseUrlPathParameters().run {
132
- val opptjeningsperiode = Opptjeningsperiode (this .beregningsDato)
133
- toInntektskomponentRequest(this , opptjeningsperiode)
134
- .let {
125
+ withLoggingContext(
126
+ " route" to " /uklassifisert/uncached" ,
127
+ " aktørId" to aktørId,
128
+ " kontekstType" to kontekstType,
129
+ " kontekstId" to kontekstId,
130
+ " beregningsDato" to beregningsDato.toString()
131
+ ) {
132
+ val opptjeningsperiode = Opptjeningsperiode (this .beregningsDato)
133
+ toInntektskomponentRequest(this , opptjeningsperiode).let {
134
+ logger.info { " Henter nye inntekter fra inntektskomponenten" }
135
135
inntektskomponentClient.getInntekt(it, callId = callId)
136
- }
137
- . let {
136
+ }. let {
137
+ logger.info { " Fikk nye inntekter fra inntektskomponenten " }
138
138
val person = personOppslag.hentPerson(this .aktørId)
139
- val inntektsmottaker = Inntektsmottaker (person?.fødselsnummer, person?.sammensattNavn())
139
+ val inntektsmottaker =
140
+ Inntektsmottaker (person?.fødselsnummer, person?.sammensattNavn())
140
141
mapToGUIInntekt(it, opptjeningsperiode, inntektsmottaker)
141
- }
142
- .let {
142
+ }.let {
143
143
call.respond(HttpStatusCode .OK , it)
144
144
}.also {
145
145
inntektOppfriskingCounter.inc()
146
146
}
147
+ }
147
148
}
148
149
}
149
150
}
@@ -152,35 +153,33 @@ fun Route.uklassifisertInntekt(
152
153
withContext(Dispatchers .IO ) {
153
154
parseUrlPathParameters().run {
154
155
val guiInntekt = call.receive<GUIInntekt >()
155
- mapToDetachedInntekt(guiInntekt)
156
- .let {
157
- inntektStore.storeInntekt(
158
- StoreInntektCommand (
159
- inntektparametre = Inntektparametre (
160
- aktørId = this .aktørId,
161
- regelkontekst = RegelKontekst (this .kontekstId, this .kontekstType),
162
- beregningsdato = this .beregningsDato
163
- ),
164
- inntekt = it.inntekt,
165
- manueltRedigert = ManueltRedigert .from(
166
- guiInntekt.redigertAvSaksbehandler,
167
- getSubject()
168
- )
156
+ mapToDetachedInntekt(guiInntekt).let {
157
+ inntektStore.storeInntekt(
158
+ StoreInntektCommand (
159
+ inntektparametre = Inntektparametre (
160
+ aktørId = this .aktørId,
161
+ regelkontekst = RegelKontekst (this .kontekstId, this .kontekstType),
162
+ beregningsdato = this .beregningsDato
163
+ ),
164
+ inntekt = it.inntekt,
165
+ manueltRedigert = ManueltRedigert .from(
166
+ guiInntekt.redigertAvSaksbehandler,
167
+ getSubject()
169
168
)
170
169
)
171
- }
172
- .let {
173
- call.respond(
174
- HttpStatusCode .OK ,
175
- mapToGUIInntekt(
176
- it,
177
- Opptjeningsperiode (this .beregningsDato),
178
- guiInntekt.inntektsmottaker
179
- )
170
+ )
171
+ }.let {
172
+ call.respond(
173
+ HttpStatusCode .OK ,
174
+ mapToGUIInntekt(
175
+ it,
176
+ Opptjeningsperiode (this .beregningsDato),
177
+ guiInntekt.inntektsmottaker
180
178
)
181
- }.also {
182
- inntektOppfriskingBruktCounter.inc()
183
- }
179
+ )
180
+ }.also {
181
+ inntektOppfriskingBruktCounter.inc()
182
+ }
184
183
}
185
184
}
186
185
}
@@ -205,7 +204,7 @@ private fun PipelineContext<Unit, ApplicationCall>.getSubject(): String {
205
204
(it as JWTPrincipal ).payload.subject
206
205
} ? : throw JWTDecodeException (" Unable to get subject from JWT" )
207
206
}.getOrElse {
208
- LOGGER .error(it) { " Unable to get subject" }
207
+ logger .error(it) { " Unable to get subject" }
209
208
return @getOrElse " UNKNOWN"
210
209
}
211
210
}
0 commit comments