Skip to content
Snippets Groups Projects
Commit 8a117404 authored by OZGCloud's avatar OZGCloud
Browse files

OZG-7350 simplify GrpcCreateCollaborationRequestData

parent d81d9ed4
Branches
Tags
No related merge requests found
Showing
with 10 additions and 139 deletions
......@@ -214,18 +214,7 @@ message GrpcCreateCollaborationRequestData {
string vorgangId = 1;
int32 collaborationLevel = 2;
reserved 3;
GrpcFachstelle zustaendigeStelle = 4;
}
message GrpcFachstelle {
string technicalId = 1;
string subjectId = 2;
GrpcFachstelleType type = 3;
}
enum GrpcFachstelleType{
ORGANISATIONS_EINHEIT = 0;
EXTERNE_FACHSTELLE = 1;
string organisationsEinheitId = 4;
}
message GrpcCreateCollaborationVorgangResponse {
......
......@@ -59,7 +59,7 @@ public class CollaborationService {
VorgangHead getHeader(CreateCollaborationVorgangRequest request) {
return request.getVorgang().getHeader().toBuilder()
.collaborationLevel(request.getCollaborationLevel())
.organisationsEinheitId(request.getZustaendigeStelle().getSubjectId())
.organisationsEinheitId(request.getOrganisationsEinheitId())
.build();
}
}
......@@ -33,5 +33,5 @@ public class CreateCollaborationVorgangRequest {
private Vorgang vorgang;
private int collaborationLevel;
private Fachstelle zustaendigeStelle;
private String organisationsEinheitId;
}
......@@ -29,7 +29,7 @@ import org.mapstruct.ReportingPolicy;
import de.ozgcloud.vorgang.vorgang.GrpcCreateCollaborationRequestData;
@Mapper(unmappedTargetPolicy = ReportingPolicy.WARN, uses = FachstelleMapper.class)
@Mapper(unmappedTargetPolicy = ReportingPolicy.WARN)
public interface CreateCollaborationVorgangRequestMapper {
@Mapping(target = "vorgang", ignore = true)
......
package de.ozgcloud.vorgang.collaboration;
import lombok.Builder;
import lombok.EqualsAndHashCode;
import lombok.Getter;
@Builder
@Getter
@EqualsAndHashCode
public class Fachstelle {
private String technicalId;
private String subjectId;
private FachstelleType type;
public enum FachstelleType {
EXTERNE_FACHSTELLE, ORGANISATIONS_EINHEIT;
}
}
\ No newline at end of file
package de.ozgcloud.vorgang.collaboration;
import org.mapstruct.Mapper;
import org.mapstruct.MappingConstants;
import org.mapstruct.ReportingPolicy;
import org.mapstruct.ValueMapping;
import de.ozgcloud.vorgang.vorgang.GrpcFachstelle;
@Mapper(unmappedTargetPolicy = ReportingPolicy.WARN)
interface FachstelleMapper {
@ValueMapping(source = MappingConstants.ANY_REMAINING, target = MappingConstants.THROW_EXCEPTION)
Fachstelle fromGrpc(GrpcFachstelle fachstelle);
}
......@@ -232,7 +232,7 @@ class CollaborationServiceTest {
void shouldSetOrganisationsEinheitId() {
var result = getHeader();
assertThat(result.getOrganisationsEinheitId()).isEqualTo(FachstelleTestFactory.SUBJECT_ID);
assertThat(result.getOrganisationsEinheitId()).isEqualTo(CreateCollaborationVorgangRequestTestFactory.ORGANISATIONSEINHEIT_ID);
}
@Test
......
......@@ -24,36 +24,22 @@
package de.ozgcloud.vorgang.collaboration;
import static org.assertj.core.api.Assertions.*;
import static org.mockito.ArgumentMatchers.*;
import static org.mockito.Mockito.*;
import org.junit.jupiter.api.Nested;
import org.junit.jupiter.api.Test;
import org.mapstruct.factory.Mappers;
import org.mockito.InjectMocks;
import org.mockito.Mock;
class CreateCollaborationVorgangRequestMapperTest {
@InjectMocks
private final CreateCollaborationVorgangRequestMapper mapper = Mappers.getMapper(CreateCollaborationVorgangRequestMapper.class);
@Mock
private FachstelleMapper fachstelleMapper;
@Nested
class TestMapFrom {
@Test
void shouldCallFachstelleMapper() {
mapper.mapFrom(GrpcCreateCollaborationRequestDataTestFactory.create());
verify(fachstelleMapper).fromGrpc(GrpcCreateCollaborationRequestDataTestFactory.FACHSTELLE);
}
@Test
void shouldMapFromGrpc() {
when(fachstelleMapper.fromGrpc(any())).thenReturn(FachstelleTestFactory.create());
var result = mapper.mapFrom(GrpcCreateCollaborationRequestDataTestFactory.create());
assertThat(result).usingRecursiveComparison().ignoringFields("vorgang").isEqualTo(CreateCollaborationVorgangRequestTestFactory.create());
......
......@@ -23,12 +23,14 @@
*/
package de.ozgcloud.vorgang.collaboration;
import java.util.UUID;
import de.ozgcloud.vorgang.collaboration.CreateCollaborationVorgangRequest.CreateCollaborationVorgangRequestBuilder;
import de.ozgcloud.vorgang.vorgang.VorgangTestFactory;
public class CreateCollaborationVorgangRequestTestFactory {
public static final Fachstelle ZUSTAENDIGE_STELLE = FachstelleTestFactory.create();
public static final String ORGANISATIONSEINHEIT_ID = UUID.randomUUID().toString();
public static final int COLLABORATION_LEVEL = 1;
public static CreateCollaborationVorgangRequest create() {
......@@ -38,7 +40,7 @@ public class CreateCollaborationVorgangRequestTestFactory {
public static CreateCollaborationVorgangRequestBuilder createBuilder() {
return CreateCollaborationVorgangRequest.builder()
.vorgang(VorgangTestFactory.create())
.zustaendigeStelle(ZUSTAENDIGE_STELLE)
.organisationsEinheitId(ORGANISATIONSEINHEIT_ID)
.collaborationLevel(COLLABORATION_LEVEL);
}
......
package de.ozgcloud.vorgang.collaboration;
import static org.assertj.core.api.Assertions.*;
import org.junit.jupiter.api.Nested;
import org.junit.jupiter.api.Test;
import org.mapstruct.factory.Mappers;
class FachstelleMapperTest {
private final FachstelleMapper mapper = Mappers.getMapper(FachstelleMapper.class);
@Nested
class TestFromGrpc {
@Test
void shouldMap() {
var fachstelle = mapper.fromGrpc(GrpcFachstelleTestFactory.create());
assertThat(fachstelle).isEqualTo(FachstelleTestFactory.create());
}
}
}
package de.ozgcloud.vorgang.collaboration;
import java.util.UUID;
import de.ozgcloud.vorgang.collaboration.Fachstelle.FachstelleBuilder;
import de.ozgcloud.vorgang.collaboration.Fachstelle.FachstelleType;
public class FachstelleTestFactory {
public static final FachstelleType TYPE = FachstelleType.ORGANISATIONS_EINHEIT;
public static final String SUBJECT_ID = UUID.randomUUID().toString();
public static final String TECHNICAL_ID = UUID.randomUUID().toString();
public static Fachstelle create() {
return createBuilder().build();
}
public static FachstelleBuilder createBuilder() {
return Fachstelle.builder()
.subjectId(SUBJECT_ID)
.technicalId(TECHNICAL_ID)
.type(TYPE);
}
}
......@@ -24,13 +24,10 @@
package de.ozgcloud.vorgang.collaboration;
import de.ozgcloud.vorgang.vorgang.GrpcCreateCollaborationRequestData;
import de.ozgcloud.vorgang.vorgang.GrpcFachstelle;
import de.ozgcloud.vorgang.vorgang.VorgangTestFactory;
public class GrpcCreateCollaborationRequestDataTestFactory {
public static final GrpcFachstelle FACHSTELLE = GrpcFachstelleTestFactory.create();
public static GrpcCreateCollaborationRequestData create() {
return createBuilder().build();
}
......@@ -38,7 +35,7 @@ public class GrpcCreateCollaborationRequestDataTestFactory {
public static GrpcCreateCollaborationRequestData.Builder createBuilder() {
return GrpcCreateCollaborationRequestData.newBuilder()
.setVorgangId(VorgangTestFactory.ID)
.setZustaendigeStelle(FACHSTELLE)
.setOrganisationsEinheitId(CreateCollaborationVorgangRequestTestFactory.ORGANISATIONSEINHEIT_ID)
.setCollaborationLevel(CreateCollaborationVorgangRequestTestFactory.COLLABORATION_LEVEL);
}
}
package de.ozgcloud.vorgang.collaboration;
import de.ozgcloud.vorgang.vorgang.GrpcFachstelle;
import de.ozgcloud.vorgang.vorgang.GrpcFachstelleType;
public class GrpcFachstelleTestFactory {
public static final GrpcFachstelleType TYPE = GrpcFachstelleType.valueOf(FachstelleTestFactory.TYPE.name());
public static final String SUBJECT_ID = FachstelleTestFactory.SUBJECT_ID;
public static final String TECHNICAL_ID = FachstelleTestFactory.TECHNICAL_ID;
public static GrpcFachstelle create() {
return createBuilder().build();
}
public static GrpcFachstelle.Builder createBuilder() {
return GrpcFachstelle.newBuilder()
.setSubjectId(SUBJECT_ID)
.setTechnicalId(TECHNICAL_ID)
.setType(TYPE);
}
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment