public List <RegionViewModel> GetSettingsSummaryModel()
        {
            var viewManager = new SpatialFilterViewManager(CoreData.UserManager.GetCurrentUser(), SessionHandler.MySettings);
            List <RegionViewModel> regions = viewManager.GetAllRegions();

            return(regions);
        }
Пример #2
0
        public ActionResult AddDefaultSpatialFilter(string returnUrl)
        {
            string            strPolygon        = "{\"type\":\"FeatureCollection\",\"features\":[{\"type\":\"Feature\",\"properties\":{},\"geometry\":{\"type\":\"Polygon\",\"coordinates\":[[[1668773.2012895,8173729.9392108],[1668773.2012895,8560195.5541668],[2035670.9370073,8560195.5541668],[2035670.9370073,8173729.9392108],[1668773.2012895,8173729.9392108]]]}}]}";
            FeatureCollection featureCollection = JsonConvert.DeserializeObject(strPolygon, typeof(FeatureCollection)) as FeatureCollection;
            var viewManager = new SpatialFilterViewManager(GetCurrentUser(), SessionHandler.MySettings);

            viewManager.UpdateSpatialFilter(featureCollection);
            return(Redirect(returnUrl));
        }
Пример #3
0
        public JsonNetResult AddRegionById(int id)
        {
            JsonModel jsonModel;

            try
            {
                var viewManager = new SpatialFilterViewManager(GetCurrentUser(), SessionHandler.MySettings);
                viewManager.AddRegion(id);
                jsonModel = JsonModel.CreateSuccess(string.Empty);
            }
            catch (Exception ex)
            {
                jsonModel = JsonModel.CreateFailure(ex.Message);
            }

            return(new JsonNetResult(jsonModel));
        }
Пример #4
0
        /// <summary>
        /// Returns all Regions stored in MySettings.
        /// </summary>
        /// <returns></returns>
        public JsonNetResult GetAllRegions()
        {
            JsonModel jsonModel;

            try
            {
                var viewManager = new SpatialFilterViewManager(GetCurrentUser(), SessionHandler.MySettings);
                List <RegionViewModel> regions = viewManager.GetAllRegions();
                jsonModel = JsonModel.Create(regions);
            }
            catch (Exception ex)
            {
                jsonModel = JsonModel.CreateFailure(ex.Message);
            }

            return(new JsonNetResult(jsonModel));
        }
Пример #5
0
        public JsonNetResult RemoveRegion(string data)
        {
            JsonModel jsonModel;

            try
            {
                var             viewManager          = new SpatialFilterViewManager(GetCurrentUser(), SessionHandler.MySettings);
                var             javascriptSerializer = new JavaScriptSerializer();
                RegionViewModel regionViewModel      = javascriptSerializer.Deserialize <RegionViewModel>(data);
                viewManager.RemoveRegion(regionViewModel.Id);
                jsonModel = JsonModel.CreateSuccess(string.Empty);
            }
            catch (Exception ex)
            {
                jsonModel = JsonModel.CreateFailure(ex.Message);
            }

            return(new JsonNetResult(jsonModel));
        }
Пример #6
0
        /// <summary>
        /// Generates an GeoJson (.geojson) file with the spatial filter.
        /// </summary>
        /// <returns>A .geojson file.</returns>
        public FileResult SpatialFilterAsGeoJson()
        {
            FeatureCollection featureCollection;

            try
            {
                SpatialFilterViewManager viewManager = new SpatialFilterViewManager(GetCurrentUser(), SessionHandler.MySettings);
                featureCollection     = viewManager.GetSpatialFilterAsFeatureCollection();
                featureCollection.CRS = new NamedCRS(SessionHandler.MySettings.Presentation.Map.PresentationCoordinateSystemId.EpsgCode());
            }
            catch (Exception)
            {
                throw;
            }

            SetServerDone();
            string geojson = JsonConvert.SerializeObject(featureCollection, JsonHelper.GetDefaultJsonSerializerSettings());

            byte[] bytes = System.Text.Encoding.UTF8.GetBytes(geojson);
            return(File(
                       bytes,
                       "application/json",
                       FilenameGenerator.CreateFilename("SpatialFilter", FileType.GeoJSON)));
        }