Esempio n. 1
0
        public static MapSearchResultVM SearchForAddress(MapRequestAVM mapRequestAVM)
        {
            Validator.ValidateObject(mapRequestAVM, new ValidationContext(mapRequestAVM), true);
            MapRequest mapRequest = CreateMapRequest(mapRequestAVM);

            return(SearchForAddress(mapRequest));
        }
Esempio n. 2
0
        private static MapRequest CreateMapRequest(MapRequestAVM mapRequestAVM)
        {
            var mapRequest = new MapRequest(mapRequestAVM.Email, mapRequestAVM.Latitude.Value, mapRequestAVM.Longitude.Value, DateTime.Now);

            using (MediatelModel context = new MediatelModel())
            {
                context.MapRequests.Add(mapRequest);
                context.SaveChanges();
            }
            return(mapRequest);
        }
        public object SearchAddress([FromBody] MapRequestAVM value)
        {
            try
            {
                var result = MapRequests.SearchForAddress(value);
                switch ((OSMClient.SearchResultCode)Enum.Parse(typeof(OSMClient.SearchResultCode), result.ResultCode))
                {
                case OSMClient.SearchResultCode.OK:
                    return(Request.CreateResponse(HttpStatusCode.OK, JsonConvert.SerializeObject(result)));

                case OSMClient.SearchResultCode.NOT_FOUND:
                    return(Request.CreateResponse(HttpStatusCode.NotFound, JsonConvert.SerializeObject(result)));

                default:
                    return(Request.CreateErrorResponse(HttpStatusCode.InternalServerError, "Unexpected internal server error during map search"));
                }
            }
            catch (Exception e)
            {
                return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, e));
            }
        }