Example #1
0
        public PartialViewResult GetClassSymbol(int classId)
        {
            var classSymbol = new ClassSymbolViewModel();
            var layer       = _ClassesBL.getClass(classId);

            classSymbol.ClassId   = layer.ID;
            classSymbol.MaxScale  = layer.Scale;
            classSymbol.ClassType = layer.Class_type;
            classSymbol.HasFlow   = layer.HasFlow ?? false;
            classSymbol.Symbol    = new SymbolViewModel()
            {
                FillColor   = layer.FillColor,
                StrokeColor = layer.StrokColor,
                StrokeWidth = layer.StrokWidth ?? 0,
                Width       = layer.Width ?? 0
            };

            classSymbol.UniqueField = layer.UniqueField;
            foreach (var style in layer.UniqueStyles)
            {
                classSymbol.UniqueItems.Add(new UniqueSymbolItem()
                {
                    Symbol = new SymbolViewModel()
                    {
                        FillColor   = style.FillColor,
                        StrokeColor = style.StrokColor,
                        StrokeWidth = style.StrokWidth ?? 0,
                        Width       = style.Width ?? 0
                    },
                    Value = style.TEXT
                });
            }

            return(PartialView("ClassSymbol", classSymbol));
        }
Example #2
0
        public JsonResult SetClassSymbol(ClassSymbolViewModel model)
        {
            try
            {
                var layer = _ClassesBL.getClass(model.ClassId);
                layer.Scale      = model.MaxScale;
                layer.HasFlow    = model.HasFlow;
                layer.FillColor  = model.Symbol.FillColor;
                layer.StrokColor = model.Symbol.StrokeColor;
                layer.Width      = model.Symbol.Width;
                layer.StrokWidth = model.Symbol.StrokeWidth;

                layer.UniqueField = model.UniqueField;
                if (layer.UniqueStyles != null)
                {
                    var styles = layer.UniqueStyles.Count();
                    for (int i = 0; i < styles; i++)
                    {
                        _UniqueStyleBL.DeleteUniqueStyles(layer.UniqueStyles.ElementAt(0));
                    }
                }
                layer.UniqueStyles = new List <UniqueStyle>();
                if (model.UniqueItems != null)
                {
                    foreach (var item in model.UniqueItems)
                    {
                        layer.UniqueStyles.Add(new UniqueStyle()
                        {
                            CLASS_ID   = model.ClassId,
                            FillColor  = item.Symbol.FillColor,
                            StrokColor = item.Symbol.StrokeColor,
                            Width      = item.Symbol.Width,
                            StrokWidth = item.Symbol.StrokeWidth,
                            TEXT       = item.Value
                        });
                    }
                }

                _ClassesBL.UpdateClassSymbol(layer);
                return(Json("0"));
            }
            catch (Exception ex)
            {
                return(Json("1"));
            }
        }