private async Task <BenefitDialogViewModel> GetBenefitIds(BenefitForType listFor, string listForId) { var benefits = new BenefitDialogViewModel(); switch (listFor) { case BenefitForType.Personnel: var personnel = await _personnelService.GetModelById(listForId); benefits.BenefitsTitle = personnel.BenefitsTitle; benefits.BenefitIds = personnel.Benefits; break; case BenefitForType.ActorOrganisation: var orgs = await _actorOrganisationService.GetModelById(listForId); benefits.BenefitsTitle = orgs.BenefitsTitle; benefits.BenefitIds = orgs.Benefits; break; default: throw new BenefitForException(listFor.ToString()); } return(benefits); }
public async Task <BenefitDialogViewModel> GetForCategorised(BenefitForType listFor, string listForId) { var benefitsDialog = await GetFor(listFor, listForId); if (benefitsDialog == null) { return(null); } benefitsDialog.Benefits = ParseBenefits(benefitsDialog.Benefits["All"]); return(benefitsDialog); }
public async Task <BenefitDialogViewModel> GetFor(BenefitForType listFor, string listForId) { var benefitsDialog = await GetBenefitIds(listFor, listForId); if (benefitsDialog.BenefitIds == null || benefitsDialog.BenefitIds.Count() == 0) { return(null); } var benefits = await _benefitsService.GetByIdList(benefitsDialog.BenefitIds); benefitsDialog.Benefits = new Dictionary <string, IList <BenefitViewModel> > { { "All", benefits } }; return(benefitsDialog); }