Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

PEk-569 bedre detaljert svar ved manglende oftp-simulering #145

Merged
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
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
Loading