public List <UserLocation> GeUserLocation(EventLocationRequest eventLocationRequest) { List <UserLocation> listUserLoc = new List <UserLocation>(); var res = Context.GetUserLocation(Serializer.Serialize(eventLocationRequest)).FirstOrDefault(); if (!string.IsNullOrEmpty(res)) { var list = Serializer.DeserializeFromXml <List <UserLocation> >(res); if (list.Count > 0) { if (list[0].IsRecurring) { list = removePastLocationForRecurrentEvents(list); } if (eventLocationRequest.UserIds != null) { foreach (UserLocation userLoc in list) { if (eventLocationRequest.UserIds.Contains(userLoc.UserId)) { listUserLoc.Add(userLoc); } } } else { listUserLoc.AddRange(list.ToList()); } } } return(listUserLoc); }
public GenericApiResult Get(EventLocationRequest eventLocationRequest) { GenericApiResult result = new GenericApiResult(); try { result.ListOfUserLocation = repo.GeUserLocation(eventLocationRequest); result.Status = true; result.ErrorMessage = ""; } catch (Exception ex) { result.ListOfUserLocation = new List <UserLocation>(); result.Status = false; result.ErrorMessage = "no records or requestor not authenticated."; result.ErrorLog = ex.Message; } return(result); }
public HttpResponseMessage Post(EventsRequest model) { if (model == null) { return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, "Request payload was null")); } if (!ModelState.IsValid) { return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState)); } model.UserId = UserService.GetCurrentUserId(); //post new event basic info int blogId = EventsService.Post(model); ItemResponse <int> response = new ItemResponse <int>(); response.Item = blogId; if (model.Location != null && model.Location.Lat != null) { //post new event location int locId = _locationService.Post(model.Location); //post to event info and event location mapping table EventLocationRequest evLoc = new EventLocationRequest(); evLoc.EventId = blogId; evLoc.LocationId = locId; EventLocationService.Post(evLoc); } return(Request.CreateResponse(HttpStatusCode.OK, response)); }