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-2433: Flytte adopsjonslogikken over til etterlatte-kodebasen #188

Merged
merged 4 commits into from
Jul 6, 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
@@ -0,0 +1,60 @@
package no.nav.pensjon.etterlatte.maler

import no.nav.pensjon.brev.template.Language
import no.nav.pensjon.brev.template.LanguageSupport
import no.nav.pensjon.brev.template.dsl.OutlineOnlyScope
import no.nav.pensjon.brev.template.dsl.expression.equalTo
import no.nav.pensjon.brev.template.dsl.textExpr
import no.nav.pensjon.etterlatte.maler.ManueltBrevDTOSelectors.ElementSelectors.children
import no.nav.pensjon.etterlatte.maler.ManueltBrevDTOSelectors.ElementSelectors.type
import no.nav.pensjon.etterlatte.maler.ManueltBrevDTOSelectors.InnerElementSelectors.children
import no.nav.pensjon.etterlatte.maler.ManueltBrevDTOSelectors.InnerElementSelectors.text
import no.nav.pensjon.etterlatte.maler.ManueltBrevDTOSelectors.innhold

fun <T : Language> OutlineOnlyScope<LanguageSupport.Single<T>, ManueltBrevDTO>.konverterElementerTilBrevbakerformat(
spraak: T,
) {
forEach(innhold) { element ->
showIf(element.type.equalTo(ManueltBrevDTO.ElementType.HEADING_TWO)) {
forEach(element.children) { inner ->
title1 {
ifNotNull(inner.text) {
textExpr(spraak to it)
}
}
}
}.orShowIf(element.type.equalTo(ManueltBrevDTO.ElementType.HEADING_THREE)) {
forEach(element.children) { inner ->
title2 {
ifNotNull(inner.text) {
textExpr(spraak to it)
}
}
}
}.orShowIf(element.type.equalTo(ManueltBrevDTO.ElementType.PARAGRAPH)) {
paragraph {
forEach(element.children) { inner ->
ifNotNull(inner.text) {
textExpr(spraak to it)
}
}
}
}.orShowIf(element.type.equalTo(ManueltBrevDTO.ElementType.BULLETED_LIST)) {
paragraph {
list {
forEach(element.children) { inner ->
item {
ifNotNull(inner.children) {
forEach(it) { inner2 ->
ifNotNull(inner2.text) { text ->
textExpr(spraak to text)
}
}
}
}
}
}
}
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -34,18 +34,6 @@ data class ManueltBrevDTO(
}
}

data class OMSInnvilgelseDTO(
val utbetalingsinfo: Utbetalingsinfo,
val avkortingsinfo: Avkortingsinfo,
val avdoed: Avdoed
)

data class BarnepensjonInnvilgelseDTO(
val utbetalingsinfo: Utbetalingsinfo,
val avkortingsinfo: Avkortingsinfo? = null,
val avdoed: Avdoed
)

data class Avkortingsinfo(
val grunnbeloep: Kroner,
val inntekt: Kroner,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,19 +8,27 @@ 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.Avdoed
import no.nav.pensjon.etterlatte.maler.AvdoedSelectors.doedsdato
import no.nav.pensjon.etterlatte.maler.AvdoedSelectors.navn
import no.nav.pensjon.etterlatte.maler.BarnepensjonInnvilgelseDTO
import no.nav.pensjon.etterlatte.maler.BarnepensjonInnvilgelseDTOSelectors.avdoed
import no.nav.pensjon.etterlatte.maler.BarnepensjonInnvilgelseDTOSelectors.utbetalingsinfo
import no.nav.pensjon.etterlatte.maler.Avkortingsinfo
import no.nav.pensjon.etterlatte.maler.Utbetalingsinfo
import no.nav.pensjon.etterlatte.maler.UtbetalingsinfoSelectors.antallBarn
import no.nav.pensjon.etterlatte.maler.UtbetalingsinfoSelectors.beloep
import no.nav.pensjon.etterlatte.maler.UtbetalingsinfoSelectors.beregningsperioder
import no.nav.pensjon.etterlatte.maler.UtbetalingsinfoSelectors.soeskenjustering
import no.nav.pensjon.etterlatte.maler.UtbetalingsinfoSelectors.virkningsdato
import no.nav.pensjon.etterlatte.maler.barnepensjon.BarnepensjonInnvilgelseDTOSelectors.avdoed
import no.nav.pensjon.etterlatte.maler.barnepensjon.BarnepensjonInnvilgelseDTOSelectors.utbetalingsinfo
import no.nav.pensjon.etterlatte.maler.fraser.barnepensjon.Barnepensjon
import no.nav.pensjon.etterlatte.maler.fraser.common.Vedtak

data class BarnepensjonInnvilgelseDTO(
val utbetalingsinfo: Utbetalingsinfo,
val avkortingsinfo: Avkortingsinfo? = null,
val avdoed: Avdoed
)

Comment on lines +26 to +31
Copy link
Contributor

Choose a reason for hiding this comment

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

Vet ikke om jeg er helt fan av å dra DTOer inn i Brevmalen 🤔

Men samtidig synes jeg det fort blir mye rot med alt i en fil (EtterlatteBrev.kt)... Kanskje heller opprtte nye filer for DTOene og la det som er felles forbli i EtterlatteBrev? Bare en tanke

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Skal røske litt meir i det her når eg tar neste runde på omgjøring av farskap snart, så ser på det da. Trur eg liker tanken på eiga fil per DTO 🤔

@TemplateModelHelpers
object BarnepensjonInnvilgelse : EtterlatteTemplate<BarnepensjonInnvilgelseDTO> {
override val kode: EtterlatteBrevKode = EtterlatteBrevKode.BARNEPENSJON_INNVILGELSE
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,28 +8,17 @@ 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.Navn
import no.nav.pensjon.etterlatte.maler.barnepensjon.revurdering.BarnepensjonRevurderingAdopsjonDTOSelectors.adoptertAv1
import no.nav.pensjon.etterlatte.maler.barnepensjon.revurdering.BarnepensjonRevurderingAdopsjonDTOSelectors.adoptertAv2
import no.nav.pensjon.etterlatte.maler.barnepensjon.revurdering.BarnepensjonRevurderingAdopsjonDTOSelectors.virkningsdato
import no.nav.pensjon.etterlatte.maler.fraser.barnepensjon.Adopsjon
import no.nav.pensjon.etterlatte.maler.ManueltBrevDTO
import no.nav.pensjon.etterlatte.maler.fraser.barnepensjon.Barnepensjon
import no.nav.pensjon.etterlatte.maler.fraser.barnepensjon.Lover
import java.time.LocalDate

data class BarnepensjonRevurderingAdopsjonDTO(
val virkningsdato: LocalDate,
val adoptertAv1: Navn,
val adoptertAv2: Navn? = null,
)
import no.nav.pensjon.etterlatte.maler.konverterElementerTilBrevbakerformat

@TemplateModelHelpers
object AdopsjonRevurdering : EtterlatteTemplate<BarnepensjonRevurderingAdopsjonDTO> {
object AdopsjonRevurdering : EtterlatteTemplate<ManueltBrevDTO> {
override val kode: EtterlatteBrevKode = EtterlatteBrevKode.BARNEPENSJON_REVURDERING_ADOPSJON

override val template = createTemplate(
name = kode.name,
letterDataType = BarnepensjonRevurderingAdopsjonDTO::class,
letterDataType = ManueltBrevDTO::class,
languages = languages(Language.Bokmal),
letterMetadata = LetterMetadata(
displayTitle = "Vedtak - opphør på grunn av adopsjon",
Expand All @@ -44,15 +33,8 @@ object AdopsjonRevurdering : EtterlatteTemplate<BarnepensjonRevurderingAdopsjonD
)
}
outline {
includePhrase(
Adopsjon.BegrunnelseForVedtaket(
virkningsdato = virkningsdato,
adoptertAv1 = adoptertAv1,
adoptertAv2 = adoptertAv2,
),
)
konverterElementerTilBrevbakerformat(Language.Bokmal)

includePhrase(Lover.Folketrygdloven18_7og22_12)
includePhrase(Barnepensjon.DuHarRettTilAaKlage)
includePhrase(Barnepensjon.DuHarRettTilInnsyn)
includePhrase(Barnepensjon.HarDuSpoersmaal)
Expand Down

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -289,7 +289,7 @@ object Barnepensjon {
paragraph {
text(
Language.Bokmal to "Hvis du mener vedtaket er feil, kan du klage innen seks uker fra den datoen " +
"du mottok vedtaket. Klagen skal være skriftlig. Du finner skjema og informasjon på ${Constants.KLAGE_URL}."
"du mottok vedtaket. Du kan lese mer om hvordan du klager i vedlegget «Informasjon om klage og anke»"
)
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,20 +8,26 @@ 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.Avdoed
import no.nav.pensjon.etterlatte.maler.AvdoedSelectors.doedsdato
import no.nav.pensjon.etterlatte.maler.AvdoedSelectors.navn
import no.nav.pensjon.etterlatte.maler.Avkortingsinfo
import no.nav.pensjon.etterlatte.maler.AvkortingsinfoSelectors.beregningsperioder
import no.nav.pensjon.etterlatte.maler.AvkortingsinfoSelectors.grunnbeloep
import no.nav.pensjon.etterlatte.maler.AvkortingsinfoSelectors.inntekt
import no.nav.pensjon.etterlatte.maler.AvkortingsinfoSelectors.virkningsdato
import no.nav.pensjon.etterlatte.maler.OMSInnvilgelseDTO
import no.nav.pensjon.etterlatte.maler.OMSInnvilgelseDTOSelectors.avdoed
import no.nav.pensjon.etterlatte.maler.OMSInnvilgelseDTOSelectors.avkortingsinfo
import no.nav.pensjon.etterlatte.maler.OMSInnvilgelseDTOSelectors.utbetalingsinfo
import no.nav.pensjon.etterlatte.maler.UtbetalingsinfoSelectors.virkningsdato
import no.nav.pensjon.etterlatte.maler.Utbetalingsinfo
import no.nav.pensjon.etterlatte.maler.fraser.OMSInnvilgelse
import no.nav.pensjon.etterlatte.maler.fraser.common.OMSFelles
import no.nav.pensjon.etterlatte.maler.fraser.common.Vedtak
import no.nav.pensjon.etterlatte.maler.omstillingsstoenad.OMSInnvilgelseDTOSelectors.avdoed
import no.nav.pensjon.etterlatte.maler.omstillingsstoenad.OMSInnvilgelseDTOSelectors.avkortingsinfo

data class OMSInnvilgelseDTO(
val utbetalingsinfo: Utbetalingsinfo,
val avkortingsinfo: Avkortingsinfo,
val avdoed: Avdoed
)

@TemplateModelHelpers
object OMSInnvilgelseAuto : EtterlatteTemplate<OMSInnvilgelseDTO> {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,22 +2,16 @@ package no.nav.pensjon.etterlatte.maler.omstillingsstoenad

import no.nav.pensjon.brev.template.Language
import no.nav.pensjon.brev.template.dsl.createTemplate
import no.nav.pensjon.brev.template.dsl.expression.equalTo
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.brev.template.dsl.textExpr
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.ManueltBrevDTO
import no.nav.pensjon.etterlatte.maler.ManueltBrevDTOSelectors.ElementSelectors.children
import no.nav.pensjon.etterlatte.maler.ManueltBrevDTOSelectors.ElementSelectors.type
import no.nav.pensjon.etterlatte.maler.ManueltBrevDTOSelectors.InnerElementSelectors.children
import no.nav.pensjon.etterlatte.maler.ManueltBrevDTOSelectors.InnerElementSelectors.text
import no.nav.pensjon.etterlatte.maler.ManueltBrevDTOSelectors.innhold
import no.nav.pensjon.etterlatte.maler.fraser.common.OMSFelles
import no.nav.pensjon.etterlatte.maler.fraser.common.Vedtak
import no.nav.pensjon.etterlatte.maler.konverterElementerTilBrevbakerformat

@TemplateModelHelpers
object OMSInnvilgelseManuell : EtterlatteTemplate<ManueltBrevDTO> {
Expand All @@ -32,7 +26,7 @@ object OMSInnvilgelseManuell : EtterlatteTemplate<ManueltBrevDTO> {
isSensitiv = true,
distribusjonstype = LetterMetadata.Distribusjonstype.VEDTAK,
brevtype = LetterMetadata.Brevtype.VEDTAKSBREV,
)
),
) {
title {
text(
Expand All @@ -43,55 +37,12 @@ object OMSInnvilgelseManuell : EtterlatteTemplate<ManueltBrevDTO> {
outline {
includePhrase(Vedtak.Overskrift)

forEach(innhold) { element ->
showIf(element.type.equalTo(ManueltBrevDTO.ElementType.HEADING_TWO)) {
forEach(element.children) { inner ->
title1 {
ifNotNull(inner.text) {
textExpr(Language.Bokmal to it)
}
}
}
}.orShowIf(element.type.equalTo(ManueltBrevDTO.ElementType.HEADING_THREE)) {
forEach(element.children) { inner ->
title2 {
ifNotNull(inner.text) {
textExpr(Language.Bokmal to it)
}
}
}
}.orShowIf(element.type.equalTo(ManueltBrevDTO.ElementType.PARAGRAPH)) {
paragraph {
forEach(element.children) { inner ->
ifNotNull(inner.text) {
textExpr(Language.Bokmal to it)
}
}
}
}.orShowIf(element.type.equalTo(ManueltBrevDTO.ElementType.BULLETED_LIST)) {
paragraph {
list {
forEach(element.children) { inner ->
item {
ifNotNull(inner.children) {
forEach(it) { inner2 ->
ifNotNull(inner2.text) { text ->
textExpr(Language.Bokmal to text)
}
}
}
}
}
}
}
}
}
konverterElementerTilBrevbakerformat(Language.Bokmal)

includePhrase(OMSFelles.MeldFraOmEndringer)
includePhrase(OMSFelles.DuHarRettTilAaKlage)
includePhrase(OMSFelles.DuHarRettTilInnsyn)
includePhrase(OMSFelles.HarDuSpoersmaal)
}

}
}
}
Loading