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

Nytt bekreftelsesbrev til arbeidsgiver tilpasset inntektsmelding gjennom nav.no #538

Merged
merged 4 commits into from
Jan 16, 2025
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,28 @@
package no.nav.sifinnsynapi.konsument.pleiepenger.syktbarn

import no.nav.sifinnsynapi.pdf.PDFGenerator
import no.nav.sifinnsynapi.util.storForbokstav
import org.springframework.stereotype.Service
import java.time.ZoneOffset.UTC
import java.time.ZonedDateTime

@Service
class ArbeidsgiverMeldingNavNoPDFGenerator : PDFGenerator<PleiepengerArbeidsgiverMelding>() {

override val templateNavn: String
get() = "informasjonsbrev-til-arbeidsgiver-nav-no"


override fun PleiepengerArbeidsgiverMelding.tilMap(): Map<String, Any?> = mapOf(
"arbeidsgiver_navn" to arbeidsgivernavn?.storForbokstav(),
"arbeidstaker_navn" to arbeidstakernavn.storForbokstav(),
"periode" to mapOf(
"fom" to DATE_FORMATTER.format(søknadsperiode.fraOgMed),
"tom" to DATE_FORMATTER.format(søknadsperiode.tilOgMed)
),
"tidspunkt" to DATE_TIME_FORMATTER.format(ZonedDateTime.now(UTC))
)

override val bilder: Map<String, String>
get() = mapOf()
}
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,13 @@ package no.nav.sifinnsynapi.konsument.pleiepenger.syktbarn
import no.nav.sifinnsynapi.pdf.PDFGenerator
import no.nav.sifinnsynapi.util.storForbokstav
import org.springframework.stereotype.Service
import java.time.LocalDate
import java.time.ZoneOffset.UTC
import java.time.ZonedDateTime

@Deprecated(
"Etter at ny inntektsmelding gjennom nav.no er aktivert, ønsker vi ikke å bruke denne lenger",
ReplaceWith("ArbeidsgiverMeldingNavNoPDFGenerator")
)
@Service
class ArbeidsgiverMeldingPDFGenerator : PDFGenerator<PleiepengerArbeidsgiverMelding>() {

Expand All @@ -27,14 +30,3 @@ class ArbeidsgiverMeldingPDFGenerator : PDFGenerator<PleiepengerArbeidsgiverMeld
override val bilder: Map<String, String>
get() = mapOf()
}
data class PleiepengerArbeidsgiverMelding(
val arbeidstakernavn: String,
val arbeidsgivernavn: String? = null,
val søknadsperiode: SøknadsPeriode
)

data class SøknadsPeriode(
val fraOgMed: LocalDate,
val tilOgMed: LocalDate
)

Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
package no.nav.sifinnsynapi.konsument.pleiepenger.syktbarn

data class PleiepengerArbeidsgiverMelding(
val arbeidstakernavn: String,
val arbeidsgivernavn: String? = null,
val søknadsperiode: SøknadsPeriode
)
8 changes: 8 additions & 0 deletions src/main/kotlin/no/nav/sifinnsynapi/pdf/SøknadsPeriode.kt
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
package no.nav.sifinnsynapi.konsument.pleiepenger.syktbarn

import java.time.LocalDate

