Skip to content

Commit

Permalink
PEk-569 bedre detaljert svar ved manglende oftp-simulering
Browse files Browse the repository at this point in the history
  • Loading branch information
antonfofanov committed Sep 9, 2024
1 parent 68c716d commit de929d2
Show file tree
Hide file tree
Showing 3 changed files with 23 additions and 10 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,9 @@ import no.nav.tjenestepensjon.simulering.v1.service.StillingsprosentService
import no.nav.tjenestepensjon.simulering.v2.exceptions.ConnectToIdPortenException
import no.nav.tjenestepensjon.simulering.v2.exceptions.ConnectToMaskinPortenException
import no.nav.tjenestepensjon.simulering.v2.models.DtoToV2DomainMapper.toSimulerPensjonRequestV2
import no.nav.tjenestepensjon.simulering.v2.models.response.SimulerOffentligTjenestepensjonResponse
import no.nav.tjenestepensjon.simulering.v2.models.response.SimulerOffentligTjenestepensjonResponse.Companion.ikkeMedlem
import no.nav.tjenestepensjon.simulering.v2.models.response.SimulerOffentligTjenestepensjonResponse.Companion.tpOrdningStoettesIkke
import no.nav.tjenestepensjon.simulering.v2.service.SimuleringServiceV2
import org.springframework.beans.factory.annotation.Qualifier
import org.springframework.http.HttpStatus
Expand Down Expand Up @@ -101,7 +104,7 @@ class SimuleringEndpoint(
}
} catch (e: NoTpOrdningerFoundException) {
log.debug { """Request with nav-call-id ${getHeaderFromRequestContext(NAV_CALL_ID)}. No TP-forhold found for person.""" }
ResponseEntity.notFound().build()
ResponseEntity.ok(SimulerOffentligTjenestepensjonResponse.ikkeMedlem())
} catch (e: JsonParseException) {
log.warn { """Request with nav-call-id ${getHeaderFromRequestContext(NAV_CALL_ID)}. Unable to parse body to request.""" }
ResponseEntity.badRequest().build()
Expand All @@ -111,7 +114,7 @@ class SimuleringEndpoint(
} catch (e: LeveradoerNotFoundException) {
metrics.incrementCounter(APP_TOTAL_SIMULERING_TP_ORDNING_STOTTES_IKKE)
log.warn { """Request with nav-call-id ${getHeaderFromRequestContext(NAV_CALL_ID)}. No supported TP-Ordning found.""" }
ResponseEntity.notFound().build()
ResponseEntity.ok(SimulerOffentligTjenestepensjonResponse.tpOrdningStoettesIkke())
} catch (e: BrukerKvalifisererIkkeTilTjenestepensjonException) {
metrics.incrementCounter(APP_TOTAL_SIMULERING_BRUKER_KVALIFISERER_IKKE)
log.warn { """Request with nav-call-id ${getHeaderFromRequestContext(NAV_CALL_ID)}. Bruker kvalifiserer ikke til tjenestepensjon. ${e.message}""" }
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,17 @@ import no.nav.tjenestepensjon.simulering.v1.models.response.AbstractSimulerOffen
import no.nav.tjenestepensjon.simulering.v2.models.domain.Utbetalingsperiode

data class SimulerOffentligTjenestepensjonResponse(
val tpnr: String,
val navnOrdning: String,
val inkluderteOrdningerListe: List<String> = emptyList(),
val leverandorUrl: String? = null,
val utbetalingsperiodeListe: List<Utbetalingsperiode?> = emptyList()
) : AbstractSimulerOffentligTjenestepensjonResponse()
val tpnr: String,
val navnOrdning: String,
val inkluderteOrdningerListe: List<String> = emptyList(),
val leverandorUrl: String? = null,
val utbetalingsperiodeListe: List<Utbetalingsperiode?> = emptyList(),
var brukerErIkkeMedlemAvTPOrdning: Boolean = false,
var brukerErMedlemAvTPOrdningSomIkkeStoettes: Boolean = false,
) : AbstractSimulerOffentligTjenestepensjonResponse() {

companion object {
fun Companion.ikkeMedlem() = SimulerOffentligTjenestepensjonResponse("", "", emptyList(), brukerErIkkeMedlemAvTPOrdning = true)
fun Companion.tpOrdningStoettesIkke() = SimulerOffentligTjenestepensjonResponse("", "", emptyList(), brukerErMedlemAvTPOrdningSomIkkeStoettes = true)
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,9 @@ val defaultSimulerOffentligTjenestepensjonResponse
navnOrdning = "bogus",
inkluderteOrdningerListe = listOf("bogus"),
leverandorUrl = "bogus",
utbetalingsperiodeListe = defaultUtbetalingsperiodeListe
utbetalingsperiodeListe = defaultUtbetalingsperiodeListe,
brukerErIkkeMedlemAvTPOrdning = false,
brukerErMedlemAvTPOrdningSomIkkeStoettes = false,
)

val defaultOpptjeningsperiode
Expand Down Expand Up @@ -99,7 +101,7 @@ val defaultOpptjeningsperiodeListe
get() = listOf(defaultOpptjeningsperiode)

const val defaultSimulerOffentligTjenestepensjonResponseJson =
"""{"tpnr":"$defaultTpid","navnOrdning":"bogus","inkluderteOrdningerListe":["bogus"],"leverandorUrl":"bogus","utbetalingsperiodeListe":[{"uttaksgrad":0,"arligUtbetaling":0.0,"datoFom":"$defaultFomDateString","datoTom":"$defaultTomDateString","ytelsekode":"bogus"},null]}"""
"""{"tpnr":"$defaultTpid","navnOrdning":"bogus","inkluderteOrdningerListe":["bogus"],"leverandorUrl":"bogus","utbetalingsperiodeListe":[{"uttaksgrad":0,"arligUtbetaling":0.0,"datoFom":"$defaultFomDateString","datoTom":"$defaultTomDateString","ytelsekode":"bogus"},null],"brukerErIkkeMedlemAvTPOrdning":false,"brukerErMedlemAvTPOrdningSomIkkeStoettes":false}"""

const val defaultOppjeningsperiodeJson =
"""{"datoFom":"$defaultFomDateString","datoTom":"$defaultTomDateString","stillingsprosent":0.0,"aldersgrense":0,"faktiskHovedlonn":0,"stillingsuavhengigTilleggslonn":0}"""
Expand Down

0 comments on commit de929d2

Please sign in to comment.