Search in sources :

Example 1 with UnitOfWork

use of io.dropwizard.hibernate.UnitOfWork in project API by ca-cwds.

the class PersonService method create.

/**
   * {@inheritDoc}
   * 
   * @see gov.ca.cwds.rest.services.CrudsService#create(gov.ca.cwds.rest.api.Request)
   */
@Override
@UnitOfWork(value = "ns")
public PostedPerson create(Request request) {
    assert request instanceof Person;
    Person person = (Person) request;
    gov.ca.cwds.data.persistence.ns.Person managedPerson = new gov.ca.cwds.data.persistence.ns.Person(person, null, null);
    managedPerson = personDao.create(managedPerson);
    populatePersonDetails(person, managedPerson);
    managedPerson = personDao.find(managedPerson.getId());
    PostedPerson postedPerson = new PostedPerson(managedPerson);
    try {
        final gov.ca.cwds.rest.api.domain.es.Person esPerson = new gov.ca.cwds.rest.api.domain.es.Person(managedPerson.getId().toString(), managedPerson.getFirstName(), managedPerson.getLastName(), managedPerson.getGender(), DomainChef.cookDate(managedPerson.getDateOfBirth()), managedPerson.getSsn(), managedPerson.getClass().getName(), MAPPER.writeValueAsString(managedPerson));
        final String document = MAPPER.writeValueAsString(esPerson);
        // If the people index is missing, create it.
        elasticsearchDao.createIndexIfNeeded(elasticsearchDao.getDefaultAlias());
    // The ES Dao manages its own connections. No need to manually start or stop.
    // elasticsearchDao.index(elasticsearchDao.getDefaultAlias(),
    // elasticsearchDao.getDefaultDocType(), document, esPerson.getId());
    } catch (Exception e) {
        LOGGER.error("Unable to Index Person in ElasticSearch", e);
        throw new ApiException("Unable to Index Person in ElasticSearch", e);
    }
    return postedPerson;
}
Also used : NotImplementedException(org.apache.commons.lang3.NotImplementedException) ApiException(gov.ca.cwds.rest.api.ApiException) PostedPerson(gov.ca.cwds.rest.api.domain.PostedPerson) Person(gov.ca.cwds.rest.api.domain.Person) PostedPerson(gov.ca.cwds.rest.api.domain.PostedPerson) ApiException(gov.ca.cwds.rest.api.ApiException) UnitOfWork(io.dropwizard.hibernate.UnitOfWork)

Example 2 with UnitOfWork

use of io.dropwizard.hibernate.UnitOfWork in project cals-api by ca-cwds.

the class LisFacilityService method attachVisitsData.

@UnitOfWork(LIS)
void attachVisitsData(FacilityInformation facilityInformation) {
    Long facilityLastVisitReasonCode = facilityInformation.getFacLastVisitReason();
    if (facilityLastVisitReasonCode != null) {
        LisTableFile facilityLastVisitReason = lisTableFileDao.findVisitReasonType(facilityLastVisitReasonCode.intValue());
        facilityInformation.setFacilityLastVisitReason(facilityLastVisitReason);
    }
    Long facilityLastDeferredVisitReasonCode = facilityInformation.getFacLastDeferVisitReason();
    if (facilityLastDeferredVisitReasonCode != null) {
        LisTableFile facilityLastDeferredVisitReason = lisTableFileDao.findVisitReasonType(facilityLastDeferredVisitReasonCode.intValue());
        facilityInformation.setFacilityLastDeferredVisitReason(facilityLastDeferredVisitReason);
    }
}
Also used : LisTableFile(gov.ca.cwds.cals.persistence.model.lisfas.LisTableFile) UnitOfWork(io.dropwizard.hibernate.UnitOfWork)

Example 3 with UnitOfWork

use of io.dropwizard.hibernate.UnitOfWork in project cals-api by ca-cwds.

the class RFA1aFormService method find.

