public async Task <PagedResultDto <UserAdvertisingDto> > GetListAsync(UserAdvertisingListInput input) { var totalCount = await _repository.GetCountAsync(input.UserId, input.CreatedAfter, input.CreatedBefore, input.ExpireAfter, input.ExpireBefore); var list = await _repository.GetListAsync(input.Sorting, input.MaxResultCount, input.SkipCount, input.UserId, input.CreatedAfter, input.CreatedBefore, input.ExpireAfter, input.ExpireBefore); var itemIds = list.Select(q => q.AdvertisingItemId).ToList(); var adItems = await _advertisingItemRepository.GetByIdsAsync(itemIds); var ads = ObjectMapper.Map <List <UserAdvertising>, List <UserAdvertisingDto> >(list); ads.ForEach(x => { var adItem = adItems.FirstOrDefault(x => x.Id == x.AdvertisingId); x.AdvertisingItem = ObjectMapper.Map <AdvertisingItem, AdvertisingItemDto>(adItem); }); return(new PagedResultDto <UserAdvertisingDto>( totalCount, ads )); }
public Task <PagedResultDto <UserAdvertisingDto> > GetListAsync(UserAdvertisingListInput input) { return(_service.GetListAsync(input)); }