use of ca.bc.gov.hlth.hnweb.model.v3.FindCandidatesResult in project moh-hnweb by bcgov.
the class FindCandidatesConverter method buildNameSearch.
private List<NameSearchResult> buildNameSearch(FindCandidatesResponse findCandidatesResponse) {
List<NameSearchResult> nameSearchList = new ArrayList<NameSearchResult>();
List<FindCandidatesResult> candidatesResult = findCandidatesResponse.getResults();
if (CollectionUtils.isEmpty(candidatesResult)) {
return nameSearchList;
}
candidatesResult.forEach(ns -> {
NameSearchResult nameSearchResult = new NameSearchResult();
nameSearchResult.setPhn(ns.getPerson().getPhn());
nameSearchResult.setIdentifierTypeCode(IDENTIFIER_TYPE_CODE);
nameSearchResult.setAssigningAuthority(ASSIGNING_AUTHORITY);
Name nameObj = ns.getPerson().getDeclaredName();
if (nameObj == null) {
nameObj = ns.getPerson().getDocumentedName();
}
nameSearchResult.setGender(ns.getPerson().getGender());
nameSearchResult.setGivenName(nameObj.getFirstGivenName());
nameSearchResult.setSecondName(Optional.ofNullable(nameObj.getSecondGivenName()).orElse(""));
nameSearchResult.setSurname(nameObj.getSurname());
nameSearchResult.setNameTypeCode(nameObj.getType());
String birthDate = V3MessageUtil.convertDateToString(ns.getPerson().getBirthDate());
nameSearchResult.setDateOfBirth(birthDate);
Address address = ns.getPerson().getPhysicalAddress();
if (address != null) {
nameSearchResult.setAddress1(ns.getPerson().getPhysicalAddress().getAddressLine1());
nameSearchResult.setAddress2(ns.getPerson().getPhysicalAddress().getAddressLine2());
nameSearchResult.setAddress3(ns.getPerson().getPhysicalAddress().getAddressLine3());
nameSearchResult.setCity(ns.getPerson().getPhysicalAddress().getCity());
nameSearchResult.setProvince(ns.getPerson().getPhysicalAddress().getProvince());
nameSearchResult.setPostalCode(ns.getPerson().getPhysicalAddress().getPostalCode());
}
Address mailingAddress = ns.getPerson().getMailingAddress();
if (mailingAddress != null) {
nameSearchResult.setAddress1(ns.getPerson().getMailingAddress().getAddressLine1());
nameSearchResult.setAddress2(ns.getPerson().getMailingAddress().getAddressLine2());
nameSearchResult.setAddress3(ns.getPerson().getMailingAddress().getAddressLine3());
nameSearchResult.setCity(ns.getPerson().getMailingAddress().getCity());
nameSearchResult.setProvince(ns.getPerson().getMailingAddress().getProvince());
nameSearchResult.setPostalCode(ns.getPerson().getMailingAddress().getPostalCode());
}
nameSearchResult.setScore(ns.getScore());
nameSearchList.add(nameSearchResult);
});
return nameSearchList;
}
Aggregations