@UnitOfWork(CALSNS)
@Override
public RFA1aFormDTO find(RFA1aFormsParameterObject parameterObject) {
    RFA1aForm form = rfa1AFormsDao.find(parameterObject.getFormId());
    RFA1aFormDTO formDTO;
    if (parameterObject.isExpanded()) {
        formDTO = rfa1aFomMapper.toExpandedRFA1aFormDTO(form);
    } else {
        formDTO = rfa1aFomMapper.toRFA1aFormDTO(form);
    }
    return formDTO;
}
Also used : RFA1aFormDTO(gov.ca.cwds.cals.service.dto.rfa.RFA1aFormDTO) RFA1aForm(gov.ca.cwds.cals.persistence.model.calsns.rfa.RFA1aForm) UnitOfWork(io.dropwizard.hibernate.UnitOfWork)

Example 4 with UnitOfWork

use of io.dropwizard.hibernate.UnitOfWork in project API by ca-cwds.

the class CmsReferralService method create.

/**
   * {@inheritDoc}
   * 
   * @see gov.ca.cwds.rest.services.CrudsService#create(gov.ca.cwds.rest.api.Request)
   */
@UnitOfWork(value = "cms")
@Override
public Response create(Request request) {
    assert request instanceof CmsReferral;
    CmsReferral cmsReferral = (CmsReferral) request;
    PostedReferral referral = this.referralService.create(cmsReferral.getReferral());
    String referralId = referral.getId();
    List<String> clientIds = new ArrayList<>();
    int clientInst = 0;
    String sourceTableCode = "C";
    Set<ClientUc> resultClientUc = new LinkedHashSet<>();
    Set<PostedClient> postedClients = new LinkedHashSet<>();
    if (cmsReferral.getClient() != null && !cmsReferral.getClient().isEmpty()) {
        for (Client incomingClient : cmsReferral.getClient()) {
            PostedClient savedClient = null;
            if (incomingClient.getExistingClientId() != null) {
                savedClient = clientService.findInboundId(incomingClient.getExistingClientId());
            }
            if (savedClient == null) {
                Client client = new Client(incomingClient.getExistingClientId(), incomingClient.getAdjudicatedDelinquentIndicator(), incomingClient.getAdoptionStatusCode(), incomingClient.getAlienRegistrationNumber(), incomingClient.getBirthCity(), incomingClient.getBirthCountryCodeType(), incomingClient.getBirthDate(), incomingClient.getBirthFacilityName(), incomingClient.getBirthStateCodeType(), incomingClient.getBirthplaceVerifiedIndicator(), incomingClient.getChildClientIndicatorVar(), incomingClient.getClientIndexNumber(), incomingClient.getCommentDescription(), incomingClient.getCommonFirstName(), incomingClient.getCommonLastName(), incomingClient.getCommonMiddleName(), incomingClient.getConfidentialityActionDate(), incomingClient.getConfidentialityInEffectIndicator(), incomingClient.getCreationDate(), incomingClient.getCurrCaChildrenServIndicator(), incomingClient.getCurrentlyOtherDescription(), incomingClient.getCurrentlyRegionalCenterIndicator(), incomingClient.getDeathDate(), incomingClient.getDeathDateVerifiedIndicator(), incomingClient.getDeathPlace(), incomingClient.getDeathReasonText(), incomingClient.getDriverLicenseNumber(), incomingClient.getDriverLicenseStateCodeType(), incomingClient.getEmailAddress(), incomingClient.getEstimatedDobCode(), incomingClient.getEthUnableToDetReasonCode(), incomingClient.getFatherParentalRightTermDate(), incomingClient.getGenderCode(), incomingClient.getHealthSummaryText(), incomingClient.getHispUnableToDetReasonCode(), incomingClient.getHispanicOriginCode(), incomingClient.getImmigrationCountryCodeType(), incomingClient.getImmigrationStatusType(), incomingClient.getIncapacitatedParentCode(), incomingClient.getIndividualHealthCarePlanIndicator(), incomingClient.getLimitationOnScpHealthIndicator(), incomingClient.getLiterateCode(), incomingClient.getMaritalCohabitatnHstryIndicatorVar(), incomingClient.getMaritalStatusType(), incomingClient.getMilitaryStatusCode(), incomingClient.getMotherParentalRightTermDate(), incomingClient.getNamePrefixDescription(), incomingClient.getNameType(), incomingClient.getOutstandingWarrantIndicator(), incomingClient.getPrevCaChildrenServIndicator(), incomingClient.getPrevOtherDescription(), incomingClient.getPrevRegionalCenterIndicator(), incomingClient.getPrimaryEthnicityType(), incomingClient.getPrimaryLanguageType(), incomingClient.getReligionType(), incomingClient.getSecondaryLanguageType(), incomingClient.getSensitiveHlthInfoOnFileIndicator(), incomingClient.getSensitivityIndicator(), incomingClient.getSoc158PlacementCode(), incomingClient.getSoc158SealedClientIndicator(), incomingClient.getSocialSecurityNumChangedCode(), incomingClient.getSocialSecurityNumber(), incomingClient.getSuffixTitleDescription(), incomingClient.getTribalAncestryClientIndicatorVar(), incomingClient.getTribalMembrshpVerifctnIndicatorVar(), incomingClient.getUnemployedParentCode(), incomingClient.getZippyCreatedIndicator(), null);
                PostedClient postedclient = this.clientService.create(client);
                postedClients.add(postedclient);
                clientIds.add(postedclient.getId());
                if (postedclient.getCommonFirstName() != null) {
                    ClientUc clientUc = new ClientUc(postedclient.getId(), sourceTableCode, postedclient.getCommonFirstName().toUpperCase(), postedclient.getCommonLastName().toUpperCase(), postedclient.getCommonMiddleName().toUpperCase());
                    clientUc = this.clientUcService.create(clientUc);
                    resultClientUc.add(clientUc);
                }
            } else {
                clientIds.add(savedClient.getId());
                postedClients.add(savedClient);
            }
        }
    }
    Set<PostedAllegation> resultAllegation = new LinkedHashSet<>();
    if (cmsReferral.getAllegation() != null && !cmsReferral.getAllegation().isEmpty()) {
        for (Allegation incomingAllegation : cmsReferral.getAllegation()) {
            Allegation allegation = new Allegation(incomingAllegation.getAbuseEndDate(), incomingAllegation.getAbuseFrequency(), incomingAllegation.getAbuseFrequencyPeriodCode(), incomingAllegation.getAbuseLocationDescription(), incomingAllegation.getAbuseStartDate(), incomingAllegation.getAllegationDispositionType(), incomingAllegation.getAllegationType(), incomingAllegation.getDispositionDescription(), incomingAllegation.getDispositionDate(), incomingAllegation.getInjuryHarmDetailIndicator(), incomingAllegation.getNonProtectingParentCode(), incomingAllegation.getStaffPersonAddedIndicator(), incomingAllegation.getVictimClientId(), incomingAllegation.getPerpetratorClientId(), referralId, incomingAllegation.getCountySpecificCode(), incomingAllegation.getZippyCreatedIndicator(), incomingAllegation.getPlacementFacilityType());
            PostedAllegation postedallegation = this.allegationService.create(allegation);
            resultAllegation.add(postedallegation);
        }
    }
    Set<CrossReport> resultCrossReport = new LinkedHashSet<>();
    if (cmsReferral.getCrossReport() != null && !cmsReferral.getCrossReport().isEmpty()) {
        for (CrossReport incomingCrossReport : cmsReferral.getCrossReport()) {
            CrossReport crossReport = new CrossReport(incomingCrossReport.getThirdId(), incomingCrossReport.getCrossReportMethodType(), incomingCrossReport.getFiledOutOfStateIndicator(), incomingCrossReport.getGovernmentOrgCrossRptIndicatorVar(), incomingCrossReport.getInformTime(), incomingCrossReport.getRecipientBadgeNumber(), incomingCrossReport.getRecipientPhoneExtensionNumber(), incomingCrossReport.getRecipientPhoneNumber(), incomingCrossReport.getInformDate(), incomingCrossReport.getRecipientPositionTitleDesc(), incomingCrossReport.getReferenceNumber(), referralId, incomingCrossReport.getLawEnforcementId(), incomingCrossReport.getStaffPersonId(), incomingCrossReport.getDescription(), incomingCrossReport.getRecipientName(), incomingCrossReport.getOutStateLawEnforcementAddr(), incomingCrossReport.getCountySpecificCode(), incomingCrossReport.getLawEnforcementIndicator(), incomingCrossReport.getOutStateLawEnforcementIndicator(), incomingCrossReport.getSatisfyCrossReportIndicator());
            crossReport = this.crossReportService.create(crossReport);
            resultCrossReport.add(crossReport);
        }
    }
    Set<ReferralClient> resultReferralClient = new LinkedHashSet<>();
    if (cmsReferral.getReferralClient() != null && !cmsReferral.getReferralClient().isEmpty()) {
        for (ReferralClient incomingReferralClient : cmsReferral.getReferralClient()) {
            ReferralClient referralClient = new ReferralClient(incomingReferralClient.getApprovalNumber(), incomingReferralClient.getApprovalStatusType(), incomingReferralClient.getDispositionClosureReasonType(), incomingReferralClient.getDispositionCode(), incomingReferralClient.getDispositionDate(), incomingReferralClient.getSelfReportedIndicator(), incomingReferralClient.getStaffPersonAddedIndicator(), referralId, (String) clientIds.toArray()[clientInst], incomingReferralClient.getDispositionClosureDescription(), incomingReferralClient.getAgeNumber(), incomingReferralClient.getAgePeriodCode(), incomingReferralClient.getCountySpecificCode(), incomingReferralClient.getMentalHealthIssuesIndicator(), incomingReferralClient.getAlcoholIndicator(), incomingReferralClient.getDrugIndicator());
            referralClient = this.referralClientService.create(referralClient);
            resultReferralClient.add(referralClient);
            clientInst++;
        }
    }
    PostedReporter savedreporter = new PostedReporter();
    if (cmsReferral.getReporter() != null) {
        Reporter incomingReporter = cmsReferral.getReporter();
        Reporter reporter = new Reporter(incomingReporter.getBadgeNumber(), incomingReporter.getCityName(), incomingReporter.getColltrClientRptrReltnshpType(), incomingReporter.getCommunicationMethodType(), incomingReporter.getConfidentialWaiverIndicator(), incomingReporter.getDrmsMandatedRprtrFeedback(), incomingReporter.getEmployerName(), incomingReporter.getFeedbackDate(), incomingReporter.getFeedbackRequiredIndicator(), incomingReporter.getFirstName(), incomingReporter.getLastName(), incomingReporter.getMandatedReporterIndicator(), incomingReporter.getMessagePhoneExtensionNumber(), incomingReporter.getMessagePhoneNumber(), incomingReporter.getMiddleInitialName(), incomingReporter.getNamePrefixDescription(), incomingReporter.getPrimaryPhoneNumber(), incomingReporter.getPrimaryPhoneExtensionNumber(), incomingReporter.getStateCodeType(), incomingReporter.getStreetName(), incomingReporter.getStreetNumber(), incomingReporter.getSuffixTitleDescription(), incomingReporter.getZipcode(), referralId, incomingReporter.getLawEnforcementId(), incomingReporter.getZipSuffixNumber(), incomingReporter.getCountySpecificCode());
        PostedReporter postedreporter = this.reporterService.create(reporter);
        savedreporter = postedreporter;
    }
    return new PostedCmsReferral(referral, postedClients, resultAllegation, resultCrossReport, resultReferralClient, savedreporter);
}
Also used : PostedCmsReferral(gov.ca.cwds.rest.api.domain.cms.PostedCmsReferral) CmsReferral(gov.ca.cwds.rest.api.domain.cms.CmsReferral) LinkedHashSet(java.util.LinkedHashSet) PostedClient(gov.ca.cwds.rest.api.domain.cms.PostedClient) ClientUc(gov.ca.cwds.rest.api.domain.cms.ClientUc) PostedCmsReferral(gov.ca.cwds.rest.api.domain.cms.PostedCmsReferral) PostedReporter(gov.ca.cwds.rest.api.domain.cms.PostedReporter) Reporter(gov.ca.cwds.rest.api.domain.cms.Reporter) ArrayList(java.util.ArrayList) PostedReporter(gov.ca.cwds.rest.api.domain.cms.PostedReporter) CrossReport(gov.ca.cwds.rest.api.domain.cms.CrossReport) PostedReferral(gov.ca.cwds.rest.api.domain.cms.PostedReferral) PostedAllegation(gov.ca.cwds.rest.api.domain.cms.PostedAllegation) Allegation(gov.ca.cwds.rest.api.domain.cms.Allegation) Client(gov.ca.cwds.rest.api.domain.cms.Client) ReferralClient(gov.ca.cwds.rest.api.domain.cms.ReferralClient) PostedClient(gov.ca.cwds.rest.api.domain.cms.PostedClient) PostedAllegation(gov.ca.cwds.rest.api.domain.cms.PostedAllegation) ReferralClient(gov.ca.cwds.rest.api.domain.cms.ReferralClient) UnitOfWork(io.dropwizard.hibernate.UnitOfWork)

