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

EY-2518: Avslag yrkesskade #209

Merged
merged 5 commits into from
Aug 10, 2023
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 @@ -5,6 +5,7 @@ import no.nav.pensjon.brevbaker.api.model.LanguageCode

enum class EtterlatteBrevKode {
BARNEPENSJON_AVSLAG,
BARNEPENSJON_AVSLAG_IKKEYRKESSKADE,
BARNEPENSJON_INNVILGELSE,
BARNEPENSJON_REVURDERING_ADOPSJON,
BARNEPENSJON_REVURDERING_ENDRING,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,11 +1,12 @@
package no.nav.pensjon.etterlatte

import no.nav.pensjon.brev.template.LetterTemplate
import no.nav.pensjon.etterlatte.maler.barnepensjon.revurdering.AdopsjonRevurdering
import no.nav.pensjon.etterlatte.maler.barnepensjon.BarnepensjonInnvilgelse
import no.nav.pensjon.etterlatte.maler.barnepensjon.avslag.AvslagFoerstegangsbehandling
import no.nav.pensjon.etterlatte.maler.barnepensjon.avslag.IkkeSomFoelgeAvYrkesskadeYrkessykdom
import no.nav.pensjon.etterlatte.maler.barnepensjon.endring.Endring
import no.nav.pensjon.etterlatte.maler.barnepensjon.endring.UtAvFengselsopphold
import no.nav.pensjon.etterlatte.maler.barnepensjon.revurdering.AdopsjonRevurdering
import no.nav.pensjon.etterlatte.maler.barnepensjon.revurdering.Fengselsopphold
import no.nav.pensjon.etterlatte.maler.barnepensjon.revurdering.HarStanset
import no.nav.pensjon.etterlatte.maler.barnepensjon.revurdering.OmgjoeringAvFarskapRevurdering
Expand All @@ -15,10 +16,10 @@ import no.nav.pensjon.etterlatte.maler.omstillingsstoenad.OMSInnvilgelseAuto
import no.nav.pensjon.etterlatte.maler.omstillingsstoenad.OMSInnvilgelseManuell
import no.nav.pensjon.etterlatte.maler.omstillingsstoenad.OMSOpphoerManuell


val prodAutobrevTemplates: Set<EtterlatteTemplate<*>> =
setOf(
AvslagFoerstegangsbehandling,
IkkeSomFoelgeAvYrkesskadeYrkessykdom,
BarnepensjonInnvilgelse,
OMSInnvilgelseAuto,
OMSInnvilgelseManuell,
Expand All @@ -30,7 +31,7 @@ val prodAutobrevTemplates: Set<EtterlatteTemplate<*>> =
OmgjoeringAvFarskapRevurdering,
OpphoerRevurdering,
SoeskenjusteringRevurdering,
UtAvFengselsopphold
UtAvFengselsopphold,
)

val prodRedigerbareTemplates: Set<EtterlatteTemplate<*>> = emptySet()
Expand All @@ -56,4 +57,4 @@ class TemplateResource(

fun getRedigerbartBrev(kode: EtterlatteBrevKode): LetterTemplate<*, *>? =
redigerbareBrevMap[kode]?.template
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -10,13 +10,15 @@ import no.nav.pensjon.brev.template.dsl.text
import no.nav.pensjon.brevbaker.api.model.LetterMetadata
import no.nav.pensjon.etterlatte.EtterlatteBrevKode
import no.nav.pensjon.etterlatte.EtterlatteTemplate
import no.nav.pensjon.etterlatte.maler.Hovedmal
import no.nav.pensjon.etterlatte.maler.ManueltBrevDTO
import no.nav.pensjon.etterlatte.maler.ManueltBrevDTOSelectors.innhold
import no.nav.pensjon.etterlatte.maler.fraser.barnepensjon.Barnepensjon
import no.nav.pensjon.etterlatte.maler.konverterElementerTilBrevbakerformat
import no.nav.pensjon.etterlatte.maler.vedlegg.klageOgAnke

@TemplateModelHelpers
object AvslagFoerstegangsbehandling : EtterlatteTemplate<ManueltBrevDTO> {
object AvslagFoerstegangsbehandling : EtterlatteTemplate<ManueltBrevDTO>, Hovedmal {
override val kode = EtterlatteBrevKode.BARNEPENSJON_AVSLAG

override val template = createTemplate(
Expand All @@ -34,7 +36,7 @@ object AvslagFoerstegangsbehandling : EtterlatteTemplate<ManueltBrevDTO> {
text(
Bokmal to "Vi har avslått søknaden din om barnepensjon",
Nynorsk to "",
English to ""
English to "",
)
}
outline {
Expand All @@ -44,5 +46,6 @@ object AvslagFoerstegangsbehandling : EtterlatteTemplate<ManueltBrevDTO> {
includePhrase(Barnepensjon.DuHarRettTilInnsyn)
includePhrase(Barnepensjon.HarDuSpoersmaal)
}
includeAttachment(klageOgAnke, innhold)
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
package no.nav.pensjon.etterlatte.maler.barnepensjon.avslag

import no.nav.pensjon.brev.template.Language.Bokmal
import no.nav.pensjon.brev.template.Language.English
import no.nav.pensjon.brev.template.Language.Nynorsk
import no.nav.pensjon.brev.template.dsl.createTemplate
import no.nav.pensjon.brev.template.dsl.helpers.TemplateModelHelpers
import no.nav.pensjon.brev.template.dsl.languages
import no.nav.pensjon.brev.template.dsl.text
import no.nav.pensjon.brevbaker.api.model.LetterMetadata
import no.nav.pensjon.etterlatte.EtterlatteBrevKode
import no.nav.pensjon.etterlatte.EtterlatteTemplate
import no.nav.pensjon.etterlatte.maler.Delmal
import no.nav.pensjon.etterlatte.maler.barnepensjon.avslag.BarnepensjonAvslagIkkeYrkesskadeDTOSelectors.dinForelder
import no.nav.pensjon.etterlatte.maler.barnepensjon.avslag.BarnepensjonAvslagIkkeYrkesskadeDTOSelectors.doedsdato
import no.nav.pensjon.etterlatte.maler.barnepensjon.avslag.BarnepensjonAvslagIkkeYrkesskadeDTOSelectors.yrkesskadeEllerYrkessykdom
import no.nav.pensjon.etterlatte.maler.fraser.barnepensjon.avslag.IkkeSomFoelgeAvYrkesskadeYrkessykdomFraser
import java.time.LocalDate

data class BarnepensjonAvslagIkkeYrkesskadeDTO(
val dinForelder: String,
val doedsdato: LocalDate,
val yrkesskadeEllerYrkessykdom: String,
)

@TemplateModelHelpers
object IkkeSomFoelgeAvYrkesskadeYrkessykdom : EtterlatteTemplate<BarnepensjonAvslagIkkeYrkesskadeDTO>, Delmal {
override val kode: EtterlatteBrevKode = EtterlatteBrevKode.BARNEPENSJON_AVSLAG_IKKEYRKESSKADE

override val template = createTemplate(
name = kode.name,
letterDataType = BarnepensjonAvslagIkkeYrkesskadeDTO::class,
languages = languages(Bokmal, Nynorsk, English),
letterMetadata = LetterMetadata(
displayTitle = "Vedtak - opphør på grunn av adopsjon",
isSensitiv = true,
distribusjonstype = LetterMetadata.Distribusjonstype.VEDTAK,
brevtype = LetterMetadata.Brevtype.VEDTAKSBREV,
),
) {
title {
text(
Bokmal to "",
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Er det noen grunn til at Title er tom?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ja - denne malen blir brukt kun i redigeringsfeltet i frontend for saksbehandlar. Så gjer vi om alt til slate-blokker der, og så sender vi det inn som innhald til avslags-malen ved ferdigstilling/pdf-generering.

Dermed bryr vi oss ikkje om title-feltet her, og kunne i grunn ha fjerna det, viss det ikkje var for at eit-eller-anna i brevbakeren (hugsar ikkje akkurat kva) har markert det som påkrevd.

Nynorsk to "",
English to "",
)
}
outline {
includePhrase(
IkkeSomFoelgeAvYrkesskadeYrkessykdomFraser.BegrunnelseForVedtaket(
dinForelder,
doedsdato,
yrkesskadeEllerYrkessykdom,
),
)
}
}
}
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
package no.nav.pensjon.etterlatte.maler.barnepensjon.revurdering

import no.nav.pensjon.brev.template.Language
import no.nav.pensjon.brev.template.Language.Bokmal
import no.nav.pensjon.brev.template.Language.English
import no.nav.pensjon.brev.template.Language.Nynorsk
import no.nav.pensjon.brev.template.dsl.createTemplate
import no.nav.pensjon.brev.template.dsl.helpers.TemplateModelHelpers
import no.nav.pensjon.brev.template.dsl.languages
Expand Down Expand Up @@ -29,7 +31,7 @@ object Fengselsopphold : EtterlatteTemplate<BarnepensjonFengselsoppholdDTO>, Del
override val template = createTemplate(
name = kode.name,
letterDataType = BarnepensjonFengselsoppholdDTO::class,
languages = languages(Language.Bokmal, Language.Nynorsk, Language.English),
languages = languages(Bokmal, Nynorsk, English),
letterMetadata = LetterMetadata(
displayTitle = "Vedtak - opphør på grunn av omgjøring av farskap",
isSensitiv = true,
Expand All @@ -39,9 +41,9 @@ object Fengselsopphold : EtterlatteTemplate<BarnepensjonFengselsoppholdDTO>, Del
) {
title {
text(
Language.Bokmal to "Vi har stanset barnepensjonen din",
Language.Nynorsk to "Vi har stansa barnepensjonen din",
Language.English to "We have ceased your child pension",
Bokmal to "Vi har stanset barnepensjonen din",
Nynorsk to "Vi har stansa barnepensjonen din",
English to "We have ceased your child pension",
)
}
outline {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
package no.nav.pensjon.etterlatte.maler.barnepensjon.revurdering

import no.nav.pensjon.brev.template.Language
import no.nav.pensjon.brev.template.Language.Bokmal
import no.nav.pensjon.brev.template.Language.English
import no.nav.pensjon.brev.template.Language.Nynorsk
import no.nav.pensjon.brev.template.dsl.createTemplate
import no.nav.pensjon.brev.template.dsl.helpers.TemplateModelHelpers
import no.nav.pensjon.brev.template.dsl.languages
Expand Down Expand Up @@ -30,7 +32,7 @@ object HarStanset : EtterlatteTemplate<HarStansetDTO>, Hovedmal {
override val template = createTemplate(
name = kode.name,
letterDataType = HarStansetDTO::class,
languages = languages(Language.Bokmal, Language.Nynorsk, Language.English),
languages = languages(Bokmal, Nynorsk, English),
letterMetadata = LetterMetadata(
displayTitle = "Vedtak - har stanset",
isSensitiv = true,
Expand All @@ -40,9 +42,9 @@ object HarStanset : EtterlatteTemplate<HarStansetDTO>, Hovedmal {
) {
title {
text(
Language.Bokmal to "Vi har stanset barnepensjonen din",
Language.Nynorsk to "",
Language.English to "",
Bokmal to "Vi har stanset barnepensjonen din",
Nynorsk to "",
English to "",
)
}
outline {
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
package no.nav.pensjon.etterlatte.maler.fraser.barnepensjon.avslag

import no.nav.pensjon.brev.template.Expression
import no.nav.pensjon.brev.template.LangBokmalNynorskEnglish
import no.nav.pensjon.brev.template.Language.Bokmal
import no.nav.pensjon.brev.template.Language.English
import no.nav.pensjon.brev.template.Language.Nynorsk
import no.nav.pensjon.brev.template.OutlinePhrase
import no.nav.pensjon.brev.template.dsl.OutlineOnlyScope
import no.nav.pensjon.brev.template.dsl.expression.expr
import no.nav.pensjon.brev.template.dsl.expression.format
import no.nav.pensjon.brev.template.dsl.expression.plus
import no.nav.pensjon.brev.template.dsl.text
import no.nav.pensjon.brev.template.dsl.textExpr
import java.time.LocalDate

object IkkeSomFoelgeAvYrkesskadeYrkessykdomFraser {
data class BegrunnelseForVedtaket(
val dinForelder: Expression<String>,
val doedsdato: Expression<LocalDate>,
val yrkesskadeEllerYrkessykdom: Expression<String>,
) : OutlinePhrase<LangBokmalNynorskEnglish>() {
override fun OutlineOnlyScope<LangBokmalNynorskEnglish, Unit>.template() {
title2 {
text(
Bokmal to "Begrunnelse for vedtaket",
Nynorsk to "",
English to "",
)
}
val formatertDoedsdato = doedsdato.format()
paragraph {
textExpr(
Bokmal to "Barnepensjon er avslått fordi ".expr() + dinForelder + " som døde " + formatertDoedsdato + " ikke døde som følge av yrkesskade/yrkessykdom. ",
Nynorsk to "".expr(),
English to "".expr(),
)
}
paragraph {
text(
Bokmal to "Barnepensjon gis når du er medlem i folketrygden og den avdøde faren eller moren i de siste fem årene før dødsfallet var medlem i folketrygden eller mottok pensjon fra folketrygden. Ved dødsfall som skyldes yrkesskade eller sykdom gis det barnepensjon etter særbestemmelser om medlemskap.",
Nynorsk to "",
English to "",
)
}
paragraph {
textExpr(
Bokmal to "Du har i søknaden opplyst at dødsfallet var som følge av ".expr() + yrkesskadeEllerYrkessykdom + ". Det er NAV som behandler og gjør vedtak i slike saker. Det er gjort vedtak om at dødsfallet til " + dinForelder + " ikke var som følge av yrkesskade/yrkessykdom. Du fyller ikke vilkårene for [Fritekst: begrunnelse]. Barnepensjonen er derfor avslått.",
Nynorsk to "".expr(),
English to "".expr(),
)
}
paragraph {
text(
Bokmal to "Vedtaket er gjort etter bestemmelsene om barnepensjon i folketrygdloven § 18 <riktig lovanvisning>.",
Nynorsk to "",
English to "",
)
}
}
}
}
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
package no.nav.pensjon.etterlatte

import no.nav.pensjon.brevbaker.api.model.*
import no.nav.pensjon.etterlatte.fixtures.createBarnepensjonAvslagIkkeYrkesskadeDTO
import no.nav.pensjon.etterlatte.fixtures.createBarnepensjonInnvilgelseDTO
import no.nav.pensjon.etterlatte.fixtures.createBarnepensjonRevurderingAdopsjonDTO
import no.nav.pensjon.etterlatte.fixtures.createBarnepensjonRevurderingOmgjoeringAvFarskapDTO
Expand All @@ -9,6 +10,7 @@ import no.nav.pensjon.etterlatte.fixtures.createManueltBrevDTO
import no.nav.pensjon.etterlatte.fixtures.createOMSInnvilgelseDTO
import no.nav.pensjon.etterlatte.maler.*
import no.nav.pensjon.etterlatte.maler.barnepensjon.BarnepensjonInnvilgelseDTO
import no.nav.pensjon.etterlatte.maler.barnepensjon.avslag.BarnepensjonAvslagIkkeYrkesskadeDTO
import no.nav.pensjon.etterlatte.maler.barnepensjon.revurdering.BarnepensjonRevurderingAdopsjonDTO
import no.nav.pensjon.etterlatte.maler.barnepensjon.revurdering.BarnepensjonRevurderingOmgjoeringAvFarskapDTO
import no.nav.pensjon.etterlatte.maler.barnepensjon.revurdering.BarnepensjonRevurderingSoeskenjusteringDTO
Expand Down Expand Up @@ -52,6 +54,7 @@ object Fixtures {
BarnepensjonRevurderingAdopsjonDTO::class -> createBarnepensjonRevurderingAdopsjonDTO() as T
BarnepensjonRevurderingSoeskenjusteringDTO::class -> createBarnepensjonRevurderingSoeskenjusteringDTO() as T
BarnepensjonRevurderingOmgjoeringAvFarskapDTO::class -> createBarnepensjonRevurderingOmgjoeringAvFarskapDTO() as T
BarnepensjonAvslagIkkeYrkesskadeDTO::class -> createBarnepensjonAvslagIkkeYrkesskadeDTO() as T
Unit::class -> Unit as T

else -> throw IllegalArgumentException("Don't know how to construct: ${letterDataType.qualifiedName}")
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
package no.nav.pensjon.etterlatte.fixtures

import no.nav.pensjon.etterlatte.maler.barnepensjon.avslag.BarnepensjonAvslagIkkeYrkesskadeDTO
import java.time.LocalDate
import java.time.Month

fun createBarnepensjonAvslagIkkeYrkesskadeDTO() =
BarnepensjonAvslagIkkeYrkesskadeDTO(
dinForelder = "din mor",
doedsdato = LocalDate.of(2018, Month.JULY, 10),
yrkesskadeEllerYrkessykdom = "yrkesskade",
)
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
package no.nav.pensjon.etterlatte.maler.barnepensjon.avslag

import kotlinx.coroutines.runBlocking
import no.nav.pensjon.brev.PDF_BUILDER_URL
import no.nav.pensjon.brev.TestTags
import no.nav.pensjon.brev.latex.LaTeXCompilerService
import no.nav.pensjon.brev.template.Language
import no.nav.pensjon.brev.template.Letter
import no.nav.pensjon.brev.template.render.PensjonHTMLRenderer
import no.nav.pensjon.brev.template.render.PensjonLatexRenderer
import no.nav.pensjon.brev.writeTestHTML
import no.nav.pensjon.brev.writeTestPDF
import no.nav.pensjon.etterlatte.EtterlatteBrevKode
import no.nav.pensjon.etterlatte.Fixtures
import org.junit.jupiter.api.Tag
import org.junit.jupiter.api.Test

@Tag(TestTags.INTEGRATION_TEST)
class IkkeSomFoelgeAvYrkesskadeYrkessykdomTest {

@Test
fun pdftest() {
Letter(
IkkeSomFoelgeAvYrkesskadeYrkessykdom.template,
Fixtures.create<BarnepensjonAvslagIkkeYrkesskadeDTO>(),
Language.Bokmal,
Fixtures.felles,
).let { PensjonLatexRenderer.render(it) }
.let { runBlocking { LaTeXCompilerService(PDF_BUILDER_URL).producePDF(it, "test").base64PDF } }
.also { writeTestPDF(EtterlatteBrevKode.BARNEPENSJON_AVSLAG_IKKEYRKESSKADE.name, it) }
}

@Test
fun testHtml() {
Letter(
IkkeSomFoelgeAvYrkesskadeYrkessykdom.template,
Fixtures.create<BarnepensjonAvslagIkkeYrkesskadeDTO>(),
Language.Bokmal,
Fixtures.felles,
).let { PensjonHTMLRenderer.render(it) }
.also { writeTestHTML(EtterlatteBrevKode.BARNEPENSJON_AVSLAG_IKKEYRKESSKADE.name, it) }
}
}