From 11b92abfb5df3533f40b1d7ea2baa3678d204c01 Mon Sep 17 00:00:00 2001 From: ErlendStokkeMonstadKS <159019936+ErlendStokkeMonstadKS@users.noreply.github.com> Date: Fri, 5 Apr 2024 11:49:00 +0200 Subject: [PATCH] =?UTF-8?q?La=20til=20st=C3=B8tte=20til=20=C3=A5=20hente?= =?UTF-8?q?=20ut=20konto=20informasjon=20basert=20p=C3=A5=20kontoId=20(#55?= =?UTF-8?q?8)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * La til støtte til å hente ut konto informasjon basert på kontoId * La til organisasjonsnummer til getKonto kall * Fikser feil i variabel navn * Fikser feil med orgNummer felt hvor den ikke skulle være NonNull --- .../java/no/ks/fiks/io/client/FiksIOKlient.java | 8 ++++++++ .../no/ks/fiks/io/client/FiksIOKlientImpl.java | 5 +++++ .../no/ks/fiks/io/client/KatalogHandler.java | 11 +++++++++++ .../java/no/ks/fiks/io/client/model/Konto.java | 16 ++++++++++------ 4 files changed, 34 insertions(+), 6 deletions(-) diff --git a/src/main/java/no/ks/fiks/io/client/FiksIOKlient.java b/src/main/java/no/ks/fiks/io/client/FiksIOKlient.java index f278b982..aa4fef94 100644 --- a/src/main/java/no/ks/fiks/io/client/FiksIOKlient.java +++ b/src/main/java/no/ks/fiks/io/client/FiksIOKlient.java @@ -27,6 +27,14 @@ public interface FiksIOKlient extends Closeable { */ Optional lookup(LookupRequest request); + /** + * Brukes til å finne konto basert på konto id + * + * @param kontoId for kontooppslag {@link KontoId} + * @return Optional som enten er tom eller inneholder et {@link Konto} objekt + */ + Optional getKonto(KontoId kontoId); + /** * Lager Asic-E pakke, krypterer den og sender den via Fiks-IO * diff --git a/src/main/java/no/ks/fiks/io/client/FiksIOKlientImpl.java b/src/main/java/no/ks/fiks/io/client/FiksIOKlientImpl.java index d7ae1873..675353ad 100644 --- a/src/main/java/no/ks/fiks/io/client/FiksIOKlientImpl.java +++ b/src/main/java/no/ks/fiks/io/client/FiksIOKlientImpl.java @@ -42,6 +42,11 @@ public Optional lookup(@NonNull LookupRequest request) { return katalogHandler.lookup(request); } + @Override + public Optional getKonto(@NonNull KontoId kontoId) { + return katalogHandler.getKonto(kontoId); + } + @Override public SendtMelding send(@NonNull MeldingRequest request, @NonNull List payload) { return fiksIOHandler.send(request, payload); diff --git a/src/main/java/no/ks/fiks/io/client/KatalogHandler.java b/src/main/java/no/ks/fiks/io/client/KatalogHandler.java index 7e13a81b..f32d71ab 100644 --- a/src/main/java/no/ks/fiks/io/client/KatalogHandler.java +++ b/src/main/java/no/ks/fiks/io/client/KatalogHandler.java @@ -43,6 +43,17 @@ public Optional lookup(@NonNull LookupRequest request) { } } + public Optional getKonto(@NonNull KontoId kontoId) { + try { + return Optional.ofNullable(katalogApi.getKonto(kontoId.getUuid())).map(Konto::fromKatalogModel); + } catch (FeignException e) { + if (e.status() == 404) + return Optional.empty(); + else + throw e; + } + } + X509Certificate getPublicKey(@NonNull KontoId mottakerKontoId) { try { if (cf == null) diff --git a/src/main/java/no/ks/fiks/io/client/model/Konto.java b/src/main/java/no/ks/fiks/io/client/model/Konto.java index af2c27a6..824f729c 100644 --- a/src/main/java/no/ks/fiks/io/client/model/Konto.java +++ b/src/main/java/no/ks/fiks/io/client/model/Konto.java @@ -8,12 +8,14 @@ @Builder @Value public class Konto { - @NonNull private KontoId kontoId; - @NonNull private String kontoNavn; - @NonNull private FiksOrgId fiksOrgId; - @NonNull private String fiksOrgNavn; - private boolean isGyldigAvsender; - private boolean isGyldigMottaker; + @NonNull KontoId kontoId; + @NonNull String kontoNavn; + @NonNull FiksOrgId fiksOrgId; + @NonNull String fiksOrgNavn; + String orgNummer; + String kommuneNummer; + boolean isGyldigAvsender; + boolean isGyldigMottaker; public static Konto fromKatalogModel(@NonNull KatalogKonto konto) { return Konto.builder() @@ -21,6 +23,8 @@ public static Konto fromKatalogModel(@NonNull KatalogKonto konto) { .kontoNavn(konto.getKontoNavn()) .fiksOrgId(new FiksOrgId(konto.getFiksOrgId())) .fiksOrgNavn(konto.getFiksOrgNavn()) + .orgNummer(konto.getOrganisasjonsnummer()) + .kommuneNummer(konto.getKommunenummer()) .isGyldigAvsender(konto.getStatus().getGyldigAvsender()) .isGyldigMottaker(konto.getStatus().getGyldigMottaker()) .build();