Example 5 with UnitOfWork

use of io.dropwizard.hibernate.UnitOfWork 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;
}
Also used : HashMap(java.util.HashMap) Participant(gov.ca.cwds.rest.api.domain.Participant) CrossReport(gov.ca.cwds.rest.api.domain.CrossReport) PostedScreeningToReferral(gov.ca.cwds.rest.api.domain.PostedScreeningToReferral) ScreeningToReferral(gov.ca.cwds.rest.api.domain.ScreeningToReferral) Allegation(gov.ca.cwds.rest.api.domain.Allegation) PostedAllegation(gov.ca.cwds.rest.api.domain.cms.PostedAllegation) ErrorMessage(gov.ca.cwds.rest.api.domain.error.ErrorMessage) PostedScreeningToReferral(gov.ca.cwds.rest.api.domain.PostedScreeningToReferral) HashSet(java.util.HashSet) UnitOfWork(io.dropwizard.hibernate.UnitOfWork)

Aggregations

UnitOfWork (io.dropwizard.hibernate.UnitOfWork)7 RFA1aForm (gov.ca.cwds.cals.persistence.model.calsns.rfa.RFA1aForm)2 LisTableFile (gov.ca.cwds.cals.persistence.model.lisfas.LisTableFile)2 PostedAllegation (gov.ca.cwds.rest.api.domain.cms.PostedAllegation)2 LisFacFile (gov.ca.cwds.cals.persistence.model.lisfas.LisFacFile)1 RFA1aFormDTO (gov.ca.cwds.cals.service.dto.rfa.RFA1aFormDTO)1 ApiException (gov.ca.cwds.rest.api.ApiException)1 Allegation (gov.ca.cwds.rest.api.domain.Allegation)1 CrossReport (gov.ca.cwds.rest.api.domain.CrossReport)1 Participant (gov.ca.cwds.rest.api.domain.Participant)1 Person (gov.ca.cwds.rest.api.domain.Person)1 PostedPerson (gov.ca.cwds.rest.api.domain.PostedPerson)1 PostedScreeningToReferral (gov.ca.cwds.rest.api.domain.PostedScreeningToReferral)1 ScreeningToReferral (gov.ca.cwds.rest.api.domain.ScreeningToReferral)1 Allegation (gov.ca.cwds.rest.api.domain.cms.Allegation)1 Client (gov.ca.cwds.rest.api.domain.cms.Client)1 ClientUc (gov.ca.cwds.rest.api.domain.cms.ClientUc)1 CmsReferral (gov.ca.cwds.rest.api.domain.cms.CmsReferral)1 CrossReport (gov.ca.cwds.rest.api.domain.cms.CrossReport)1 PostedClient (gov.ca.cwds.rest.api.domain.cms.PostedClient)1