Ejemplo n.º 1
0
        public IHttpActionResult SaveAdult([FromBody] AdultApplicationDto application)
        {
            if (ModelState.IsValid)
            {
                return(Authorized(token =>
                {
                    try
                    {
                        _volunteerApplicationService.SaveAdult(application);
                    }
                    catch (Exception exception)
                    {
                        var apiError = new ApiErrorDto("Volunteer Application POST Failed", exception);
                        throw new HttpResponseException(apiError.HttpResponseMessage);
                    }
                    return Ok();
                }));
            }

            var errors    = ModelState.Values.SelectMany(val => val.Errors).Aggregate("", (current, err) => current + err.ErrorMessage + " ");
            var dataError = new ApiErrorDto("SaveAdult Data Invalid", new InvalidOperationException("Invalid SaveAdult Data" + errors));

            throw new HttpResponseException(dataError.HttpResponseMessage);
        }
Ejemplo n.º 2
0
        public bool SaveAdult(AdultApplicationDto application)
        {
            var formId = _configurationWrapper.GetConfigIntValue("KidsClubAdultApplicant");
            var opportunityResponseId = application.ResponseOpportunityId;

            _formFields = _formSubmissionService.GetFieldsForForm(formId);

            var formResponse = new MpFormResponse();

            formResponse.ContactId             = application.ContactId;     //contact id of the person the application is for
            formResponse.FormId                = formId;
            formResponse.OpportunityId         = application.OpportunityId; // we know this from CMS
            formResponse.OpportunityResponseId = opportunityResponseId;

            formResponse.FormAnswers.Add(SetCustomField(application.FirstName, opportunityResponseId));
            formResponse.FormAnswers.Add(SetCustomField(application.LastName, opportunityResponseId));
            formResponse.FormAnswers.Add(SetCustomField(application.MiddleInitial, opportunityResponseId));
            formResponse.FormAnswers.Add(SetCustomField(application.Email, opportunityResponseId));
            formResponse.FormAnswers.Add(SetCustomField(application.BirthDate, opportunityResponseId));
            formResponse.FormAnswers.Add(SetCustomField(application.PreviousName, opportunityResponseId));
            formResponse.FormAnswers.Add(SetCustomField(application.NameForNameTag, opportunityResponseId));
            formResponse.FormAnswers.Add(SetCustomField(TranslateGender(application.Gender), opportunityResponseId));
            formResponse.FormAnswers.Add(SetCustomField(TranslateMaritalStatus(application.MaritalStatus),
                                                        opportunityResponseId));
            formResponse.FormAnswers.Add(SetCustomField(application.SpouseName, opportunityResponseId));
            formResponse.FormAnswers.Add(SetCustomField(application.SpouseGender, opportunityResponseId));
            formResponse.FormAnswers.Add(SetCustomField(application.HowLongAttending, opportunityResponseId));
            formResponse.FormAnswers.Add(SetCustomField(application.WhatServiceDoYouAttend, opportunityResponseId));
            formResponse.FormAnswers.Add(SetCustomField(application.StreetAddress, opportunityResponseId));
            formResponse.FormAnswers.Add(SetCustomField(application.City, opportunityResponseId));
            formResponse.FormAnswers.Add(SetCustomField(application.State, opportunityResponseId));
            formResponse.FormAnswers.Add(SetCustomField(application.Zip, opportunityResponseId));
            formResponse.FormAnswers.Add(SetCustomField(application.MobilePhone, opportunityResponseId));
            formResponse.FormAnswers.Add(SetCustomField(application.HomePhone, opportunityResponseId));

            formResponse.FormAnswers.Add(SetCustomField(application.CompanyName, opportunityResponseId));
            formResponse.FormAnswers.Add(SetCustomField(application.Position, opportunityResponseId));
            formResponse.FormAnswers.Add(SetCustomField(application.WorkPhone, opportunityResponseId));

            formResponse.FormAnswers.Add(SetCustomField(application.Child1Name, opportunityResponseId));
            formResponse.FormAnswers.Add(SetCustomField(application.Child1Birthdate, opportunityResponseId));
            formResponse.FormAnswers.Add(SetCustomField(application.Child2Name, opportunityResponseId));
            formResponse.FormAnswers.Add(SetCustomField(application.Child2Birthdate, opportunityResponseId));
            formResponse.FormAnswers.Add(SetCustomField(application.Child3Name, opportunityResponseId));
            formResponse.FormAnswers.Add(SetCustomField(application.Child3Birthdate, opportunityResponseId));
            formResponse.FormAnswers.Add(SetCustomField(application.Child4Name, opportunityResponseId));
            formResponse.FormAnswers.Add(SetCustomField(application.Child4Birthdate, opportunityResponseId));

            formResponse.FormAnswers.Add(SetCustomField(application.EverBeenArrest, opportunityResponseId));
            formResponse.FormAnswers.Add(SetCustomField(application.AddictionConcern, opportunityResponseId));
            formResponse.FormAnswers.Add(SetCustomField(application.NeglectingChild, opportunityResponseId));
            formResponse.FormAnswers.Add(SetCustomField(application.PsychiatricDisorder, opportunityResponseId));
            formResponse.FormAnswers.Add(SetCustomField(application.SexuallyActiveOutsideMarriage, opportunityResponseId));

            formResponse.FormAnswers.Add(SetCustomField(application.ReligionSearchingForAnswers, opportunityResponseId));
            formResponse.FormAnswers.Add(SetCustomField(application.ReligionReceivedJesus, opportunityResponseId));
            formResponse.FormAnswers.Add(SetCustomField(application.ReligionFocusingOnObedience, opportunityResponseId));
            formResponse.FormAnswers.Add(SetCustomField(application.ReligionReplicating, opportunityResponseId));
            formResponse.FormAnswers.Add(SetCustomField(application.SpiritualOrientationExplain, opportunityResponseId));

            formResponse.FormAnswers.Add(SetCustomField(application.WhatPromptedApplication, opportunityResponseId));
            formResponse.FormAnswers.Add(SetCustomField(application.SpecialTalents, opportunityResponseId));


            formResponse.FormAnswers.Add(SetCustomField(application.AvailabilityWeek, opportunityResponseId));
            formResponse.FormAnswers.Add(SetCustomField(application.AvailabilityWeekend, opportunityResponseId));
            formResponse.FormAnswers.Add(SetCustomField(application.AvailabilityWeekendSite, opportunityResponseId));

            formResponse.FormAnswers.Add(SetCustomField(application.AreaOfInterestServingInClassroom,
                                                        opportunityResponseId));
            formResponse.FormAnswers.Add(SetCustomField(application.AreaOfInterestWelcomingNewFamilies,
                                                        opportunityResponseId));
            formResponse.FormAnswers.Add(SetCustomField(application.AreaOfInterestHelpSpecialNeeds,
                                                        opportunityResponseId));
            formResponse.FormAnswers.Add(SetCustomField(application.AreaOfInterestTech, opportunityResponseId));
            formResponse.FormAnswers.Add(SetCustomField(application.AreaOfInterestRoomPrep, opportunityResponseId));
            formResponse.FormAnswers.Add(SetCustomField(application.AreaOfInterestAdminTasks, opportunityResponseId));
            formResponse.FormAnswers.Add(SetCustomField(application.AreaOfInterestShoppingForSupplies,
                                                        opportunityResponseId));
            formResponse.FormAnswers.Add(SetCustomField(application.AreaOfInterestCreatingWeekendExperience,
                                                        opportunityResponseId));

            formResponse.FormAnswers.Add(SetCustomField(application.WhatAgeBirthToTwo, opportunityResponseId));
            formResponse.FormAnswers.Add(SetCustomField(application.WhatAgeThreeToPreK, opportunityResponseId));
            formResponse.FormAnswers.Add(SetCustomField(application.WhatAgeKToFifth, opportunityResponseId));

            formResponse.FormAnswers.Add(SetCustomField(application.Reference1Name, opportunityResponseId));
            formResponse.FormAnswers.Add(SetCustomField(application.Reference1TimeKnown, opportunityResponseId));
            formResponse.FormAnswers.Add(SetCustomField(application.Reference1HomePhone, opportunityResponseId));
            formResponse.FormAnswers.Add(SetCustomField(application.Reference1MobilePhone, opportunityResponseId));
            formResponse.FormAnswers.Add(SetCustomField(application.Reference1WorkPhone, opportunityResponseId));
            formResponse.FormAnswers.Add(SetCustomField(application.Reference1Email, opportunityResponseId));
            formResponse.FormAnswers.Add(SetCustomField(application.Reference1Association, opportunityResponseId));
            formResponse.FormAnswers.Add(SetCustomField(application.Reference1Occupation, opportunityResponseId));

            formResponse.FormAnswers.Add(SetCustomField(application.Reference2Name, opportunityResponseId));
            formResponse.FormAnswers.Add(SetCustomField(application.Reference2TimeKnown, opportunityResponseId));
            formResponse.FormAnswers.Add(SetCustomField(application.Reference2HomePhone, opportunityResponseId));
            formResponse.FormAnswers.Add(SetCustomField(application.Reference2MobilePhone, opportunityResponseId));
            formResponse.FormAnswers.Add(SetCustomField(application.Reference2WorkPhone, opportunityResponseId));
            formResponse.FormAnswers.Add(SetCustomField(application.Reference2Email, opportunityResponseId));
            formResponse.FormAnswers.Add(SetCustomField(application.Reference2Association, opportunityResponseId));
            formResponse.FormAnswers.Add(SetCustomField(application.Reference2Occupation, opportunityResponseId));

            formResponse.FormAnswers.Add(SetCustomField(application.Reference3Name, opportunityResponseId));
            formResponse.FormAnswers.Add(SetCustomField(application.Reference3TimeKnown, opportunityResponseId));
            formResponse.FormAnswers.Add(SetCustomField(application.Reference3HomePhone, opportunityResponseId));
            formResponse.FormAnswers.Add(SetCustomField(application.Reference3MobilePhone, opportunityResponseId));
            formResponse.FormAnswers.Add(SetCustomField(application.Reference3WorkPhone, opportunityResponseId));
            formResponse.FormAnswers.Add(SetCustomField(application.Reference3Email, opportunityResponseId));
            formResponse.FormAnswers.Add(SetCustomField(application.Reference3Association, opportunityResponseId));
            formResponse.FormAnswers.Add(SetCustomField(application.Reference3Occupation, opportunityResponseId));

            formResponse.FormAnswers.Add(SetCustomField(application.Agree, opportunityResponseId));
            formResponse.FormAnswers.Add(SetCustomField(application.AgreeDate, opportunityResponseId));

            var response = _formSubmissionService.SubmitFormResponse(formResponse);

            return(response != 0);
        }