/// <summary> /// Will set the layerlist based on activityfilter /// </summary> public void SetLayers(ActivityFilter activityfilter) { if (activityfilter != null) { if (!activityfilter.ActivityType.Equals(ActivityFilter.Type.AnnexI)) { this.Layers = ActivityFilter.AllSectorsID.ToString(); } else if (activityfilter.SearchLevel() == ActivityFilter.Level.All) { this.Layers = ActivityFilter.AllSectorsID.ToString(); } else { IEnumerable <LOV_ANNEXIACTIVITY> list = ListOfValues.GetAnnexIActivities(activityfilter.SectorIds); if (list.Count() > 0) { this.Layers = String.Empty; foreach (LOV_ANNEXIACTIVITY item in list) { if (String.IsNullOrEmpty(this.Layers)) { this.Layers += "sector" + item.Code; } else { this.Layers += ",sector" + item.Code; } } } else { this.Layers = ActivityFilter.AllSectorsID.ToString(); } } } else { this.Layers = ActivityFilter.AllSectorsID.ToString(); //all sectors } }
public Map(string layerId, string cmsLayerId, MediumFilter.Medium medium, string pollutantCode, List <string> activityCodes, int year) { this.LayerId = layerId; this.CmsLayerId = cmsLayerId; this.Medium = medium; //year filter.YearFilter = new YearFilter { Year = year }; //set pollutant filter LOV_POLLUTANT pollutant = ListOfValues.GetPollutant(pollutantCode); filter.PollutantFilter = new PollutantFilter(); filter.PollutantFilter.PollutantID = pollutant.LOV_PollutantID; filter.PollutantFilter.PollutantGroupID = (int)pollutant.ParentID; //set medium filter filter.MediumFilter = new MediumFilter(); switch (medium) { case MediumFilter.Medium.Air: filter.MediumFilter.ReleasesToAir = true; break; case MediumFilter.Medium.Soil: filter.MediumFilter.ReleasesToSoil = true; break; case MediumFilter.Medium.Water: filter.MediumFilter.ReleasesToWater = true; break; default: filter.MediumFilter = null; break; } //set activity filter if (activityCodes.Count > 0) { IEnumerable <LOV_ANNEXIACTIVITY> activities = ListOfValues.GetAnnexIActivities(activityCodes); filter.ActivityFilter = new ActivityFilter(); filter.ActivityFilter.ActivityType = ActivityFilter.Type.AnnexI; filter.ActivityFilter.SectorIds = activities.Select(a => (int)a.ParentID).ToList <int>(); filter.ActivityFilter.ActivityIds = activities.Select(a => a.LOV_AnnexIActivityID).ToList <int>(); filter.ActivityFilter.SubActivityIds = new List <int>() { ActivityFilter.AllSubActivitiesInActivityID }; } //create mapfilter for expanded map this.MapFilterExpanded = QueryLayer.PollutantReleases.GetMapFilter(filter); if (activityCodes.Count > 0) { this.MapFilterExpanded.Layers = String.Format("facilities,{0}", LayerId); //Don't show any layers as default } else { this.MapFilterExpanded.Layers = LayerId; } this.MapFilterExpanded.VisibleLayers = LayerId; //only turn on diffuse layer //create mapfilter for small map (does not show facilities) this.MapFilterSmall = new MapFilter(); this.MapFilterSmall.Layers = LayerId; }