public async Task <IList <Domain.Entities.Unit> > Search(SearchQueryUnit searchQuery) { using (var context = await _dbContextFactory.CreateDbContext()) { var query = context.Units .Include(unit => unit.OrgUnitVerifications) .Where(u => !u.IsDeleted); if (searchQuery.UnitTypes.Any()) { query = query.Where(u => searchQuery.UnitTypes.Contains((int)u.Type)); } if (searchQuery.UnitIds.Any()) { query = query.Where(u => searchQuery.UnitIds.Contains(u.Id)); } var units = query .OrderBy(u => u.Name) .Skip(searchQuery.Skip ?? SearchConstants.DEFAULT_SKIP) .Take(searchQuery.Take ?? SearchConstants.DEFAULT_TAKE) .AsNoTracking() .ToList(); return(_mapper.Map <IList <Domain.Entities.Unit> >(units)); } }
public async Task <ActionResult <IEnumerable <Unit> > > Search([FromQuery] SearchQueryUnit query) { var domainEntity = _mapper.Map <Common.Api.Domain.Entities.SearchQueryUnit>(query); var unitsResult = await _unitService.Search(domainEntity); var unitsResultContracts = _mapper.Map <IEnumerable <domain.Unit>, IEnumerable <contracts.Unit> >(unitsResult); return(Ok(unitsResultContracts)); }
public async Task <IEnumerable <Unit> > SearchUnits(SearchQueryUnit searchQuery) { return(await Request <IEnumerable <Unit> >($"{_customerIdService.GetCustomerId()}/units?{WebUtility.GetQueryString(searchQuery)}")); }
public async Task <IEnumerable <Unit> > Search(SearchQueryUnit query) { return(await _repository.Search(query)); }