use of ca.bc.gov.hlth.hnweb.model.rest.enrollment.NameSearchResult 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;
}
use of ca.bc.gov.hlth.hnweb.model.rest.enrollment.NameSearchResult in project moh-hnweb by bcgov.
the class FindCandidatesConverter method convertResponse.
public NameSearchResponse convertResponse(FindCandidatesResponse findCandidatesResponse) throws IOException {
logger.debug("Find Candidates response : {} ", findCandidatesResponse.toString());
NameSearchResponse nameSearchResponse = new NameSearchResponse();
String messageDetails = findCandidatesResponse.getMessage().getDetails();
String[] messageText = messageDetails.split("\\|");
String message = "";
if (messageText.length > 1) {
message = messageText[1];
}
nameSearchResponse.setMessage(message);
nameSearchResponse.setStatus(StatusEnum.SUCCESS);
if (findCandidatesResponse.getResultCount() > 0) {
List<NameSearchResult> results = buildNameSearch(findCandidatesResponse);
nameSearchResponse.setCandidates(results);
logger.debug("Converted Name Search Response : {} ", nameSearchResponse);
}
return nameSearchResponse;
}
Aggregations