diff --git a/alfa-service/pom.xml b/alfa-service/pom.xml index 488cb1b698bcc7e8c5602cfadfc1848a1a3ed93a..f6c6e79f08c362d00ecb9dab42241a54b12cde41 100644 --- a/alfa-service/pom.xml +++ b/alfa-service/pom.xml @@ -24,7 +24,8 @@ unter der Lizenz sind dem Lizenztext zu entnehmen. --> -<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> @@ -139,6 +140,10 @@ <groupId>de.ozgcloud.archive</groupId> <artifactId>archive-manager-interface</artifactId> </dependency> + <dependency> + <groupId>de.ozgcloud.document</groupId> + <artifactId>document-manager-interface</artifactId> + </dependency> <!-- tools --> <dependency> diff --git a/alfa-service/src/main/java/de/ozgcloud/alfa/vorgang/VorgangHead.java b/alfa-service/src/main/java/de/ozgcloud/alfa/vorgang/VorgangHead.java index 5c2199b7a134498f5f27a45df01685355954000c..3becef5bdb5f38c1639bd989e4af14247485e096 100644 --- a/alfa-service/src/main/java/de/ozgcloud/alfa/vorgang/VorgangHead.java +++ b/alfa-service/src/main/java/de/ozgcloud/alfa/vorgang/VorgangHead.java @@ -8,4 +8,5 @@ import lombok.Getter; public class VorgangHead { private ServiceKonto serviceKonto; + private boolean locked; } \ No newline at end of file diff --git a/alfa-service/src/main/java/de/ozgcloud/alfa/vorgang/VorgangWithEingangMapper.java b/alfa-service/src/main/java/de/ozgcloud/alfa/vorgang/VorgangWithEingangMapper.java index 108df0164d3a58cba8183b78382fb527d0548b28..e2eca7becd14a79fa7ffb48442297ebaf9149807 100644 --- a/alfa-service/src/main/java/de/ozgcloud/alfa/vorgang/VorgangWithEingangMapper.java +++ b/alfa-service/src/main/java/de/ozgcloud/alfa/vorgang/VorgangWithEingangMapper.java @@ -34,6 +34,7 @@ import de.ozgcloud.alfa.common.clientattribute.ClientAttributeUtils; import de.ozgcloud.alfa.common.user.UserIdMapper; import de.ozgcloud.vorgang.grpc.clientAttribute.GrpcClientAttribute; import de.ozgcloud.vorgang.grpc.clientAttribute.GrpcClientAttributeValue; +import de.ozgcloud.vorgang.vorgang.GrpcVorgangHead; import de.ozgcloud.vorgang.vorgang.GrpcVorgangWithEingang; @Mapper(uses = { EingangMapper.class, UserIdMapper.class, BaseTypesMapper.class, ServiceKontoMapper.class }) @@ -49,4 +50,6 @@ interface VorgangWithEingangMapper { .orElse(false); } + @Mapping(target = "locked", expression = "java(vorgangHead.hasLock())") + VorgangHead toVorgangHead(GrpcVorgangHead vorgangHead); } \ No newline at end of file diff --git a/alfa-service/src/test/java/de/ozgcloud/alfa/vorgang/GrpcLockTestFactory.java b/alfa-service/src/test/java/de/ozgcloud/alfa/vorgang/GrpcLockTestFactory.java new file mode 100644 index 0000000000000000000000000000000000000000..b8f28d98535105c457b34f1c3d6b8ce4f2e56951 --- /dev/null +++ b/alfa-service/src/test/java/de/ozgcloud/alfa/vorgang/GrpcLockTestFactory.java @@ -0,0 +1,14 @@ +package de.ozgcloud.alfa.vorgang; + +import de.ozgcloud.vorgang.vorgang.GrpcLock; + +class GrpcLockTestFactory { + + public static GrpcLock create() { + return createBuilder().build(); + } + + public static GrpcLock.Builder createBuilder() { + return GrpcLock.newBuilder(); + } +} diff --git a/alfa-service/src/test/java/de/ozgcloud/alfa/vorgang/GrpcVorgangHeadTestFactory.java b/alfa-service/src/test/java/de/ozgcloud/alfa/vorgang/GrpcVorgangHeadTestFactory.java new file mode 100644 index 0000000000000000000000000000000000000000..b11ce836e7bf43f9c4ff85bcc3d5d73a9a8886fa --- /dev/null +++ b/alfa-service/src/test/java/de/ozgcloud/alfa/vorgang/GrpcVorgangHeadTestFactory.java @@ -0,0 +1,14 @@ +package de.ozgcloud.alfa.vorgang; + +import de.ozgcloud.vorgang.vorgang.GrpcVorgangHead; + +class GrpcVorgangHeadTestFactory { + + public static GrpcVorgangHead create() { + return createBuilder().build(); + } + + public static GrpcVorgangHead.Builder createBuilder() { + return GrpcVorgangHead.newBuilder(); + } +} diff --git a/alfa-service/src/test/java/de/ozgcloud/alfa/vorgang/VorgangWithEingangMapperTest.java b/alfa-service/src/test/java/de/ozgcloud/alfa/vorgang/VorgangWithEingangMapperTest.java index 560bc6dd72dd322c83bb5312ad19bc4aac82d57f..13146322850507c3582f5769fe7dc0ab67d3e1aa 100644 --- a/alfa-service/src/test/java/de/ozgcloud/alfa/vorgang/VorgangWithEingangMapperTest.java +++ b/alfa-service/src/test/java/de/ozgcloud/alfa/vorgang/VorgangWithEingangMapperTest.java @@ -144,6 +144,26 @@ class VorgangWithEingangMapperTest { assertThat(vorgang.isHasNewPostfachNachricht()).isEqualTo(value); } + @Test + void shouldMapLockedToFalseIfLockIsNotPresent() { + var grpcVorgang = GrpcVorgangWithEingangTestFactory.createBuilder().setHeader(GrpcVorgangHeadTestFactory.create()).build(); + + var vorgang = mapper.toVorgangWithEingang(grpcVorgang); + + assertThat(vorgang.getHeader().isLocked()).isFalse(); + } + + @Test + void shouldMapLockedToTrueIfLockIsPresent() { + var grpcVorgang = GrpcVorgangWithEingangTestFactory.createBuilder() + .setHeader(GrpcVorgangHeadTestFactory.createBuilder().setLock(GrpcLockTestFactory.create()).build()) + .build(); + + var vorgang = mapper.toVorgangWithEingang(grpcVorgang); + + assertThat(vorgang.getHeader().isLocked()).isTrue(); + } + private VorgangWithEingang callMapper() { return mapper.toVorgangWithEingang(grpcVorgangMitEingang); } diff --git a/pom.xml b/pom.xml index 7f69ffa8ae1f29dd9c9639eb30745f4882866662..b4a9f9211c40a3f5a0a46872d1022d2641a659e5 100644 --- a/pom.xml +++ b/pom.xml @@ -49,12 +49,13 @@ <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> - <vorgang-manager.version>2.13.0</vorgang-manager.version> + <vorgang-manager.version>2.19.0-SNAPSHOT</vorgang-manager.version> <nachrichten-manager.version>2.11.0</nachrichten-manager.version> <ozgcloud-common-pdf.version>3.0.1</ozgcloud-common-pdf.version> <user-manager.version>2.8.0</user-manager.version> <zufi-manager.version>1.5.0</zufi-manager.version> <archive-manager.version>0.1.0-SNAPSHOT</archive-manager.version> + <document-manager.version>1.1.0</document-manager.version> <spring-cloud-config-client.version>4.1.3</spring-cloud-config-client.version> <!-- TODO: die Version über ozgcloud-common ziehen --> @@ -145,6 +146,11 @@ <artifactId>archive-manager-interface</artifactId> <version>${archive-manager.version}</version> </dependency> + <dependency> + <groupId>de.ozgcloud.document</groupId> + <artifactId>document-manager-interface</artifactId> + <version>${document-manager.version}</version> + </dependency> <dependency> <groupId>io.jsonwebtoken</groupId>