public List<ReportIndicator> GetDiseaseDistroIndicators() { List<ReportIndicator> indicators = new List<ReportIndicator>(); DiseaseRepository repo = new DiseaseRepository(); var types = repo.GetSelectedDiseases(); var pc = new ReportIndicator { Name = TranslationLookup.GetValue("PcNtds"), IsCategory = true }; var cm = new ReportIndicator { Name = TranslationLookup.GetValue("OtherNtds"), IsCategory = true }; indicators.Add(pc); indicators.Add(cm); foreach (var t in types.Where(i => i.DiseaseType == TranslationLookup.GetValue("PC")).OrderBy(t => t.DisplayName)) { var cat = new ReportIndicator { Name = t.DisplayName, IsCategory = true }; DiseaseDistroPc dd = repo.Create((DiseaseType)t.Id); foreach (var i in dd.Indicators) cat.Children.Add(CreateReportIndicator(t.Id, i, t.DisplayName, t.DisplayNameKey)); cat.Children = cat.Children.OrderBy(c => c.Name).ToList(); pc.Children.Add(cat); } foreach (var t in types.Where(i => i.DiseaseType == TranslationLookup.GetValue("CM")).OrderBy(t => t.DisplayName)) { var cat = new ReportIndicator { Name = t.DisplayName, IsCategory = true }; DiseaseDistroCm dd = repo.CreateCm((DiseaseType)t.Id); foreach (var i in dd.Indicators) cat.Children.Add(CreateReportIndicator(t.Id, i, t.DisplayName, t.DisplayNameKey)); cat.Children = cat.Children.OrderBy(c => c.Name).ToList(); cm.Children.Add(cat); } return indicators; }
public List<ReportIndicator> GetSurveyIndicators(bool addStaticFields) { List<ReportIndicator> indicators = new List<ReportIndicator>(); SurveyRepository repo = new SurveyRepository(); var types = repo.GetSurveyTypes(); var pc = new ReportIndicator { Name = TranslationLookup.GetValue("PcNtds"), IsCategory = true }; var cm = new ReportIndicator { Name = TranslationLookup.GetValue("OtherNtds"), IsCategory = true }; indicators.Add(pc); indicators.Add(cm); foreach (var t in types.Where(i => i.DiseaseType == TranslationLookup.GetValue("PC")).OrderBy(t => t.SurveyTypeName)) { var cat = new ReportIndicator { Name = t.SurveyTypeName, IsCategory = true, ID = t.Id }; var instance = repo.CreateSurvey(t.Id); if (addStaticFields && (t.Id == (int)StaticSurveyType.LfSentinel || t.Id == (int)StaticSurveyType.SchistoSentinel || t.Id == (int)StaticSurveyType.SthSentinel)) { cat.Children.Add(new ReportIndicator { Name = TranslationLookup.GetValue("IndSentinelSiteName"), TypeId = t.Id, Key = "IndSentinelSiteName" }); cat.Children.Add(new ReportIndicator { Name = TranslationLookup.GetValue("IndSentinelSiteLat"), TypeId = t.Id, Key = "IndSentinelSiteLat" }); cat.Children.Add(new ReportIndicator { Name = TranslationLookup.GetValue("IndSentinelSiteLng"), TypeId = t.Id, Key = "IndSentinelSiteLng" }); cat.Children.Add(new ReportIndicator { Name = TranslationLookup.GetValue("IndSpotCheckName"), TypeId = t.Id, Key = "IndSpotCheckName" }); cat.Children.Add(new ReportIndicator { Name = TranslationLookup.GetValue("IndSpotCheckLat"), TypeId = t.Id, Key = "IndSpotCheckLat" }); cat.Children.Add(new ReportIndicator { Name = TranslationLookup.GetValue("IndSpotCheckLng"), TypeId = t.Id, Key = "IndSpotCheckLng" }); cat.Children.Add(new ReportIndicator { Name = TranslationLookup.GetValue("SiteType"), TypeId = t.Id, Key = "SiteType" }); } foreach (var i in instance.TypeOfSurvey.Indicators) if (i.Value.DataTypeId != (int)IndicatorDataType.SentinelSite) cat.Children.Add(CreateReportIndicator(t.Id, i, t.SurveyTypeName, t.DisplayNameKey)); cat.Children = cat.Children.OrderBy(c => c.Name).ToList(); pc.Children.Add(cat); } foreach (var t in types.Where(i => i.DiseaseType == TranslationLookup.GetValue("CM")).OrderBy(t => t.SurveyTypeName)) { var cat = new ReportIndicator { Name = t.SurveyTypeName, IsCategory = true }; var instance = repo.CreateSurvey(t.Id); foreach (var i in instance.TypeOfSurvey.Indicators) cat.Children.Add(CreateReportIndicator(t.Id, i, t.SurveyTypeName, t.DisplayNameKey)); cat.Children = cat.Children.OrderBy(c => c.Name).ToList(); cm.Children.Add(cat); } return indicators; }
public List<ReportIndicator> GetProcessIndicators() { List<ReportIndicator> indicators = new List<ReportIndicator>(); ProcessRepository repo = new ProcessRepository(); var types = repo.GetProcessTypes(); var pc = new ReportIndicator { Name = TranslationLookup.GetValue("PcNtds"), IsCategory = true }; var cm = new ReportIndicator { Name = TranslationLookup.GetValue("OtherNtds"), IsCategory = true }; types.RemoveAll(t => t.TypeName == TranslationLookup.GetValue("SAEs")); indicators.Add(pc); indicators.Add(cm); foreach (var t in types.Where(i => i.DiseaseType == TranslationLookup.GetValue("PC")).OrderBy(t => t.TypeName)) { var cat = new ReportIndicator { Name = t.TypeName, IsCategory = true }; var instance = repo.Create(t.Id); foreach (var i in instance.ProcessType.Indicators) cat.Children.Add(CreateReportIndicator(t.Id, i, t.TypeName, t.DisplayNameKey)); cat.Children = cat.Children.OrderBy(c => c.Name).ToList(); pc.Children.Add(cat); } foreach (var t in types.Where(i => i.DiseaseType == TranslationLookup.GetValue("CM")).OrderBy(t => t.TypeName)) { var cat = new ReportIndicator { Name = t.TypeName, IsCategory = true }; var instance = repo.Create(t.Id); foreach (var i in instance.ProcessType.Indicators) cat.Children.Add(CreateReportIndicator(t.Id, i, t.TypeName, t.DisplayNameKey)); cat.Children = cat.Children.OrderBy(c => c.Name).ToList(); cm.Children.Add(cat); } // SAEs ProcessBase saes = repo.Create(9); var saeCat = new ReportIndicator { Name = saes.ProcessType.TypeName, IsCategory = true }; foreach (var i in saes.ProcessType.Indicators) saeCat.Children.Add(CreateReportIndicator(saes.ProcessType.Id, i, saes.ProcessType.TypeName, saes.ProcessType.DisplayNameKey)); saeCat.Children = saeCat.Children.OrderBy(c => c.Name).ToList(); indicators.Add(saeCat); return indicators; }
public List<ReportIndicator> GetIntvIndicators() { List<ReportIndicator> indicators = new List<ReportIndicator>(); IntvRepository repo = new IntvRepository(); var types = repo.GetAllTypes(); var pc = new ReportIndicator { Name = TranslationLookup.GetValue("PcNtds"), IsCategory = true }; var cm = new ReportIndicator { Name = TranslationLookup.GetValue("OtherNtds"), IsCategory = true }; indicators.Add(pc); indicators.Add(cm); foreach (var t in types.Where(i => i.DiseaseType == TranslationLookup.GetValue("PC")).OrderBy(t => t.IntvTypeName)) { var cat = new ReportIndicator { Name = t.IntvTypeName, IsCategory = true }; var instance = repo.CreateIntv(t.Id); foreach (var i in instance.IntvType.Indicators) cat.Children.Add(CreateReportIndicator(t.Id, i, t.IntvTypeName, t.DisplayNameKey)); cat.Children = cat.Children.OrderBy(c => c.Name).ToList(); pc.Children.Add(cat); } foreach (var t in types.Where(i => i.DiseaseType == TranslationLookup.GetValue("CM")).OrderBy(t => t.IntvTypeName)) { var cat = new ReportIndicator { Name = t.IntvTypeName, IsCategory = true }; var instance = repo.CreateIntv(t.Id); foreach (var i in instance.IntvType.Indicators) cat.Children.Add(CreateReportIndicator(t.Id, i, t.IntvTypeName, t.DisplayNameKey)); cat.Children = cat.Children.OrderBy(c => c.Name).ToList(); cm.Children.Add(cat); } return indicators; }