Пример #1
0
        private IQueryable <HerdGeoLog> GetFilteredQuery(GetHerdGeoLogInput input)
        {
            var query = QueryableExtensions.WhereIf(
                _herdGeoLogRepository.GetAll()
                .Include(x => x.Herd)
                .Include(x => x.Officer),
                !input.Filter.IsNullOrWhiteSpace(), u =>
                u.Officer.Name.Contains(input.Filter) ||
                u.Officer.Family.Contains(input.Filter) ||
                u.Herd.HerdName.Contains(input.Filter) ||
                u.Herd.FirmName.Contains(input.Filter));

            return(query);
        }
Пример #2
0
        public async Task <PagedResultDto <HerdGeoLogListDto> > GetHerdGeoLog(GetHerdGeoLogInput input)
        {
            var query     = GetFilteredQuery(input);
            var userCount = await query.CountAsync();

            var herdGeoLogs = await query
                              .OrderBy(input.Sorting)
                              .PageBy(input)
                              .ToListAsync();

            var herdGeoLogsListDto = ObjectMapper.Map <List <HerdGeoLogListDto> >(herdGeoLogs);

            return(new PagedResultDto <HerdGeoLogListDto>(
                       userCount,
                       herdGeoLogsListDto
                       ));
        }