public bool IsAwarded_AnyNot0(int pAcceptancesMissing, int pCountriesMissing, int pAwardsMissing, int pDistinctImagesMissing, int pSalonsMissing, int pPrintsMissing) { // Arrange var lRow = new PersonAwardTableRowDto { AwardName = "name", AcceptancesMissing = pAcceptancesMissing, CountriesMissing = pCountriesMissing, AwardsMissing = pAwardsMissing, DistinctImagesMissing = pDistinctImagesMissing, SalonsMissing = pSalonsMissing, PrintsMissing = pPrintsMissing }; // Assert return(lRow.IsAwarded); }
public async Task <PersonAwardTableDto> GetAwardLevelsForPerson(int pPersonId) { var lPhotoOrganisationsTask = this._photoOrganisationRepository.GetAllWithAwards(); var lPersonTask = this._personRepository.GetWithSubmissionsSalonsAccreditationSections(pPersonId); await Task.WhenAll(lPhotoOrganisationsTask, lPersonTask); var lPerson = lPersonTask.Result; var lPhotoOrgs = lPhotoOrganisationsTask.Result; var lPersonAwardTable = new PersonAwardTableDto { PersonName = lPerson.Name }; foreach (var lOrg in lPhotoOrgs) { if (lOrg.EnableSectionTypes == false) { // FIAP style add all acceptances var lTableOrg = new PersonAwardTableOrgDto { OrginisationName = lOrg.Name }; foreach (var lOrgAward in lOrg.AwardLevels) { var lPersonAwardRow = new PersonAwardTableRowDto { AwardName = lOrgAward.Name, AcceptancesMissing = GetAcceptances(lPerson.Submissions, lOrgAward.MinimumAcceptances, lOrg.Id), AcceptancesRequired = lOrgAward.MinimumAcceptances, AwardsMissing = GetAwards(lPerson.Submissions, lOrgAward.MinimumAwards, lOrg.Id), AwardsRequired = lOrgAward.MinimumAwards, CountriesMissing = GetCountries(lPerson.Submissions, lOrgAward.MinimumCountries, lOrg.Id), CountriesRequired = lOrgAward.MinimumCountries, DistinctImagesMissing = GetDistinctImages(lPerson.Submissions, lOrgAward.MinimumDistinctImages, lOrg.Id), DistinctImagesRequired = lOrgAward.MinimumDistinctImages, PrintsMissing = GetPrints(lPerson.Submissions, lOrgAward.MinimumPrints, lOrg.Id), PrintsRequired = lOrgAward.MinimumPrints, SalonsMissing = GetSalons(lPerson.Submissions, lOrgAward.MinimumSalons, lOrg.Id), SalonsRequired = lOrgAward.MinimumSalons, }; lTableOrg.Awards.Add(lPersonAwardRow); } lPersonAwardTable.Organisations.Add(lTableOrg); } else { // PSA style, group by section type List <string> lSectionTypeCodes = await this._sectionTypeRepository.FetchSectionTypeCodes(); foreach (var lSectionTypeCode in lSectionTypeCodes) { var lTableOrg = new PersonAwardTableOrgDto { OrginisationName = lOrg.Name + " " + lSectionTypeCode }; foreach (var lOrgAward in lOrg.AwardLevels) { var lPersonAwardRow = new PersonAwardTableRowDto { AwardName = lOrgAward.Name, AcceptancesMissing = GetAcceptances(lPerson.Submissions, lOrgAward.MinimumAcceptances, lOrg.Id, lSectionTypeCode), AcceptancesRequired = lOrgAward.MinimumAcceptances, AwardsMissing = GetAwards(lPerson.Submissions, lOrgAward.MinimumAwards, lOrg.Id), AwardsRequired = lOrgAward.MinimumAwards, CountriesMissing = GetCountries(lPerson.Submissions, lOrgAward.MinimumCountries, lOrg.Id), CountriesRequired = lOrgAward.MinimumCountries, DistinctImagesMissing = GetDistinctImages(lPerson.Submissions, lOrgAward.MinimumDistinctImages, lOrg.Id, lSectionTypeCode), DistinctImagesRequired = lOrgAward.MinimumDistinctImages, PrintsMissing = GetPrints(lPerson.Submissions, lOrgAward.MinimumPrints, lOrg.Id), PrintsRequired = lOrgAward.MinimumPrints, SalonsMissing = GetSalons(lPerson.Submissions, lOrgAward.MinimumSalons, lOrg.Id), SalonsRequired = lOrgAward.MinimumSalons, }; lTableOrg.Awards.Add(lPersonAwardRow); } lPersonAwardTable.Organisations.Add(lTableOrg); } } } return(lPersonAwardTable); }