From 6a34b86694e29218d1ba293fcfb764d3f63c2296 Mon Sep 17 00:00:00 2001 From: Uy Nguyen <110383605+UyQuangNguyen@users.noreply.github.com> Date: Sun, 1 Oct 2023 21:26:47 +0200 Subject: [PATCH] =?UTF-8?q?Vi=20=C3=B8nsker=20stor=20forbokstav=20i=20alle?= =?UTF-8?q?=20navn,=20vi=20manglet=20stor=20bokstav=20p=C3=A5=20navn=20ett?= =?UTF-8?q?er=20bindestrek=20(#4031)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Favrokort: https://favro.com/organization/98c34fb974ce445eac854de0/1844bbac3b6605eacc8f5543?card=NAV-15881 Vi ønsker stor forbokstav i alle navn når vi sender ut vedtaksbrev (opphør ved dødsfall) Før `HENSE-RAVNEN HOPP` -> `Hense-ravnen Hopp` Etter `HENSE-RAVNEN HOPP` -> `Hense-Ravnen Hopp` --------- Signed-off-by: Uy Quang Nguyen Co-authored-by: Kristine Steine --- src/main/kotlin/no/nav/familie/ba/sak/common/Utils.kt | 6 ++++++ .../kotlin/no/nav/familie/ba/sak/kjerne/brev/BrevService.kt | 4 ++-- .../kotlin/no/nav/familie/ba/sak/common/UtilsTest.kt | 5 +++++ 3 files changed, 13 insertions(+), 2 deletions(-) diff --git a/src/main/kotlin/no/nav/familie/ba/sak/common/Utils.kt b/src/main/kotlin/no/nav/familie/ba/sak/common/Utils.kt index 5bca96522e9..9374bcb47c3 100644 --- a/src/main/kotlin/no/nav/familie/ba/sak/common/Utils.kt +++ b/src/main/kotlin/no/nav/familie/ba/sak/common/Utils.kt @@ -17,6 +17,7 @@ import java.util.Properties val nbLocale = Locale("nb", "Norway") val secureLogger = LoggerFactory.getLogger("secureLogger") + object Utils { fun slåSammen(values: List): String = Regex("(.*),").replace(values.joinToString(", "), "$1 og") @@ -49,6 +50,11 @@ object Utils { fun String.storForbokstav() = this.lowercase().replaceFirstChar { it.uppercase() } fun String.storForbokstavIHvertOrd() = this.split(" ").joinToString(" ") { it.storForbokstav() }.trimEnd() + fun String.storForbokstavIAlleNavn() = this.split(" ") + .joinToString(" ") { navn -> + navn.split("-").joinToString("-") { it.storForbokstav() } + }.trimEnd() + fun Any?.nullableTilString() = this?.toString() ?: "" inline fun > konverterEnumsTilString(liste: List) = liste.joinToString(separator = ";") diff --git a/src/main/kotlin/no/nav/familie/ba/sak/kjerne/brev/BrevService.kt b/src/main/kotlin/no/nav/familie/ba/sak/kjerne/brev/BrevService.kt index be41ed902c8..28badff933b 100644 --- a/src/main/kotlin/no/nav/familie/ba/sak/kjerne/brev/BrevService.kt +++ b/src/main/kotlin/no/nav/familie/ba/sak/kjerne/brev/BrevService.kt @@ -3,7 +3,7 @@ package no.nav.familie.ba.sak.kjerne.brev import no.nav.familie.ba.sak.common.Feil import no.nav.familie.ba.sak.common.FunksjonellFeil import no.nav.familie.ba.sak.common.Utils -import no.nav.familie.ba.sak.common.Utils.storForbokstavIHvertOrd +import no.nav.familie.ba.sak.common.Utils.storForbokstavIAlleNavn import no.nav.familie.ba.sak.common.tilDagMånedÅr import no.nav.familie.ba.sak.config.FeatureToggleConfig.Companion.NY_GENERERING_AV_BREVOBJEKTER import no.nav.familie.ba.sak.integrasjoner.familieintegrasjoner.IntegrasjonClient @@ -237,7 +237,7 @@ class BrevService( fodselsnummer = data.grunnlag.søker.aktør.aktivFødselsnummer(), // Selv om det er feil å anta at alle navn er på dette formatet er det ønskelig å skrive // det slik, da uppercase kan oppleves som skrikende i et brev som skal være skånsomt - navnAvdode = data.grunnlag.søker.navn.storForbokstavIHvertOrd(), + navnAvdode = data.grunnlag.søker.navn.storForbokstavIAlleNavn(), virkningstidspunkt = hentVirkningstidspunkt( opphørsperioder = vedtaksperiodeService.hentOpphørsperioder(vedtak.behandling), behandlingId = vedtak.behandling.id, diff --git a/src/test/enhetstester/kotlin/no/nav/familie/ba/sak/common/UtilsTest.kt b/src/test/enhetstester/kotlin/no/nav/familie/ba/sak/common/UtilsTest.kt index 99a42e0cb85..26ea80f18e1 100644 --- a/src/test/enhetstester/kotlin/no/nav/familie/ba/sak/common/UtilsTest.kt +++ b/src/test/enhetstester/kotlin/no/nav/familie/ba/sak/common/UtilsTest.kt @@ -2,6 +2,7 @@ package no.nav.familie.ba.sak.common import no.nav.familie.ba.sak.common.Utils.avrundetHeltallAvProsent import no.nav.familie.ba.sak.common.Utils.hentPropertyFraMaven +import no.nav.familie.ba.sak.common.Utils.storForbokstavIAlleNavn import no.nav.familie.ba.sak.common.Utils.storForbokstavIHvertOrd import no.nav.familie.ba.sak.kjerne.grunnlag.personopplysninger.bostedsadresse.GrVegadresse import no.nav.familie.ba.sak.kjerne.personident.Identkonverterer.er11Siffer @@ -27,6 +28,10 @@ internal class UtilsTest { fun `Navn i uppercase blir formatert korrekt`() = assertEquals("Store Bokstaver Her", "STORE BOKSTAVER HER ".storForbokstavIHvertOrd()) + @Test + fun `Navn i uppercase med mellomrom og bindestrek blir formatert korrekt`() = + assertEquals("Hense-Ravnen Hopp", "HENSE-RAVNEN HOPP".storForbokstavIAlleNavn()) + @Test fun `Nullable verdier blir tom string`() { val adresse = GrVegadresse(