Skip to content

Commit

Permalink
Dfpl 2588 Include solicitor's address in search response (#5660)
Browse files Browse the repository at this point in the history
* add solicitor address to response

* fix unit test
  • Loading branch information
chak-shing-lo-justice authored Oct 28, 2024
1 parent 32be3ff commit eeb4a73
Show file tree
Hide file tree
Showing 4 changed files with 60 additions and 3 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -13,4 +13,5 @@ public class CafcassApiSolicitor {
private String lastName;
private String organisationId;
private String organisationName;
private CafcassApiAddress address;
}
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@
import java.util.stream.Stream;

import static org.apache.commons.lang3.StringUtils.isEmpty;
import static org.apache.commons.lang3.StringUtils.isNotBlank;
import static uk.gov.hmcts.reform.fpl.enums.YesNo.YES;

public class CafcassApiHelper {
Expand Down Expand Up @@ -51,10 +52,35 @@ public static CafcassApiSolicitor getCafcassApiSolicitor(RespondentSolicitor res
.firstName(solicitor.getFirstName())
.lastName(solicitor.getLastName());

if (solicitor.getOrganisation() != null) {
builder = builder.organisationId(solicitor.getOrganisation().getOrganisationID())
.organisationName(solicitor.getOrganisation().getOrganisationName());
String orgId = null;
String orgName = null;
Address address = null;

if (solicitor.getUnregisteredOrganisation() != null) {
orgName = solicitor.getUnregisteredOrganisation().getName();
if (solicitor.getUnregisteredOrganisation().getAddress() != null) {
address = solicitor.getUnregisteredOrganisation().getAddress();
}
} else {
if (solicitor.getOrganisation() != null) {
orgId = solicitor.getOrganisation().getOrganisationID();
orgName = solicitor.getOrganisation().getOrganisationName();
}
if (solicitor.getRegionalOfficeAddress() != null) {
address = solicitor.getRegionalOfficeAddress();
}
}

if (isNotBlank(orgId)) {
builder = builder.organisationId(orgId);
}
if (isNotBlank(orgName)) {
builder = builder.organisationName(orgName);
}
if (address != null) {
builder = builder.address(getCafcassApiAddress(address));
}

return builder.build();
})
.orElse(null);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -142,6 +142,7 @@ public static CafcassApiSolicitor getExpectedSolicitor(int solicitorNo) {
.email("respondentSolicitor" + solicitorNo + "@test.com")
.organisationId(testOrg.getOrganisationID())
.organisationName(testOrg.getOrganisationName())
.address(getExpectedAddress("Solicitor " + solicitorNo + "'s address"))
.build();
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
import uk.gov.hmcts.reform.ccd.model.Organisation;
import uk.gov.hmcts.reform.fpl.model.Address;
import uk.gov.hmcts.reform.fpl.model.RespondentSolicitor;
import uk.gov.hmcts.reform.fpl.model.UnregisteredOrganisation;
import uk.gov.hmcts.reform.fpl.model.cafcass.api.CafcassApiAddress;
import uk.gov.hmcts.reform.fpl.model.cafcass.api.CafcassApiSolicitor;
import uk.gov.hmcts.reform.fpl.model.common.Telephone;
Expand Down Expand Up @@ -60,6 +61,7 @@ public void testGetTelephoneNumber() {

@Test
public void testGetCafcassApiSolicitor() {
Address solicitorAddress = Address.builder().addressLine1("Address Line 1").build();
RespondentSolicitor solicitor = RespondentSolicitor.builder()
.email("solicitor@test.com")
.firstName("SolicitorFirstName")
Expand All @@ -68,6 +70,7 @@ public void testGetCafcassApiSolicitor() {
.organisationID("organisation ID")
.organisationName("organisation name")
.build())
.regionalOfficeAddress(solicitorAddress)
.build();

CafcassApiSolicitor expected = CafcassApiSolicitor.builder()
Expand All @@ -76,6 +79,32 @@ public void testGetCafcassApiSolicitor() {
.lastName(solicitor.getLastName())
.organisationId(solicitor.getOrganisation().getOrganisationID())
.organisationName(solicitor.getOrganisation().getOrganisationName())
.address(CafcassApiHelper.getCafcassApiAddress(solicitorAddress))
.build();

assertEquals(expected, CafcassApiHelper.getCafcassApiSolicitor(solicitor));
assertNull(CafcassApiHelper.getCafcassApiSolicitor(null));
assertNull(CafcassApiHelper.getCafcassApiSolicitor(RespondentSolicitor.builder().build()));
}

@Test
public void testGetCafcassApiNoRegisteredSolicitor() {
Address solicitorAddress = Address.builder().addressLine1("Address Line 1").build();
RespondentSolicitor solicitor = RespondentSolicitor.builder()
.email("solicitor@test.com")
.firstName("SolicitorFirstName")
.lastName("SolicitorLastName")
.unregisteredOrganisation(UnregisteredOrganisation.builder()
.name("unregistered organisation name")
.address(solicitorAddress).build())
.build();

CafcassApiSolicitor expected = CafcassApiSolicitor.builder()
.email(solicitor.getEmail())
.firstName(solicitor.getFirstName())
.lastName(solicitor.getLastName())
.organisationName(solicitor.getUnregisteredOrganisation().getName())
.address(CafcassApiHelper.getCafcassApiAddress(solicitorAddress))
.build();

assertEquals(expected, CafcassApiHelper.getCafcassApiSolicitor(solicitor));
Expand Down

0 comments on commit eeb4a73

Please sign in to comment.