public ActionResult Insert(MassnahmenvorschlagTeilsystemeGISModel massnahmenvorschlagTeilsystemeGISModel)
        {
            massnahmenvorschlagTeilsystemeGISModel = UpdateAndValidateGeometry(massnahmenvorschlagTeilsystemeGISModel);
            if (ModelState.IsValid)
            {
                massnahmenvorschlagTeilsystemeGISModelService.CreateEntity(massnahmenvorschlagTeilsystemeGISModel);
                return(new EmsgEmptyResult());
            }

            PrepareViewBag(true);
            return(PartialView("EditMassnahmenvorschlagTeilsysteme", massnahmenvorschlagTeilsystemeGISModel));
        }
 public ActionResult GetMassnahmenvorschlagTeilsystemeGISByID(string id)
 {
     try
     {
         MassnahmenvorschlagTeilsystemeGISModel massnahmenvorschlagTeilsystemeGIS = massnahmenvorschlagTeilsystemeGISModelService.GetById(Guid.Parse(id));
         return(Content(massnahmenvorschlagTeilsystemeGIS.FeatureGeoJSONString, "application/json"));
     }
     catch (Exception exc)
     {
         return(Content(GeoJSONStrings.GeoJSONFailure(exc.Message), "application/json"));
     }
 }
 public ActionResult GetMassnahmenvorschlagTeilsystemeGISAt(double x, double y, double tolerance)
 {
     try
     {
         MassnahmenvorschlagTeilsystemeGISModel massnahmenvorschlagTeilsystemeGIS = massnahmenvorschlagTeilsystemeGISModelService.GetKoordinierteMassnahmeAt(x, y, tolerance);
         return(Content(massnahmenvorschlagTeilsystemeGIS.FeatureGeoJSONString, "application/json"));
     }
     catch (Exception exc)
     {
         return(Content(GeoJSONStrings.GeoJSONFailure(exc.Message), "application/json"));
     }
 }
        public ActionResult ApplyUpdate(MassnahmenvorschlagTeilsystemeGISModel massnahmenvorschlagTeilsystemeGISModel)
        {
            massnahmenvorschlagTeilsystemeGISModel = UpdateAndValidateGeometry(massnahmenvorschlagTeilsystemeGISModel);
            if (ModelState.IsValid)
            {
                massnahmenvorschlagTeilsystemeGISModel = massnahmenvorschlagTeilsystemeGISModelService.UpdateEntity(massnahmenvorschlagTeilsystemeGISModel);
                ModelState.Clear();
            }

            PrepareViewBag(false);

            return(PartialView("EditMassnahmenvorschlagTeilsysteme", massnahmenvorschlagTeilsystemeGISModel));
        }
        public ActionResult ApplyInsert(MassnahmenvorschlagTeilsystemeGISModel massnahmenvorschlagTeilsystemeGISModel)
        {
            massnahmenvorschlagTeilsystemeGISModel = UpdateAndValidateGeometry(massnahmenvorschlagTeilsystemeGISModel);
            var isInNewMode = true;

            if (ModelState.IsValid)
            {
                massnahmenvorschlagTeilsystemeGISModel = massnahmenvorschlagTeilsystemeGISModelService.CreateEntity(massnahmenvorschlagTeilsystemeGISModel);
                ModelState.Clear();
                isInNewMode = false;
            }

            PrepareViewBag(isInNewMode);
            return(PartialView("EditMassnahmenvorschlagTeilsysteme", massnahmenvorschlagTeilsystemeGISModel));
        }
        private MassnahmenvorschlagTeilsystemeGISModel UpdateAndValidateGeometry(MassnahmenvorschlagTeilsystemeGISModel model)
        {
            if (ModelState.IsValid)
            {
                model = (MassnahmenvorschlagTeilsystemeGISModel)geoJSONParseService.GenerateModelFromGeoJsonString(model);

                if (!massnahmenvorschlagTeilsystemeGISModelService.Validate(model))
                {
                    ModelState.AddModelError(
                        ASTRA.EMSG.Common.ExpressionHelper.GetPropertyName <IAbschnittGISModelBase, string>(m => m.FeatureGeoJSONString),
                        localizationService.GetLocalizedError(ValidationError.GeometryNotOnAchsenSegment));
                }
            }
            return(model);
        }