Example #1
0
        /// <summary>
        /// 图层查询 获取联表结果
        /// </summary>
        /// <param name="sw"></param>
        /// <returns></returns>
        public static IEnumerable <SDE_QueyLayerModel> GetQueryLayerUnionResult(QueryLayerDataSW sw)
        {
            var       result = new List <SDE_QueyLayerModel>();
            DataTable dt     = BaseDT.SDE.TD_CUNZHUDI.getUnionDT(sw);

            for (int i = 0; i < dt.Rows.Count; i++)
            {
                SDE_QueyLayerModel m = new SDE_QueyLayerModel();
                m.ID         = dt.Rows[i]["ID"].ToString();
                m.Name       = dt.Rows[i]["NAME"].ToString();
                m.Display_X  = dt.Rows[i]["DISPLAY_X"].ToString();
                m.Display_Y  = dt.Rows[i]["DISPLAY_Y"].ToString();
                m.Flag       = dt.Rows[i]["FLAG"].ToString();
                m.LayerName  = Enum.GetName(typeof(LayerType), int.Parse(m.Flag));
                m.LNGLATSTRS = dt.Rows[i]["LNGLATSTRS"] == null ? null : dt.Rows[i]["LNGLATSTRS"].ToString();
                m.DBTYPE     = dt.Rows[i]["DBTYPE"] == null ? null : dt.Rows[i]["DBTYPE"].ToString();
                m.TYPE       = dt.Rows[i]["TYPE"].ToString();
                m.CATEGORY   = dt.Rows[i]["category"].ToString();
                m.ImageUrl   = dt.Rows[i]["ImageUrl"].ToString();
                result.Add(m);
            }
            dt.Clear();
            dt.Dispose();

            return(result);
        }
        /// <summary>
        /// 获取图层
        /// </summary>
        /// <returns></returns>
        public JsonResult GetAroundLayersInfo()
        {
            var    result  = new List <SDE_QueyLayerResultModel>();
            string flagstr = Request.Params["flagstr"]; //图层类型
            string disval  = Request.Params["disval"];  //周边距离
            string jd      = Request.Params["jd"];      //经度
            string wd      = Request.Params["wd"];      //纬度
            var    sw      = new QueryLayerDataSW();

            sw.FlagStr     = flagstr;
            sw.AroundValue = disval;
            sw.JD          = jd;
            sw.WD          = wd;
            //获取符合条件的结果
            var list   = TD_CUNZHUDICls.GetQueryLayerUnionResult(sw);
            var layers = flagstr.Split(',');

            if (layers.Length > 0)
            {
                foreach (var item in layers)
                {
                    var model = new SDE_QueyLayerResultModel();
                    model.LayerId   = item.Trim();
                    model.LayerName = Enum.GetName(typeof(ManagerSystemClassLibrary.EnumCls.LayerType), int.Parse(model.LayerId));
                    if (list.Any())
                    {
                        var recordlist = list.Where(p => p.Flag == item);//每个图层里的信息
                        if (recordlist.Any())
                        {
                            foreach (var record in recordlist)
                            {
                                var data = new SDE_QueyLayerModel();
                                data.ID         = record.ID;
                                data.Flag       = record.Flag;
                                data.Display_X  = record.Display_X;
                                data.Display_Y  = record.Display_Y;
                                data.LayerName  = model.LayerName;
                                data.Name       = record.Name;
                                data.LNGLATSTRS = record.LNGLATSTRS;
                                data.DBTYPE     = record.DBTYPE;
                                data.TYPE       = record.TYPE;
                                data.CATEGORY   = record.CATEGORY;
                                data.ImageUrl   = record.ImageUrl;
                                model.DataList.Add(data);
                            }
                        }
                    }
                    result.Add(model);
                }
            }
            return(Json(result));
        }