use of gov.ca.cwds.rest.api.domain.Participant in project API by ca-cwds.
the class ScreeningToReferralService method create.
@UnitOfWork(value = "cms")
@Override
public Response create(Request request) {
ScreeningToReferral screeningToReferral = (ScreeningToReferral) request;
Set<ErrorMessage> messages = new HashSet<ErrorMessage>();
verifyReferralHasValidParticipants(screeningToReferral, messages);
String dateStarted = extractStartDate(screeningToReferral, messages);
String timeStarted = extractStartTime(screeningToReferral, messages);
String referralId = createCmsReferral(screeningToReferral, messages, dateStarted, timeStarted);
createReferralAddress(screeningToReferral, messages);
Set<Participant> resultParticipants = new HashSet<>();
HashMap<Long, String> victimClient = new HashMap<>();
HashMap<Long, String> perpatratorClient = new HashMap<>();
processParticipants(screeningToReferral, messages, dateStarted, referralId, resultParticipants, victimClient, perpatratorClient);
Set<CrossReport> resultCrossReports = createCrossReports(screeningToReferral, messages, referralId);
Set<Allegation> resultAllegations = createAllegations(screeningToReferral, messages, referralId, victimClient, perpatratorClient);
PostedScreeningToReferral pstr = PostedScreeningToReferral.createWithDefaults(referralId, screeningToReferral, resultParticipants, resultCrossReports, resultAllegations);
pstr.setMessages(messages);
return pstr;
}
use of gov.ca.cwds.rest.api.domain.Participant in project API by ca-cwds.
the class ScreeningServiceTest method updateReturnsCorrectScreeningResponseOnSuccess.
@Test
public void updateReturnsCorrectScreeningResponseOnSuccess() throws Exception {
roles.add("victim");
gov.ca.cwds.rest.api.domain.Address domainAddress = new gov.ca.cwds.rest.api.domain.Address("", "", "742 Evergreen Terrace", "Springfield", "WA", 98700, "home");
addresses.add(domainAddress);
ScreeningRequest screeningRequest = new ScreeningRequest("ref", "2016-10-31", "Sac", "2016-10-31", "loc", "comm", "name", "now", "sure", "2016-10-31", "narrative", domainAddress);
Participant bart = new Participant(1, "", "", "Bart", "Simpson", "male", "123456789", "2016-10-31", 1234, 1234, roles, addresses);
Participant maggie = new Participant(2, "", "", "Maggie", "Simpson", "female", "123456789", "2016-10-31", 1234, 1234, roles, addresses);
// Participant bart = new Participant(1, 123, "Bart", "Simpson", "M", "2016-10-31",
// "123456789");
// Participant maggie = new Participant(2, 1, "Maggie", "Simpson", "M", "2016-10-31",
// "123456789");
ImmutableSet.Builder<gov.ca.cwds.data.persistence.ns.Participant> peopleListBuilder = ImmutableSet.builder();
ImmutableSet<gov.ca.cwds.data.persistence.ns.Participant> people = peopleListBuilder.add(new gov.ca.cwds.data.persistence.ns.Participant(bart, null, null)).add(new gov.ca.cwds.data.persistence.ns.Participant(maggie, null, null)).build();
gov.ca.cwds.data.persistence.ns.Screening screening = new gov.ca.cwds.data.persistence.ns.Screening(1L, screeningRequest, new Address(domainAddress, null, null), people, null, null);
when(screeningDao.find(new Long(123))).thenReturn(screening);
when(screeningDao.update(any())).thenReturn(screening);
ScreeningResponse expected = new ScreeningResponse(screening, people);
ScreeningResponse updated = screeningService.update(1L, screeningRequest);
assertThat(updated, is(expected));
}
use of gov.ca.cwds.rest.api.domain.Participant in project API by ca-cwds.
the class ParticipantValidator method anonymousReporter.
/**
* @param str - ScreeningToReferral object
* @return Boolean - is an anonymous reporter
* @throws ServiceException - throw any exception
*/
// is there an anonymous reporter participant on this screening to referral?
public static Boolean anonymousReporter(ScreeningToReferral str) throws ServiceException {
Set<Participant> participants;
participants = str.getParticipants();
if (participants != null) {
for (Participant incomingParticipant : participants) {
Set<String> roles = new HashSet<>(incomingParticipant.getRoles());
if (roles != null && roles.contains(ANONYMOUS_REPORTER_ROLE)) {
return true;
}
}
}
return false;
}
Aggregations