diff --git a/hearing-command/hearing-command-api/pom.xml b/hearing-command/hearing-command-api/pom.xml
index 831f9fd06..82bcac47d 100644
--- a/hearing-command/hearing-command-api/pom.xml
+++ b/hearing-command/hearing-command-api/pom.xml
@@ -3,7 +3,7 @@
uk.gov.moj.cpp.hearing
hearing-command
- 17.104.181-SNAPSHOT
+ 17.104.181-DD-42950-SNAPSHOT
hearing-command-api
war
diff --git a/hearing-command/hearing-command-handler/pom.xml b/hearing-command/hearing-command-handler/pom.xml
index 5df4505db..33e478bce 100644
--- a/hearing-command/hearing-command-handler/pom.xml
+++ b/hearing-command/hearing-command-handler/pom.xml
@@ -3,7 +3,7 @@
uk.gov.moj.cpp.hearing
hearing-command
- 17.104.181-SNAPSHOT
+ 17.104.181-DD-42950-SNAPSHOT
hearing-command-handler
war
diff --git a/hearing-command/hearing-command-handler/src/main/java/uk/gov/moj/cpp/hearing/command/handler/service/validation/DefendantDto.java b/hearing-command/hearing-command-handler/src/main/java/uk/gov/moj/cpp/hearing/command/handler/service/validation/DefendantDto.java
index 7546d33d8..b5bbcb84f 100644
--- a/hearing-command/hearing-command-handler/src/main/java/uk/gov/moj/cpp/hearing/command/handler/service/validation/DefendantDto.java
+++ b/hearing-command/hearing-command-handler/src/main/java/uk/gov/moj/cpp/hearing/command/handler/service/validation/DefendantDto.java
@@ -1,16 +1,20 @@
package uk.gov.moj.cpp.hearing.command.handler.service.validation;
+import java.time.LocalDate;
+
public class DefendantDto {
private final String defendantId;
private final String firstName;
private final String lastName;
private final String masterDefendantId;
+ private final LocalDate dateOfBirth;
private DefendantDto(Builder builder) {
this.defendantId = builder.defendantId;
this.firstName = builder.firstName;
this.lastName = builder.lastName;
this.masterDefendantId = builder.masterDefendantId;
+ this.dateOfBirth = builder.dateOfBirth;
}
public String getDefendantId() {
@@ -29,6 +33,10 @@ public String getMasterDefendantId() {
return masterDefendantId;
}
+ public LocalDate getDateOfBirth() {
+ return dateOfBirth;
+ }
+
public static Builder builder() {
return new Builder();
}
@@ -38,6 +46,7 @@ public static final class Builder {
private String firstName;
private String lastName;
private String masterDefendantId;
+ private LocalDate dateOfBirth;
public Builder withDefendantId(String defendantId) {
this.defendantId = defendantId;
@@ -59,6 +68,11 @@ public Builder withMasterDefendantId(String masterDefendantId) {
return this;
}
+ public Builder withDateOfBirth(LocalDate dateOfBirth) {
+ this.dateOfBirth = dateOfBirth;
+ return this;
+ }
+
public DefendantDto build() {
return new DefendantDto(this);
}
diff --git a/hearing-command/hearing-command-handler/src/main/java/uk/gov/moj/cpp/hearing/command/handler/service/validation/ValidationRequestMapper.java b/hearing-command/hearing-command-handler/src/main/java/uk/gov/moj/cpp/hearing/command/handler/service/validation/ValidationRequestMapper.java
index 0f42c14a4..6c9ea74e3 100644
--- a/hearing-command/hearing-command-handler/src/main/java/uk/gov/moj/cpp/hearing/command/handler/service/validation/ValidationRequestMapper.java
+++ b/hearing-command/hearing-command-handler/src/main/java/uk/gov/moj/cpp/hearing/command/handler/service/validation/ValidationRequestMapper.java
@@ -65,6 +65,7 @@ private DefendantDto toDefendantDto(final Defendant defendant) {
.withFirstName(personDetails != null ? personDetails.getFirstName() : null)
.withLastName(personDetails != null ? personDetails.getLastName() : null)
.withMasterDefendantId(uuidToString(defendant.getMasterDefendantId()))
+ .withDateOfBirth(personDetails != null ? personDetails.getDateOfBirth() : null)
.build();
}
diff --git a/hearing-command/hearing-command-handler/src/test/java/uk/gov/moj/cpp/hearing/command/handler/service/validation/ValidationRequestMapperTest.java b/hearing-command/hearing-command-handler/src/test/java/uk/gov/moj/cpp/hearing/command/handler/service/validation/ValidationRequestMapperTest.java
index 0e284ded4..f08a82263 100644
--- a/hearing-command/hearing-command-handler/src/test/java/uk/gov/moj/cpp/hearing/command/handler/service/validation/ValidationRequestMapperTest.java
+++ b/hearing-command/hearing-command-handler/src/test/java/uk/gov/moj/cpp/hearing/command/handler/service/validation/ValidationRequestMapperTest.java
@@ -141,6 +141,41 @@ void shouldHandleNullPersonDefendantGracefully() {
assertThat(request.getDefendants(), hasSize(1));
assertThat(request.getDefendants().get(0).getFirstName(), is(nullValue()));
assertThat(request.getDefendants().get(0).getLastName(), is(nullValue()));
+ assertThat(request.getDefendants().get(0).getDateOfBirth(), is(nullValue()));
+ }
+
+ @Test
+ void shouldMapDefendantDateOfBirthFromPersonDetails() {
+ final UUID defendantId = randomUUID();
+ final LocalDate dateOfBirth = LocalDate.of(1990, 5, 20);
+
+ final Person person = Person.person()
+ .withDateOfBirth(dateOfBirth)
+ .build();
+
+ final PersonDefendant personDefendant = PersonDefendant.personDefendant()
+ .withPersonDetails(person)
+ .build();
+
+ final Defendant defendant = Defendant.defendant()
+ .withId(defendantId)
+ .withPersonDefendant(personDefendant)
+ .build();
+
+ final ProsecutionCase prosecutionCase = ProsecutionCase.prosecutionCase()
+ .withDefendants(List.of(defendant))
+ .build();
+
+ final Hearing hearing = Hearing.hearing()
+ .withProsecutionCases(List.of(prosecutionCase))
+ .build();
+
+ final ShareDaysResultsCommand command = buildCommand(randomUUID(), LocalDate.now(), emptyList());
+
+ final ValidationRequest request = mapper.toValidationRequest(command, hearing);
+
+ assertThat(request.getDefendants(), hasSize(1));
+ assertThat(request.getDefendants().get(0).getDateOfBirth(), is(dateOfBirth));
}
@Test
diff --git a/hearing-command/pom.xml b/hearing-command/pom.xml
index 46e9c2c79..ba3e38178 100644
--- a/hearing-command/pom.xml
+++ b/hearing-command/pom.xml
@@ -3,7 +3,7 @@
uk.gov.moj.cpp.hearing
hearing-parent
- 17.104.181-SNAPSHOT
+ 17.104.181-DD-42950-SNAPSHOT
hearing-command
pom
diff --git a/hearing-common/pom.xml b/hearing-common/pom.xml
index af1802ce3..e30a63425 100644
--- a/hearing-common/pom.xml
+++ b/hearing-common/pom.xml
@@ -3,7 +3,7 @@
hearing-parent
uk.gov.moj.cpp.hearing
- 17.104.181-SNAPSHOT
+ 17.104.181-DD-42950-SNAPSHOT
4.0.0
diff --git a/hearing-domain/hearing-domain-aggregate/pom.xml b/hearing-domain/hearing-domain-aggregate/pom.xml
index eae4201e4..ccf7fa9a6 100644
--- a/hearing-domain/hearing-domain-aggregate/pom.xml
+++ b/hearing-domain/hearing-domain-aggregate/pom.xml
@@ -3,7 +3,7 @@
uk.gov.moj.cpp.hearing
hearing-domain
- 17.104.181-SNAPSHOT
+ 17.104.181-DD-42950-SNAPSHOT
hearing-domain-aggregate
diff --git a/hearing-domain/hearing-domain-common/pom.xml b/hearing-domain/hearing-domain-common/pom.xml
index 4aac97315..989bd4b56 100644
--- a/hearing-domain/hearing-domain-common/pom.xml
+++ b/hearing-domain/hearing-domain-common/pom.xml
@@ -3,7 +3,7 @@
uk.gov.moj.cpp.hearing
hearing-domain
- 17.104.181-SNAPSHOT
+ 17.104.181-DD-42950-SNAPSHOT
hearing-domain-common
diff --git a/hearing-domain/hearing-domain-event/pom.xml b/hearing-domain/hearing-domain-event/pom.xml
index ada1b1507..305e4d1b5 100644
--- a/hearing-domain/hearing-domain-event/pom.xml
+++ b/hearing-domain/hearing-domain-event/pom.xml
@@ -3,7 +3,7 @@
uk.gov.moj.cpp.hearing
hearing-domain
- 17.104.181-SNAPSHOT
+ 17.104.181-DD-42950-SNAPSHOT
hearing-domain-event
diff --git a/hearing-domain/hearing-domain-xhibit/pom.xml b/hearing-domain/hearing-domain-xhibit/pom.xml
index 3fe31f559..970306c40 100644
--- a/hearing-domain/hearing-domain-xhibit/pom.xml
+++ b/hearing-domain/hearing-domain-xhibit/pom.xml
@@ -3,7 +3,7 @@
uk.gov.moj.cpp.hearing
hearing-domain
- 17.104.181-SNAPSHOT
+ 17.104.181-DD-42950-SNAPSHOT
4.0.0
diff --git a/hearing-domain/pom.xml b/hearing-domain/pom.xml
index 92185ecf8..94a5eb2f9 100644
--- a/hearing-domain/pom.xml
+++ b/hearing-domain/pom.xml
@@ -3,7 +3,7 @@
uk.gov.moj.cpp.hearing
hearing-parent
- 17.104.181-SNAPSHOT
+ 17.104.181-DD-42950-SNAPSHOT
hearing-domain
pom
diff --git a/hearing-event-sources/pom.xml b/hearing-event-sources/pom.xml
index 4689fe013..b7d18785f 100644
--- a/hearing-event-sources/pom.xml
+++ b/hearing-event-sources/pom.xml
@@ -3,7 +3,7 @@
hearing-parent
uk.gov.moj.cpp.hearing
- 17.104.181-SNAPSHOT
+ 17.104.181-DD-42950-SNAPSHOT
../pom.xml
4.0.0
diff --git a/hearing-event/hearing-event-listener/pom.xml b/hearing-event/hearing-event-listener/pom.xml
index b8877f906..7674e6294 100644
--- a/hearing-event/hearing-event-listener/pom.xml
+++ b/hearing-event/hearing-event-listener/pom.xml
@@ -3,7 +3,7 @@
uk.gov.moj.cpp.hearing
hearing-event
- 17.104.181-SNAPSHOT
+ 17.104.181-DD-42950-SNAPSHOT
hearing-event-listener
war
diff --git a/hearing-event/hearing-event-processor/pom.xml b/hearing-event/hearing-event-processor/pom.xml
index 006a40dc0..7b7e2aad2 100644
--- a/hearing-event/hearing-event-processor/pom.xml
+++ b/hearing-event/hearing-event-processor/pom.xml
@@ -3,7 +3,7 @@
hearing-event
uk.gov.moj.cpp.hearing
- 17.104.181-SNAPSHOT
+ 17.104.181-DD-42950-SNAPSHOT
4.0.0
war
diff --git a/hearing-event/pom.xml b/hearing-event/pom.xml
index 898b1305f..75d3baf48 100644
--- a/hearing-event/pom.xml
+++ b/hearing-event/pom.xml
@@ -3,7 +3,7 @@
uk.gov.moj.cpp.hearing
hearing-parent
- 17.104.181-SNAPSHOT
+ 17.104.181-DD-42950-SNAPSHOT
hearing-event
pom
diff --git a/hearing-healthchecks/pom.xml b/hearing-healthchecks/pom.xml
index c1e354abd..45c62183f 100644
--- a/hearing-healthchecks/pom.xml
+++ b/hearing-healthchecks/pom.xml
@@ -3,7 +3,7 @@
hearing-parent
uk.gov.moj.cpp.hearing
- 17.104.181-SNAPSHOT
+ 17.104.181-DD-42950-SNAPSHOT
4.0.0
diff --git a/hearing-integration-test/pom.xml b/hearing-integration-test/pom.xml
index b8e8a4020..d1baeecef 100644
--- a/hearing-integration-test/pom.xml
+++ b/hearing-integration-test/pom.xml
@@ -5,7 +5,7 @@
uk.gov.moj.cpp.hearing
hearing-parent
- 17.104.181-SNAPSHOT
+ 17.104.181-DD-42950-SNAPSHOT
hearing-integration-test
diff --git a/hearing-json/pom.xml b/hearing-json/pom.xml
index b72b2e643..14d866f3a 100644
--- a/hearing-json/pom.xml
+++ b/hearing-json/pom.xml
@@ -3,7 +3,7 @@
hearing-parent
uk.gov.moj.cpp.hearing
- 17.104.181-SNAPSHOT
+ 17.104.181-DD-42950-SNAPSHOT
4.0.0
diff --git a/hearing-query/hearing-query-api/pom.xml b/hearing-query/hearing-query-api/pom.xml
index f3bcd763d..7b63c1cea 100644
--- a/hearing-query/hearing-query-api/pom.xml
+++ b/hearing-query/hearing-query-api/pom.xml
@@ -3,7 +3,7 @@
uk.gov.moj.cpp.hearing
hearing-query
- 17.104.181-SNAPSHOT
+ 17.104.181-DD-42950-SNAPSHOT
hearing-query-api
war
diff --git a/hearing-query/hearing-query-view/pom.xml b/hearing-query/hearing-query-view/pom.xml
index 7d422d40e..745fcfaad 100644
--- a/hearing-query/hearing-query-view/pom.xml
+++ b/hearing-query/hearing-query-view/pom.xml
@@ -3,7 +3,7 @@
uk.gov.moj.cpp.hearing
hearing-query
- 17.104.181-SNAPSHOT
+ 17.104.181-DD-42950-SNAPSHOT
hearing-query-view
jar
diff --git a/hearing-query/hearing-query-view/src/test/java/uk/gov/moj/cpp/hearing/query/view/service/GetHearingCaseTransformerTest.java b/hearing-query/hearing-query-view/src/test/java/uk/gov/moj/cpp/hearing/query/view/service/GetHearingCaseTransformerTest.java
index 4d7c1a0b5..8fb4cd4b7 100644
--- a/hearing-query/hearing-query-view/src/test/java/uk/gov/moj/cpp/hearing/query/view/service/GetHearingCaseTransformerTest.java
+++ b/hearing-query/hearing-query-view/src/test/java/uk/gov/moj/cpp/hearing/query/view/service/GetHearingCaseTransformerTest.java
@@ -88,4 +88,61 @@ void shouldReturnHearingDateMatchingTheQueriedDayForMultiDayHearing() {
assertThat(result.getHearingDate(), is(tomorrow.toLocalDate().toString()));
}
+
+ @Test
+ void shouldIncludeGroupMasterCaseWhenHearingIsGroupProceedings() {
+ final UUID masterCaseId = randomUUID();
+ final Hearing hearing = hearing().withId(randomUUID())
+ .withCourtCentre(courtCentre().withId(randomUUID()).withRoomId(randomUUID()).build())
+ .withIsGroupProceedings(true)
+ .withProsecutionCases(List.of(
+ prosecutionCase().withId(masterCaseId)
+ .withIsGroupMaster(true)
+ .withIsGroupMember(true)
+ .build()
+ ))
+ .build();
+
+ final HearingCases result = transformer.hearingCases(hearing, LocalDate.now()).build();
+
+ assertThat(result.getProsecutionCases(), equalTo(List.of(masterCaseId)));
+ }
+
+ @Test
+ void shouldIncludeNonGroupMemberCaseWhenHearingIsGroupProceedings() {
+ final UUID caseId = randomUUID();
+ final Hearing hearing = hearing().withId(randomUUID())
+ .withCourtCentre(courtCentre().withId(randomUUID()).withRoomId(randomUUID()).build())
+ .withIsGroupProceedings(true)
+ .withProsecutionCases(List.of(
+ prosecutionCase().withId(caseId)
+ .withIsGroupMaster(false)
+ .withIsGroupMember(null)
+ .build()
+ ))
+ .build();
+
+ final HearingCases result = transformer.hearingCases(hearing, LocalDate.now()).build();
+
+ assertThat(result.getProsecutionCases(), equalTo(List.of(caseId)));
+ }
+
+ @Test
+ void shouldExcludeGroupMemberCaseWhenHearingIsGroupProceedings() {
+ final UUID memberCaseId = randomUUID();
+ final Hearing hearing = hearing().withId(randomUUID())
+ .withCourtCentre(courtCentre().withId(randomUUID()).withRoomId(randomUUID()).build())
+ .withIsGroupProceedings(true)
+ .withProsecutionCases(List.of(
+ prosecutionCase().withId(memberCaseId)
+ .withIsGroupMaster(false)
+ .withIsGroupMember(true)
+ .build()
+ ))
+ .build();
+
+ final HearingCases result = transformer.hearingCases(hearing, LocalDate.now()).build();
+
+ assertThat(result.getProsecutionCases(), is(emptyList()));
+ }
}
\ No newline at end of file
diff --git a/hearing-query/pom.xml b/hearing-query/pom.xml
index 63076aa8a..4e8011278 100644
--- a/hearing-query/pom.xml
+++ b/hearing-query/pom.xml
@@ -3,7 +3,7 @@
uk.gov.moj.cpp.hearing
hearing-parent
- 17.104.181-SNAPSHOT
+ 17.104.181-DD-42950-SNAPSHOT
hearing-query
pom
diff --git a/hearing-service/pom.xml b/hearing-service/pom.xml
index dd494d581..473f66ee8 100644
--- a/hearing-service/pom.xml
+++ b/hearing-service/pom.xml
@@ -3,7 +3,7 @@
uk.gov.moj.cpp.hearing
hearing-parent
- 17.104.181-SNAPSHOT
+ 17.104.181-DD-42950-SNAPSHOT
4.0.0
diff --git a/hearing-viewstore/hearing-viewstore-liquibase/pom.xml b/hearing-viewstore/hearing-viewstore-liquibase/pom.xml
index 58d6916c5..312e73560 100644
--- a/hearing-viewstore/hearing-viewstore-liquibase/pom.xml
+++ b/hearing-viewstore/hearing-viewstore-liquibase/pom.xml
@@ -3,7 +3,7 @@
uk.gov.moj.cpp.hearing
hearing-viewstore
- 17.104.181-SNAPSHOT
+ 17.104.181-DD-42950-SNAPSHOT
hearing-viewstore-liquibase
diff --git a/hearing-viewstore/hearing-viewstore-persistence/pom.xml b/hearing-viewstore/hearing-viewstore-persistence/pom.xml
index fd519faf8..e58943f7c 100644
--- a/hearing-viewstore/hearing-viewstore-persistence/pom.xml
+++ b/hearing-viewstore/hearing-viewstore-persistence/pom.xml
@@ -3,7 +3,7 @@
uk.gov.moj.cpp.hearing
hearing-viewstore
- 17.104.181-SNAPSHOT
+ 17.104.181-DD-42950-SNAPSHOT
hearing-viewstore-persistence
diff --git a/hearing-viewstore/pom.xml b/hearing-viewstore/pom.xml
index 3a0fea28a..2a9558d96 100644
--- a/hearing-viewstore/pom.xml
+++ b/hearing-viewstore/pom.xml
@@ -3,7 +3,7 @@
uk.gov.moj.cpp.hearing
hearing-parent
- 17.104.181-SNAPSHOT
+ 17.104.181-DD-42950-SNAPSHOT
hearing-viewstore
pom
diff --git a/pojo-plugin/pom.xml b/pojo-plugin/pom.xml
index 5cd83e693..e3bdf1e1d 100644
--- a/pojo-plugin/pom.xml
+++ b/pojo-plugin/pom.xml
@@ -3,7 +3,7 @@
uk.gov.moj.cpp.hearing
hearing-parent
- 17.104.181-SNAPSHOT
+ 17.104.181-DD-42950-SNAPSHOT
pojo-plugin
diff --git a/pom.xml b/pom.xml
index be22b7ade..74c011b75 100644
--- a/pom.xml
+++ b/pom.xml
@@ -8,7 +8,7 @@
uk.gov.moj.cpp.hearing
hearing-parent
- 17.104.181-SNAPSHOT
+ 17.104.181-DD-42950-SNAPSHOT
pom
Hearing Context - Parent Module
diff --git a/test-utilities/pom.xml b/test-utilities/pom.xml
index 4924bc08f..9b376ad86 100644
--- a/test-utilities/pom.xml
+++ b/test-utilities/pom.xml
@@ -7,7 +7,7 @@
uk.gov.moj.cpp.hearing
hearing-parent
- 17.104.181-SNAPSHOT
+ 17.104.181-DD-42950-SNAPSHOT