data class SøknadsPeriode(
val fraOgMed: LocalDate,
val tilOgMed: LocalDate
)
23 changes: 18 additions & 5 deletions src/main/kotlin/no/nav/sifinnsynapi/soknad/SøknadService.kt
Original file line number Diff line number Diff line change
Expand Up @@ -8,13 +8,15 @@ import no.nav.sifinnsynapi.common.Søknadstype
import no.nav.sifinnsynapi.dokument.DokumentDTO
import no.nav.sifinnsynapi.dokument.DokumentService
import no.nav.sifinnsynapi.dokument.DokumentService.Companion.brevkoder
import no.nav.sifinnsynapi.konsument.pleiepenger.syktbarn.ArbeidsgiverMeldingNavNoPDFGenerator
import no.nav.sifinnsynapi.konsument.pleiepenger.syktbarn.ArbeidsgiverMeldingPDFGenerator
import no.nav.sifinnsynapi.konsument.pleiepenger.syktbarn.PleiepengerJSONObjectUtils.finnOrganisasjon
import no.nav.sifinnsynapi.konsument.pleiepenger.syktbarn.PleiepengerJSONObjectUtils.tilPleiepengerAreidsgivermelding
import no.nav.sifinnsynapi.oppslag.OppslagsService
import no.nav.sifinnsynapi.util.ServletUtils
import org.json.JSONObject
import org.slf4j.LoggerFactory
import org.springframework.beans.factory.annotation.Value
import org.springframework.http.HttpStatus
import org.springframework.http.ProblemDetail
import org.springframework.stereotype.Service
Expand All @@ -29,7 +31,9 @@ class SøknadService(
private val repo: SøknadRepository,
private val oppslagsService: OppslagsService,
private val dokumentService: DokumentService,
private val arbeidsgiverMeldingPDFGenerator: ArbeidsgiverMeldingPDFGenerator
private val arbeidsgiverMeldingPDFGenerator: ArbeidsgiverMeldingPDFGenerator,
private val arbeidsgiverMeldingNavNoPDFGenerator: ArbeidsgiverMeldingNavNoPDFGenerator,
@Value("\${no.nav.inntektsmelding.ny-im-aktivert}") val erNyImAktivert: Boolean = false
) {

companion object {
Expand Down Expand Up @@ -105,11 +109,20 @@ class SøknadService(
val pleiepengesøknadJson = JSONObject(søknad.søknad)
val funnetOrg: JSONObject = pleiepengesøknadJson.finnOrganisasjon(søknad, organisasjonsnummer)

arbeidsgiverMeldingPDFGenerator.genererPDF(
pleiepengesøknadJson.tilPleiepengerAreidsgivermelding(
funnetOrg
if (erNyImAktivert) {
logger.info("Ny inntektsmelding er aktivert, genererer PDF med nytt template.")
arbeidsgiverMeldingNavNoPDFGenerator.genererPDF(
pleiepengesøknadJson.tilPleiepengerAreidsgivermelding(
funnetOrg
)
)
)
} else {
arbeidsgiverMeldingPDFGenerator.genererPDF(
pleiepengesøknadJson.tilPleiepengerAreidsgivermelding(
funnetOrg
)
)
}
}

else -> throw NotSupportedArbeidsgiverMeldingException(søknad.id.toString(), søknad.søknadstype)
Expand Down
4 changes: 4 additions & 0 deletions src/main/resources/application-dev-gcp.yml
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,10 @@ no.nav:
pleiepenger-sykt-barn:
beskjed:
link: https://sif-innsyn.intern.dev.nav.no/familie/sykdom-i-familien/soknad/innsyn

pleiepenger-sykt-barn-endringsmelding:
beskjed:
link: https://sif-innsyn.intern.dev.nav.no/familie/sykdom-i-familien/soknad/innsyn

inntektsmelding:
ny-im-aktivert: true
3 changes: 3 additions & 0 deletions src/main/resources/application.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,9 @@ no.nav:
tekst: 'Vi har mottatt din ettersendelse til omsorgspenger.'
dagerSynlig: 7

inntektsmelding:
ny-im-aktivert: false

gateways:
k9-selvbetjening-oppslag: # Settes i nais/<cluster>.json
saf-base-url: # Settes i nais/<cluster>.json
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,67 @@
<!DOCTYPE html>
<html lang="NO">

<head>
<meta charset="UTF-8"/>
<title>Bekreftelse til Arbeidsgiver</title>
<meta name="subject" content="Informasjonsbrev til Arbeidsgiver"/>
<meta name="author" content="nav.no"/>
<meta name="description" content="Bekreftelse til Arbeidsgiver {{soknad_mottatt_dag}} {{ soknad_mottatt }}"/>
<bookmarks>
<bookmark name="Informasjon" href="#informasjon"/>
<bookmark name="Instruksjon" href="#instruksjon"/>
</bookmarks>
{{#block 'style-common' }}
{{/block}}
</head>

<body>
<div class="innholdscontainer">
<span id="header"></span>

<section id="informasjon">
<h1>Til {{arbeidsgiver_navn}}</h1>
<p><strong>{{arbeidstaker_navn}}</strong> har søkt om pleiepenger for perioden</p>
<ul>
<li>
<strong>{{periode.fom}} - {{periode.tom}}</strong>
</li>
</ul>

<p>
Hvis vi trenger inntektsmelding for å behandle søknaden, vil du få varsel om dette via Altinn og på
Min side – arbeidsgiver på nav.no. Du kan da logge inn på nav.no for å sende inn en forhåndsutfylt
inntektsmelding.
</p>

<p>
Det er også mulig å sende inntektsmelding fra Altinn og lønns- og personalsystem, men du må da være
observant på at vi får riktig informasjon om første fraværsdag, organisasjonsnummer og eventuelt
arbeidsforholds-id.
</p>

<p>
Som hovedregel trenger vi inntektsmelding hvis dette er første søknad, eller hvis det har vært et
opphold på minst 4 uker. Hvis det har vært et kortere opphold mellom pleiepengeperiodene, der den
ansatte har hatt en varig lønnsendring, trenger vi også ny inntektsmelding.
</p>
</section>

<section id="spørsmål">
<h2>Har dere spørsmål?</h2>
<p>Dere finner mer informasjon på <a href="https://nav.no/arbeidsgiver">nav.no/arbeidsgiver</a></p>

<p>På <a href="https://nav.no/kontakt">nav.no/kontakt</a> kan dere chatte med oss.</p>

<p>Dere kan også ringe oss på telefon 55 55 33 36, hverdager 09.00-15.00.</p>
</section>
</div>

<!-- FOOTER -->
<p id="footer">
<span class="tidspunkt">{{ tidspunkt }}</span>
<span class="sidetall">side <span id="pagenumber"></span> av <span id="pagecount"></span></span>
</p>
</body>

</html>
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
package no.nav.sifinnsynapi.pdf

import no.nav.sifinnsynapi.konsument.pleiepenger.syktbarn.ArbeidsgiverMeldingNavNoPDFGenerator
import no.nav.sifinnsynapi.konsument.pleiepenger.syktbarn.PleiepengerArbeidsgiverMelding
import no.nav.sifinnsynapi.konsument.pleiepenger.syktbarn.SøknadsPeriode
import org.junit.jupiter.api.Test
import java.io.File
import java.time.LocalDate

class ArbeidsgiverMeldingNavNoPDFGeneratorTest {

@Test
fun pdf() {
val pdf = ArbeidsgiverMeldingNavNoPDFGenerator().genererPDF(
melding = PleiepengerArbeidsgiverMelding(
arbeidstakernavn = "Ola Nordmann",
arbeidsgivernavn = "Sjokkerende Elektriker",
søknadsperiode = SøknadsPeriode(
fraOgMed = LocalDate.now().minusWeeks(1),
tilOgMed = LocalDate.now().plusWeeks(1)
)
)
)
File(pdfPath("Bekreftelse til arbeidsgiver")).writeBytes(pdf)
}

private fun pdfPath(filnavn: String) = "${System.getProperty("user.dir")}/generated-pdf-$filnavn.pdf"
}
Loading