@@ -152,7 +152,8 @@ fun Route.uklassifisertInntekt(
152
152
.getStoredInntektMedMetadata(inntektId)
153
153
.let { storedInntektMedMetadata ->
154
154
val person = personOppslag.hentPerson(storedInntektMedMetadata.fødselsnummer)
155
- val inntektsmottaker = Inntektsmottaker (storedInntektMedMetadata.fødselsnummer, person.sammensattNavn())
155
+ val inntektsmottaker =
156
+ Inntektsmottaker (storedInntektMedMetadata.fødselsnummer, person.sammensattNavn())
156
157
val organisasjoner =
157
158
hentOrganisasjoner(
158
159
enhetsregisterClient,
@@ -198,7 +199,8 @@ fun Route.uklassifisertInntekt(
198
199
beregningsdato = inntektPersonMapping.beregningsdato,
199
200
).apply {
200
201
this .opptjeningsperiode.førsteMåned = inntekterDto.periode.fraOgMed
201
- this .opptjeningsperiode.sisteAvsluttendeKalenderMåned = inntekterDto.periode.tilOgMed
202
+ this .opptjeningsperiode.sisteAvsluttendeKalenderMåned =
203
+ inntekterDto.periode.tilOgMed
202
204
},
203
205
inntekt = it.inntekt,
204
206
manueltRedigert =
@@ -283,6 +285,56 @@ fun Route.uklassifisertInntekt(
283
285
}
284
286
}
285
287
}
288
+
289
+ route(" /uklassifisert/uncached/{inntektId}" ) {
290
+ get {
291
+ val callId = call.callId
292
+ withContext(coroutineContext) {
293
+ val inntektId = InntektId (call.parameters[" inntektId" ]!! )
294
+ logger.info { " Henter nye inntekt for $inntektId " }
295
+
296
+ call.withInntektRequest(" GET /uklassifisert/uncached/" ) {
297
+ inntektStore
298
+ .getStoredInntektMedMetadata(inntektId)
299
+ .let { storedInntektMedMetadata ->
300
+ logger.info { " Henter stored inntekt: ${storedInntektMedMetadata.inntektId} " }
301
+ val person = personOppslag.hentPerson(storedInntektMedMetadata.fødselsnummer)
302
+ val opptjeningsperiode = Opptjeningsperiode (storedInntektMedMetadata.beregningsdato)
303
+
304
+ toInntektskomponentRequest(person, opptjeningsperiode)
305
+ .let {
306
+ logger.info { " Henter nye inntekter fra inntektskomponenten" }
307
+ inntektskomponentClient.getInntekt(it, callId = callId)
308
+ }.let {
309
+ logger.info { " Fikk nye inntekter fra inntektskomponenten" }
310
+ val inntektsmottaker =
311
+ Inntektsmottaker (person.fødselsnummer, person.sammensattNavn())
312
+ val organisasjoner =
313
+ hentOrganisasjoner(
314
+ enhetsregisterClient,
315
+ storedInntektMedMetadata.inntekt.arbeidsInntektMaaned
316
+ ?.flatMap { it.arbeidsInntektInformasjon?.inntektListe.orEmpty() }
317
+ ?.filter { inntekt ->
318
+ inntekt.virksomhet?.aktoerType == AktoerType .ORGANISASJON &&
319
+ (inntekt.opptjeningsland == " NO" || inntekt.opptjeningsland == null )
320
+ }?.mapNotNull { it.virksomhet?.identifikator }
321
+ ?.toTypedArray()
322
+ ?.toList() ? : emptyList(),
323
+ )
324
+
325
+ it.mapToFrontend(
326
+ person = inntektsmottaker,
327
+ organisasjoner = organisasjoner,
328
+ storedInntektMedMetadata = storedInntektMedMetadata,
329
+ )
330
+ }.let {
331
+ call.respond(HttpStatusCode .OK , it)
332
+ }.also { inntektOppfriskingCounter.inc() }
333
+ } ? : throw InntektNotFoundException (" Inntekt with id $inntektId not found." )
334
+ }
335
+ }
336
+ }
337
+ }
286
338
}
287
339
route(" /verdikoder" ) {
288
340
get {
0 commit comments