Skip to content

Commit

Permalink
Ikke legg til postnummer i utenlandsk adresse (#500)
Browse files Browse the repository at this point in the history
* Ikke legg til postnummer i utenlandsk adresse

* Ikke legg til postnummer i utenlandsk adresse

* Ikke legg til postnummer i utenlandsk adresse
  • Loading branch information
ugur93 authored Nov 7, 2024
1 parent 5c69029 commit 7cfd456
Show file tree
Hide file tree
Showing 4 changed files with 146 additions and 23 deletions.
4 changes: 2 additions & 2 deletions .nais/feature.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -25,8 +25,8 @@ env:
TOPIC_JOURNALPOST: bidrag.journalpost-feature
TOPIC_OPPGAVE_HENDELSE: oppgavehandtering.oppgavehendelse-q1-v1
TOPIC_JOURNALFOERING: teamdokumenthandtering.aapen-dok-journalfoering-q1
BIDRAG_PERSON_URL: https://bidrag-person-feature.dev.intern.nav.no
PERSON_SCOPE: dev-fss.bidrag.bidrag-person-feature
BIDRAG_PERSON_URL: https://bidrag-person-q1.dev.intern.nav.no
PERSON_SCOPE: dev-fss.bidrag.bidrag-person-q1
BIDRAG_DOKUMENT_URL: https://bidrag-dokument-feature.dev.intern.nav.no/bidrag-dokument
BIDRAG_DOKUMENT_SCOPE: dev-fss.bidrag.bidrag-dokument-feature
BIDRAG_ORGANISASJON_URL: https://bidrag-organisasjon-feature.dev.intern.nav.no
Expand Down
4 changes: 2 additions & 2 deletions .nais/main.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -25,8 +25,8 @@ env:
TOPIC_JOURNALPOST: bidrag.journalpost
TOPIC_OPPGAVE_HENDELSE: oppgavehandtering.oppgavehendelse-v1
TOPIC_JOURNALFOERING: teamdokumenthandtering.aapen-dok-journalfoering
BIDRAG_PERSON_URL: https://bidrag-person.dev.intern.nav.no
PERSON_SCOPE: dev-fss.bidrag.bidrag-person
BIDRAG_PERSON_URL: https://bidrag-person-q2.dev.intern.nav.no
PERSON_SCOPE: dev-fss.bidrag.bidrag-person-q2
BIDRAG_DOKUMENT_URL: https://bidrag-dokument.dev.intern.nav.no/bidrag-dokument
BIDRAG_DOKUMENT_SCOPE: dev-fss.bidrag.bidrag-dokument
BIDRAG_ORGANISASJON_URL: https://bidrag-organisasjon.dev.intern.nav.no
Expand Down
45 changes: 28 additions & 17 deletions src/main/kotlin/no/nav/bidrag/dokument/arkiv/dto/Distribusjon.kt
Original file line number Diff line number Diff line change
Expand Up @@ -31,15 +31,32 @@ data class DokDistDistribuerJournalpostRequest(
if (adresse.land == ALPHA2_NORGE) DokDistAdresseType.NorskPostadresse.verdi else DokDistAdresseType.UtenlandskPostadresse.verdi
return DokDistDistribuerTilAdresse(
adresselinje1 = adresse.adresselinje1,
adresselinje2 = adresse.adresselinje2,
adresselinje2 = opprettAdresselinje2(adresse, dokDistAdresseType),
adresselinje3 = adresse.adresselinje3,
adressetype = dokDistAdresseType,
land = adresse.land!!,
postnummer = adresse.postnummer,
poststed = adresse.poststed,
postnummer = if (dokDistAdresseType == DokDistAdresseType.NorskPostadresse.verdi) adresse.postnummer else null,
poststed = if (dokDistAdresseType == DokDistAdresseType.NorskPostadresse.verdi) adresse.poststed else null,
)
}

private fun opprettAdresselinje2(distribuerTilAdresse: DistribuerTilAdresse, dokDistAdresseType: String): String? {
if (dokDistAdresseType == DokDistAdresseType.NorskPostadresse.verdi) return distribuerTilAdresse.adresselinje2
val postnummerSted = if (!distribuerTilAdresse.postnummer.isNullOrEmpty() && !distribuerTilAdresse.poststed.isNullOrEmpty()) {
"${distribuerTilAdresse.postnummer} ${distribuerTilAdresse.poststed}"
} else if (!distribuerTilAdresse.postnummer.isNullOrEmpty()) {
distribuerTilAdresse.postnummer
} else {
distribuerTilAdresse.poststed
}
if (!distribuerTilAdresse.adresselinje2.isNullOrEmpty() && !postnummerSted.isNullOrEmpty()) {
return "${distribuerTilAdresse.adresselinje2}, $postnummerSted"
} else if (distribuerTilAdresse.adresselinje2.isNullOrEmpty()) {
return postnummerSted
} else {
return distribuerTilAdresse.adresselinje2
}
}
constructor(
journalpostId: Long,
brevkode: String?,
Expand Down Expand Up @@ -83,9 +100,7 @@ data class DokDistDistribuerTilAdresse(
var poststed: String? = null,
)

data class DistribuerJournalpostRequestInternal(
var request: DistribuerJournalpostRequest? = null,
) {
data class DistribuerJournalpostRequestInternal(var request: DistribuerJournalpostRequest? = null) {

constructor(distribuerTilAdresse: DistribuerTilAdresse?) : this(
DistribuerJournalpostRequest(
Expand All @@ -112,12 +127,9 @@ data class DistribuerJournalpostRequestInternal(
}
}

data class DokDistDistribuerJournalpostResponse(
var bestillingsId: String,
) {
fun toDistribuerJournalpostResponse(journalpostId: Long): DistribuerJournalpostResponse {
return DistribuerJournalpostResponse("JOARK-$journalpostId", bestillingsId)
}
data class DokDistDistribuerJournalpostResponse(var bestillingsId: String) {
fun toDistribuerJournalpostResponse(journalpostId: Long): DistribuerJournalpostResponse =
DistribuerJournalpostResponse("JOARK-$journalpostId", bestillingsId)
}

fun validerKanDistribueres(journalpost: Journalpost?) {
Expand All @@ -135,8 +147,9 @@ fun validerKanDistribueres(journalpost: Journalpost?) {
"Journalpost er allerede distribuert",
)
Validate.isTrue(
journalpost?.hasMottakerId() == true || journalpost?.hentAvsenderNavn()
?.isNotEmpty() == true,
journalpost?.hasMottakerId() == true ||
journalpost?.hentAvsenderNavn()
?.isNotEmpty() == true,
"Journalpost må ha satt mottakerId eller mottakerNavn",
)
}
Expand Down Expand Up @@ -349,9 +362,7 @@ class BrevkodeToDistribusjonstypeMapper {
return brevkodemap.getOrDefault(brevkode, DistribusjonsType.VIKTIG)
}

fun getBrevkodeMap(): Map<String, DistribusjonsType> {
return brevkodemap
}
fun getBrevkodeMap(): Map<String, DistribusjonsType> = brevkodemap

init {
initBrevkodemap()
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -71,15 +71,127 @@ void skalMappeTilUtenlandskAdresseHvisLandIkkeErNO() throws IOException {
var jpid = 123123;
var distribuerTilAdresse =
new DistribuerTilAdresse(
"Adresselinje1", "Adresselinje2", "Adresselinje3", "SE", "3000", "Ingen");
"Adresselinje1", "Adresselinje2", "Adresselinje3", "SE", "3000", "Poststed");

var request =
new DokDistDistribuerJournalpostRequest(jpid, null, null, distribuerTilAdresse, null);
var mappedAdresse = request.getAdresse();

assertAll(
() ->
assertThat(mappedAdresse.getAdressetype())
.isEqualTo(DokDistAdresseType.UtenlandskPostadresse.getVerdi()),
() ->
assertThat(mappedAdresse.getAdresselinje1())
.isEqualTo("Adresselinje1"),
() ->
assertThat(mappedAdresse.getAdresselinje2())
.isEqualTo("Adresselinje2, 3000 Poststed"),
() ->
assertThat(mappedAdresse.getPoststed()).isNull(),
() ->
assertThat(mappedAdresse.getPostnummer()).isNull()
);
}

@Test
void skalMappeTilUtenlandskAdresseHvisLandIkkeErNOUtenPostssted() throws IOException {
var jpid = 123123;
var distribuerTilAdresse =
new DistribuerTilAdresse(
"Adresselinje1", "Adresselinje2", "Adresselinje3", "SE", "3000", null);

var request =
new DokDistDistribuerJournalpostRequest(jpid, null, null, distribuerTilAdresse, null);
var mappedAdresse = request.getAdresse();

assertAll(
() ->
assertThat(mappedAdresse.getAdressetype())
.isEqualTo(DokDistAdresseType.UtenlandskPostadresse.getVerdi()),
() ->
assertThat(mappedAdresse.getAdresselinje2())
.isEqualTo("Adresselinje2, 3000"),
() ->
assertThat(mappedAdresse.getPoststed()).isNull(),
() ->
assertThat(mappedAdresse.getPostnummer()).isNull()
);
}

@Test
void skalMappeTilUtenlandskAdresseHvisLandIkkeErNOUtenPostnummer() throws IOException {
var jpid = 123123;
var distribuerTilAdresse =
new DistribuerTilAdresse(
"Adresselinje1", "Adresselinje2", "Adresselinje3", "SE", null, "Poststed");

var request =
new DokDistDistribuerJournalpostRequest(jpid, null, null, distribuerTilAdresse, null);
var mappedAdresse = request.getAdresse();

assertAll(
() ->
assertThat(mappedAdresse.getAdressetype())
.isEqualTo(DokDistAdresseType.UtenlandskPostadresse.getVerdi()));
.isEqualTo(DokDistAdresseType.UtenlandskPostadresse.getVerdi()),
() ->
assertThat(mappedAdresse.getAdresselinje2())
.isEqualTo("Adresselinje2, Poststed"),
() ->
assertThat(mappedAdresse.getPoststed()).isNull(),
() ->
assertThat(mappedAdresse.getPostnummer()).isNull()
);
}

@Test
void skalMappeTilUtenlandskAdresseHvisLandIkkeErNOUtenPostnummerOgPossted() throws IOException {
var jpid = 123123;
var distribuerTilAdresse =
new DistribuerTilAdresse(
"Adresselinje1", "Adresselinje2", "Adresselinje3", "SE", null, null);

var request =
new DokDistDistribuerJournalpostRequest(jpid, null, null, distribuerTilAdresse, null);
var mappedAdresse = request.getAdresse();

assertAll(
() ->
assertThat(mappedAdresse.getAdressetype())
.isEqualTo(DokDistAdresseType.UtenlandskPostadresse.getVerdi()),
() ->
assertThat(mappedAdresse.getAdresselinje2())
.isEqualTo("Adresselinje2"),
() ->
assertThat(mappedAdresse.getPoststed()).isNull(),
() ->
assertThat(mappedAdresse.getPostnummer()).isNull()
);
}

@Test
void skalMappeTilUtenlandskAdresseHvisLandIkkeErNOUtenAdresselinje2() throws IOException {
var jpid = 123123;
var distribuerTilAdresse =
new DistribuerTilAdresse(
"Adresselinje1", null, "Adresselinje3", "SE", "postnummer", "poststed");

var request =
new DokDistDistribuerJournalpostRequest(jpid, null, null, distribuerTilAdresse, null);
var mappedAdresse = request.getAdresse();

assertAll(
() ->
assertThat(mappedAdresse.getAdressetype())
.isEqualTo(DokDistAdresseType.UtenlandskPostadresse.getVerdi()),
() ->
assertThat(mappedAdresse.getAdresselinje2())
.isEqualTo("postnummer poststed"),
() ->
assertThat(mappedAdresse.getPoststed()).isNull(),
() ->
assertThat(mappedAdresse.getPostnummer()).isNull()
);
}

@Test
Expand Down

0 comments on commit 7cfd456

Please sign in to comment.