diff --git a/pensjon-brevbaker/src/main/kotlin/no/nav/pensjon/etterlatte/EtterlatteBrevRequest.kt b/pensjon-brevbaker/src/main/kotlin/no/nav/pensjon/etterlatte/EtterlatteBrevRequest.kt index d7a0bed63..2e408228d 100644 --- a/pensjon-brevbaker/src/main/kotlin/no/nav/pensjon/etterlatte/EtterlatteBrevRequest.kt +++ b/pensjon-brevbaker/src/main/kotlin/no/nav/pensjon/etterlatte/EtterlatteBrevRequest.kt @@ -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, diff --git a/pensjon-brevbaker/src/main/kotlin/no/nav/pensjon/etterlatte/TemplateResource.kt b/pensjon-brevbaker/src/main/kotlin/no/nav/pensjon/etterlatte/TemplateResource.kt index 3d28c71b0..4703d40d0 100644 --- a/pensjon-brevbaker/src/main/kotlin/no/nav/pensjon/etterlatte/TemplateResource.kt +++ b/pensjon-brevbaker/src/main/kotlin/no/nav/pensjon/etterlatte/TemplateResource.kt @@ -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 @@ -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> = setOf( AvslagFoerstegangsbehandling, + IkkeSomFoelgeAvYrkesskadeYrkessykdom, BarnepensjonInnvilgelse, OMSInnvilgelseAuto, OMSInnvilgelseManuell, @@ -30,7 +31,7 @@ val prodAutobrevTemplates: Set> = OmgjoeringAvFarskapRevurdering, OpphoerRevurdering, SoeskenjusteringRevurdering, - UtAvFengselsopphold + UtAvFengselsopphold, ) val prodRedigerbareTemplates: Set> = emptySet() @@ -56,4 +57,4 @@ class TemplateResource( fun getRedigerbartBrev(kode: EtterlatteBrevKode): LetterTemplate<*, *>? = redigerbareBrevMap[kode]?.template -} \ No newline at end of file +} diff --git a/pensjon-brevbaker/src/main/kotlin/no/nav/pensjon/etterlatte/maler/barnepensjon/avslag/AvslagFoerstegangsbehandling.kt b/pensjon-brevbaker/src/main/kotlin/no/nav/pensjon/etterlatte/maler/barnepensjon/avslag/AvslagFoerstegangsbehandling.kt index c654cdc41..517f77904 100644 --- a/pensjon-brevbaker/src/main/kotlin/no/nav/pensjon/etterlatte/maler/barnepensjon/avslag/AvslagFoerstegangsbehandling.kt +++ b/pensjon-brevbaker/src/main/kotlin/no/nav/pensjon/etterlatte/maler/barnepensjon/avslag/AvslagFoerstegangsbehandling.kt @@ -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 { +object AvslagFoerstegangsbehandling : EtterlatteTemplate, Hovedmal { override val kode = EtterlatteBrevKode.BARNEPENSJON_AVSLAG override val template = createTemplate( @@ -34,7 +36,7 @@ object AvslagFoerstegangsbehandling : EtterlatteTemplate { text( Bokmal to "Vi har avslått søknaden din om barnepensjon", Nynorsk to "", - English to "" + English to "", ) } outline { @@ -44,5 +46,6 @@ object AvslagFoerstegangsbehandling : EtterlatteTemplate { includePhrase(Barnepensjon.DuHarRettTilInnsyn) includePhrase(Barnepensjon.HarDuSpoersmaal) } + includeAttachment(klageOgAnke, innhold) } } diff --git a/pensjon-brevbaker/src/main/kotlin/no/nav/pensjon/etterlatte/maler/barnepensjon/avslag/IkkeSomFoelgeAvYrkesskadeYrkessykdom.kt b/pensjon-brevbaker/src/main/kotlin/no/nav/pensjon/etterlatte/maler/barnepensjon/avslag/IkkeSomFoelgeAvYrkesskadeYrkessykdom.kt new file mode 100644 index 000000000..08b5cdd2e --- /dev/null +++ b/pensjon-brevbaker/src/main/kotlin/no/nav/pensjon/etterlatte/maler/barnepensjon/avslag/IkkeSomFoelgeAvYrkesskadeYrkessykdom.kt @@ -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, 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 "", + Nynorsk to "", + English to "", + ) + } + outline { + includePhrase( + IkkeSomFoelgeAvYrkesskadeYrkessykdomFraser.BegrunnelseForVedtaket( + dinForelder, + doedsdato, + yrkesskadeEllerYrkessykdom, + ), + ) + } + } +} diff --git a/pensjon-brevbaker/src/main/kotlin/no/nav/pensjon/etterlatte/maler/barnepensjon/revurdering/Fengselsopphold.kt b/pensjon-brevbaker/src/main/kotlin/no/nav/pensjon/etterlatte/maler/barnepensjon/revurdering/Fengselsopphold.kt index 527b61b73..8f0e99fb0 100644 --- a/pensjon-brevbaker/src/main/kotlin/no/nav/pensjon/etterlatte/maler/barnepensjon/revurdering/Fengselsopphold.kt +++ b/pensjon-brevbaker/src/main/kotlin/no/nav/pensjon/etterlatte/maler/barnepensjon/revurdering/Fengselsopphold.kt @@ -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 @@ -29,7 +31,7 @@ object Fengselsopphold : EtterlatteTemplate, 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, @@ -39,9 +41,9 @@ object Fengselsopphold : EtterlatteTemplate, 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 { diff --git a/pensjon-brevbaker/src/main/kotlin/no/nav/pensjon/etterlatte/maler/barnepensjon/revurdering/HarStanset.kt b/pensjon-brevbaker/src/main/kotlin/no/nav/pensjon/etterlatte/maler/barnepensjon/revurdering/HarStanset.kt index 3c5d5fc12..6ec304aee 100644 --- a/pensjon-brevbaker/src/main/kotlin/no/nav/pensjon/etterlatte/maler/barnepensjon/revurdering/HarStanset.kt +++ b/pensjon-brevbaker/src/main/kotlin/no/nav/pensjon/etterlatte/maler/barnepensjon/revurdering/HarStanset.kt @@ -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 @@ -30,7 +32,7 @@ object HarStanset : EtterlatteTemplate, 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, @@ -40,9 +42,9 @@ object HarStanset : EtterlatteTemplate, 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 { diff --git a/pensjon-brevbaker/src/main/kotlin/no/nav/pensjon/etterlatte/maler/fraser/barnepensjon/avslag/IkkeSomFoelgeAvYrkesskadeYrkessykdomFraser.kt b/pensjon-brevbaker/src/main/kotlin/no/nav/pensjon/etterlatte/maler/fraser/barnepensjon/avslag/IkkeSomFoelgeAvYrkesskadeYrkessykdomFraser.kt new file mode 100644 index 000000000..8c9fbed9e --- /dev/null +++ b/pensjon-brevbaker/src/main/kotlin/no/nav/pensjon/etterlatte/maler/fraser/barnepensjon/avslag/IkkeSomFoelgeAvYrkesskadeYrkessykdomFraser.kt @@ -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, + val doedsdato: Expression, + val yrkesskadeEllerYrkessykdom: Expression, + ) : OutlinePhrase() { + override fun OutlineOnlyScope.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 .", + Nynorsk to "", + English to "", + ) + } + } + } +} diff --git a/pensjon-brevbaker/src/test/kotlin/no/nav/pensjon/etterlatte/Fixtures.kt b/pensjon-brevbaker/src/test/kotlin/no/nav/pensjon/etterlatte/Fixtures.kt index 97800bc0c..1c9c17041 100644 --- a/pensjon-brevbaker/src/test/kotlin/no/nav/pensjon/etterlatte/Fixtures.kt +++ b/pensjon-brevbaker/src/test/kotlin/no/nav/pensjon/etterlatte/Fixtures.kt @@ -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 @@ -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 @@ -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}") diff --git a/pensjon-brevbaker/src/test/kotlin/no/nav/pensjon/etterlatte/fixtures/BarnepensjonAvslagIkkeYrkesskadeDTO.kt b/pensjon-brevbaker/src/test/kotlin/no/nav/pensjon/etterlatte/fixtures/BarnepensjonAvslagIkkeYrkesskadeDTO.kt new file mode 100644 index 000000000..b0d58fb45 --- /dev/null +++ b/pensjon-brevbaker/src/test/kotlin/no/nav/pensjon/etterlatte/fixtures/BarnepensjonAvslagIkkeYrkesskadeDTO.kt @@ -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", + ) diff --git a/pensjon-brevbaker/src/test/kotlin/no/nav/pensjon/etterlatte/maler/barnepensjon/avslag/IkkeSomFoelgeAvYrkesskadeYrkessykdomTest.kt b/pensjon-brevbaker/src/test/kotlin/no/nav/pensjon/etterlatte/maler/barnepensjon/avslag/IkkeSomFoelgeAvYrkesskadeYrkessykdomTest.kt new file mode 100644 index 000000000..32badd4b0 --- /dev/null +++ b/pensjon-brevbaker/src/test/kotlin/no/nav/pensjon/etterlatte/maler/barnepensjon/avslag/IkkeSomFoelgeAvYrkesskadeYrkessykdomTest.kt @@ -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(), + 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(), + Language.Bokmal, + Fixtures.felles, + ).let { PensjonHTMLRenderer.render(it) } + .also { writeTestHTML(EtterlatteBrevKode.BARNEPENSJON_AVSLAG_IKKEYRKESSKADE.name, it) } + } +}