private void HydrateSectorDetailsWhatTypeOfTrainingDelivered(AssessorSectorDetails sectorDetails, AssessorPage pageTypeOfTraining, SectorQuestionIds sectorPageIds) { if (pageTypeOfTraining?.Answers == null || !pageTypeOfTraining.Answers.Any()) { return; } sectorDetails.WhatTypeOfTrainingDelivered = _extractAnswerValueService.ExtractAnswerValueFromQuestionId( pageTypeOfTraining.Answers, sectorPageIds.WhatTypeOfTrainingDelivered); }
public async Task GetSectorDetails_returns_expected_sectordetails() { var expectedResult = new AssessorSectorDetails(); _sectorDetailsService.Setup(x => x.GetSectorDetails(_applicationId, _pageId)).ReturnsAsync(expectedResult); var actualResult = await _controller.GetSectorDetails(_applicationId, _pageId); _sectorDetailsService.Verify(x => x.GetSectorDetails(_applicationId, _pageId), Times.Once); Assert.AreSame(actualResult, expectedResult); }
private void HydrateSectorDetailsWithFullNameJobRoleTimeInRole(AssessorPage page4NameRoleExperience, AssessorSectorDetails sectorDetails, SectorQuestionIds sectorPageIds) { if (page4NameRoleExperience?.Answers == null || !page4NameRoleExperience.Answers.Any()) { return; } sectorDetails.FirstName = _extractAnswerValueService.ExtractAnswerValueFromQuestionId(page4NameRoleExperience.Answers, sectorPageIds.FirstName); sectorDetails.LastName = _extractAnswerValueService.ExtractAnswerValueFromQuestionId(page4NameRoleExperience.Answers, sectorPageIds.LastName); sectorDetails.JobRole = _extractAnswerValueService.ExtractAnswerValueFromQuestionId(page4NameRoleExperience.Answers, sectorPageIds.JobRole); sectorDetails.TimeInRole = _extractAnswerValueService.ExtractAnswerValueFromQuestionId(page4NameRoleExperience.Answers, sectorPageIds.TimeInRole); sectorDetails.IsPartOfAnyOtherOrganisations = _extractAnswerValueService.ExtractAnswerValueFromQuestionId(page4NameRoleExperience.Answers, sectorPageIds.IsPartOfAnyOtherOrganisations); sectorDetails.OtherOrganisations = _extractAnswerValueService.ExtractFurtherQuestionAnswerValueFromQuestionId(page4NameRoleExperience, sectorPageIds.IsPartOfAnyOtherOrganisations); var dateOfBirth = _extractAnswerValueService.ExtractAnswerValueFromQuestionId(page4NameRoleExperience.Answers, sectorPageIds.DateOfBirth); sectorDetails.DateOfBirth = DateOfBirthFormatter.GetMonthYearDescription(dateOfBirth); sectorDetails.Email = _extractAnswerValueService.ExtractAnswerValueFromQuestionId(page4NameRoleExperience.Answers, sectorPageIds.Email); sectorDetails.ContactNumber = _extractAnswerValueService.ExtractAnswerValueFromQuestionId(page4NameRoleExperience.Answers, sectorPageIds.ContactNumber); }
private void HydrateSectorDetailsWithWhatStandardsOffered(AssessorPage pageWhatStandardsOffered, AssessorSectorDetails sectorDetails, SectorQuestionIds sectorPageIds) { if (pageWhatStandardsOffered?.Answers == null || !pageWhatStandardsOffered.Answers.Any()) { return; } sectorDetails.WhatStandardsOffered = _extractAnswerValueService.ExtractAnswerValueFromQuestionId(pageWhatStandardsOffered.Answers, sectorPageIds.WhatStandardsOffered); }
public async Task <AssessorSectorDetails> GetSectorDetails(Guid applicationId, string pageId) { var sectorDetails = new AssessorSectorDetails { SectorName = _lookupService.GetSectorNameForPage(pageId) }; var sectorPageIds = _lookupService.GetSectorQuestionIdsForSectorPageId(pageId); if (sectorPageIds == null) { return(null); } var sequenceNumber = RoatpWorkflowSequenceIds.DeliveringApprenticeshipTraining; var sectionNumber = RoatpWorkflowSectionIds.DeliveringApprenticeshipTraining.YourSectorsAndEmployees; var pageExperienceQualificationsMemberships = new AssessorPage(); var pageTypeOfTraining = new AssessorPage(); var pageWhatStandardsOffered = await _pageService.GetPage(applicationId, sequenceNumber, sectionNumber, pageId); if (pageWhatStandardsOffered == null) { return(null); } HydrateSectorDetailsWithWhatStandardsOffered(pageWhatStandardsOffered, sectorDetails, sectorPageIds); var pageHowManyStarts = await _pageService.GetPage(applicationId, sequenceNumber, sectionNumber, pageWhatStandardsOffered.NextPageId); HydrateSectorDetailsWithHowManyStarts(pageHowManyStarts, sectorDetails, sectorPageIds); var pageHowManyEmployees = await _pageService.GetPage(applicationId, sequenceNumber, sectionNumber, pageHowManyStarts.NextPageId); HydrateSectorDetailsWithHowManyEmployees(pageHowManyEmployees, sectorDetails, sectorPageIds); var pageNameRoleExperience = await _pageService.GetPage(applicationId, sequenceNumber, sectionNumber, pageHowManyEmployees.NextPageId); HydrateSectorDetailsWithFullNameJobRoleTimeInRole(pageNameRoleExperience, sectorDetails, sectorPageIds); if (!string.IsNullOrEmpty(pageNameRoleExperience.NextPageId)) { pageExperienceQualificationsMemberships = await _pageService.GetPage(applicationId, sequenceNumber, sectionNumber, pageNameRoleExperience.NextPageId); HydrateSectorDetailsWithQualificationsAwardingBodiesAndTradeMemberships(sectorDetails, pageExperienceQualificationsMemberships, sectorPageIds); } if (!string.IsNullOrEmpty(pageExperienceQualificationsMemberships.NextPageId)) { pageTypeOfTraining = await _pageService.GetPage(applicationId, sequenceNumber, sectionNumber, pageExperienceQualificationsMemberships.NextPageId); HydrateSectorDetailsWhatTypeOfTrainingDelivered(sectorDetails, pageTypeOfTraining, sectorPageIds); } if (!string.IsNullOrEmpty(pageTypeOfTraining.NextPageId)) { var pageHowDeliveredAndDuration = await _pageService.GetPage(applicationId, sequenceNumber, sectionNumber, pageTypeOfTraining.NextPageId); HydrateSectorDetailsWithHowTrainingIsDeliveredDetails(pageHowDeliveredAndDuration, sectorPageIds, sectorDetails); } return(sectorDetails); }
private void HydrateSectorDetailsWithHowTrainingIsDeliveredDetails(AssessorPage pageHowDeliveredAndDuration, SectorQuestionIds sectorPageIds, AssessorSectorDetails sectorDetails) { if (pageHowDeliveredAndDuration?.Answers == null || !pageHowDeliveredAndDuration.Answers.Any()) { return; } var howHaveTheyDelivered = _extractAnswerValueService.ExtractAnswerValueFromQuestionId(pageHowDeliveredAndDuration.Answers, sectorPageIds.HowHaveTheyDeliveredTraining); var otherIsHowTheyDelivered = RoatpWorkflowPageIds.DeliveringApprenticeshipTraining.DeliveringTrainingOther; if (howHaveTheyDelivered.Contains(otherIsHowTheyDelivered)) { var otherWords = _extractAnswerValueService.ExtractAnswerValueFromQuestionId(pageHowDeliveredAndDuration.Answers, sectorPageIds.HowHaveTheyDeliveredTrainingOther); howHaveTheyDelivered = howHaveTheyDelivered.Replace(otherIsHowTheyDelivered, otherWords.Replace(",", ",")); } sectorDetails.HowHaveTheyDeliveredTraining = howHaveTheyDelivered; sectorDetails.ExperienceOfDeliveringTraining = _extractAnswerValueService.ExtractAnswerValueFromQuestionId( pageHowDeliveredAndDuration.Answers, sectorPageIds.ExperienceOfDeliveringTraining); sectorDetails.TypicalDurationOfTraining = _extractAnswerValueService.ExtractAnswerValueFromQuestionId( pageHowDeliveredAndDuration.Answers, sectorPageIds.TypicalDurationOfTraining); }
private void HydrateSectorDetailsWithQualificationsAwardingBodiesAndTradeMemberships(AssessorSectorDetails sectorDetails, AssessorPage page5ExperienceQualificationsMemberships, SectorQuestionIds sectorPageIds) { if (page5ExperienceQualificationsMemberships?.Answers == null || !page5ExperienceQualificationsMemberships.Answers.Any()) { return; } sectorDetails.ExperienceOfDelivering = _extractAnswerValueService.ExtractAnswerValueFromQuestionId( page5ExperienceQualificationsMemberships.Answers, sectorPageIds.ExperienceOfDelivering); sectorDetails.WhereDidTheyGainThisExperience = _extractAnswerValueService.ExtractFurtherQuestionAnswerValueFromQuestionId( page5ExperienceQualificationsMemberships, sectorPageIds.ExperienceOfDelivering); sectorDetails.DoTheyHaveQualifications = _extractAnswerValueService.ExtractAnswerValueFromQuestionId( page5ExperienceQualificationsMemberships.Answers, sectorPageIds.DoTheyHaveQualifications); sectorDetails.WhatQualificationsDoTheyHave = _extractAnswerValueService.ExtractFurtherQuestionAnswerValueFromQuestionId( page5ExperienceQualificationsMemberships, sectorPageIds.DoTheyHaveQualifications); sectorDetails.ApprovedByAwardingBodies = _extractAnswerValueService.ExtractAnswerValueFromQuestionId( page5ExperienceQualificationsMemberships.Answers, sectorPageIds.AwardingBodies); sectorDetails.NamesOfAwardingBodies = _extractAnswerValueService.ExtractFurtherQuestionAnswerValueFromQuestionId( page5ExperienceQualificationsMemberships, sectorPageIds.AwardingBodies); sectorDetails.DoTheyHaveTradeBodyMemberships = _extractAnswerValueService.ExtractAnswerValueFromQuestionId( page5ExperienceQualificationsMemberships.Answers, sectorPageIds.TradeMemberships); sectorDetails.NamesOfTradeBodyMemberships = _extractAnswerValueService.ExtractFurtherQuestionAnswerValueFromQuestionId( page5ExperienceQualificationsMemberships, sectorPageIds.TradeMemberships); }
private void HydrateSectorDetailsWithHowManyEmployees(AssessorPage pageHowManyEmployees, AssessorSectorDetails sectorDetails, SectorQuestionIds sectorPageIds) { if (pageHowManyEmployees?.Answers == null || !pageHowManyEmployees.Answers.Any()) { return; } sectorDetails.HowManyEmployees = _extractAnswerValueService.ExtractAnswerValueFromQuestionId(pageHowManyEmployees.Answers, sectorPageIds.HowManyEmployees); }