public async Task <IActionResult> All() { var items = await UnitOfWork.Repository <GeoData>() .GetListAsync(); return(Ok(items.Select(obj => GeoResult.Create(obj)))); }
public async Task <IActionResult> Get(string id) { if (ObjectId.TryParse(id, out ObjectId oid)) { var item = await UnitOfWork.Repository <GeoData>() .GetByIdAsync(oid); if (item == null) { return(NotFound(id)); } return(Ok(GeoResult.Create(item))); } return(BadRequest()); }
public async Task <IActionResult> List() { var oid = GetUserId(); if (oid.HasValue) { var items = await UnitOfWork.Repository <GeoData>() .GetListAsync(o => o.UserId == oid.Value); if (items.Count() == 0) { return(NotFound()); } var result = items.Select(obj => GeoResult.Create(obj)); return(Ok(result)); } return(BadRequest()); }
public async Task <IActionResult> GetByLocation(double lon, double lat, double distance, string[] tag = null) { var oid = GetUserId(); if (!oid.HasValue) { return(BadRequest()); } var repository = UnitOfWork.GeoRepository <GeoData>(); var items = await repository.GetByLocationAsync(oid.Value, lon, lat, distance, tag); if (items.Count() == 0) { return(NotFound()); } var result = items.Select(obj => GeoResult.Create(obj)); return(Ok(result)); }