Beispiel #1
0
        public string GetFilterStations(string filter)
        {
            try {
                var userData    = UserData;
                var otherEntity = new BOther();
                var stations    = otherEntity.GetStationMarkers(filter, 1, 180, 1, 90, 100);
                if (stations != null && stations.Count > 0)
                {
                    var gns = new List <GroupTreeInfo>();
                    foreach (var lu in userData.LscUsers)
                    {
                        gns.AddRange(lu.Group.GroupNodes.FindAll(g => g.NodeType == EnmNodeType.Sta));
                    }

                    var gs = from sta in stations
                             join gn in gns on new { sta.LscID, sta.StaID } equals new { gn.LscID, StaID = gn.NodeID }
                    select sta;

                    var markers = new List <string>();
                    foreach (var s in gs)
                    {
                        markers.Add(String.Format("{{lscId:{0},staId:{1},mapType:{2},lng:{3},lat:{4}}}", s.LscID, s.StaID, (int)s.LocationWay, s.Longitude, s.Latitude));
                    }
                    return(String.Format("[{0}]", String.Join(",", markers.ToArray())));
                }
            } catch { }
            return(String.Empty);
        }
Beispiel #2
0
        public string GetViewStations(double minLng, double maxLng, double minLat, double maxLat)
        {
            try {
                var userData    = UserData;
                var otherEntity = new BOther();
                var stations    = otherEntity.GetStationMarkers(WebUtility.DefaultString, minLng, maxLng, minLat, maxLat, 150);
                if (stations != null && stations.Count > 0)
                {
                    var gns = new List <GroupTreeInfo>();
                    foreach (var lu in userData.LscUsers)
                    {
                        gns.AddRange(lu.Group.GroupNodes.FindAll(g => g.NodeType == EnmNodeType.Sta));
                    }

                    var gs = from sta in stations
                             join gn in gns on new { sta.LscID, sta.StaID } equals new { gn.LscID, StaID = gn.NodeID }
                    select new {
                        LscID   = sta.LscID,
                        LscName = sta.LscName,
                        GroupID = gn.GroupID,
                        StaID   = sta.StaID,
                        StaName = sta.StaName,
                        MapType = (int)sta.LocationWay,
                        Lng     = sta.Longitude,
                        Lat     = sta.Latitude,
                        Address = sta.MapDesc
                    };

                    var markers = new List <string>();
                    foreach (var s in gs)
                    {
                        markers.Add(String.Format("{{lscId:{0},lscName:\"{1}\",groupId:{2},staId:{3},staName:\"{4}\",mapType:{5},lng:{6},lat:{7},address:\"{8}\"}}", s.LscID, s.LscName, s.GroupID, s.StaID, s.StaName, s.MapType, s.Lng, s.Lat, s.Address));
                    }
                    return(String.Format("[{0}]", String.Join(",", markers.ToArray())));
                }
            } catch { }
            return(String.Empty);
        }