private PrintingEditionsInfoModel GetInfo(PrintingEditionFilterModel printingEditionFilter = null, int pageSize = Constants.PRINTINGEDITIONPAGESIZE) { int dbPrintingEditionsCount = _printingEditionRepository.GetCount(printingEditionFilter); int pageCount = (int)Math.Ceiling(dbPrintingEditionsCount / (double)pageSize); var filter = new PrintingEditionFilterModel { Title = printingEditionFilter.Title, Type = printingEditionFilter.Type }; var dbPrintingEditions = _printingEditionRepository.GetAll(filter).ToList(); decimal min = default; decimal max = default; if (dbPrintingEditions.Any()) { min = dbPrintingEditions.Aggregate((currentMin, x) => (currentMin == null || x.Price < currentMin.Price ? x : currentMin)).Price; max = dbPrintingEditions.Aggregate((currentMax, x) => (currentMax == null || x.Price > currentMax.Price ? x : currentMax)).Price; } return(new PrintingEditionsInfoModel { MaxPrice = max, MinPrice = min, PageCount = pageCount }); }
public async Task <IEnumerable <PrintingEditionViewModel> > GetAll() { IEnumerable <PrintingEdition> printingEditions = await _printEditRepository.GetAll(); var modelsList = new List <PrintingEditionViewModel>(); foreach (PrintingEdition printEdition in printingEditions) { PrintingEditionViewModel model = _mapper.Map <PrintingEditionViewModel>(printEdition); modelsList.Add(model); } return(modelsList); }