public async Task <ListResultDto <LocationListDto> > GetLocations(GetLocationInput input) { var items = await _locationManager.Locations .Where(x => (!input.Keyword.IsNullOrWhiteSpace())?x.Name.Contains(input.Keyword) : true) .Select(x => new LocationListDto { Id = x.Id, Name = x.Name, Address = x.Address, Postcode = x.Postcode, State = new StateDto { Id = x.State.Id, StateName = x.State.StateName }, City = new CityDto { CityName = x.City.CityName }, CoverPictureId = x.CoverPictureId ?? 0, Remarks = x.Remarks }) .OrderBy(x => x.Name) .ToListAsync(); return(new ListResultDto <LocationListDto>(items)); }
public async Task <PagedResultDto <LocationListDto> > GetLocation(GetLocationInput input) { var query = _locationRepository.GetAll() .WhereIf(!input.Filter.IsNullOrEmpty(), p => p.LocationCode.Contains(input.Filter) || p.LocationName.Contains(input.Filter)); var location = (from a in query select new LocationListDto { Id = a.Id, LocationName = a.LocationName, LocationCode = a.LocationCode, CityId = a.citys.Id, CityName = a.citys.CityName }); var locationCount = await location.CountAsync(); var locationlist = await location .OrderBy(input.Sorting) .PageBy(input) .ToListAsync(); var output = locationlist.MapTo <List <LocationListDto> >(); return(new PagedResultDto <LocationListDto>(locationCount, output)); }
public LocationDto GetLocation(GetLocationInput input) { return(Mapper.Map <LocationDto>(_locationRepository.Get(input.LocationId))); }