public JsonResult AgeStatistics() { var ageStats = _dbContext.AgeStatistics.ToList(); int currentAge = 10; Dictionary <int, int> values = new Dictionary <int, int>(); while (currentAge < 100) { foreach (var ageStat in ageStats.Where(x => x.Age >= currentAge && x.Age < (currentAge + 10))) { if (!values.ContainsKey(currentAge)) { values.Add(currentAge, ageStat.PatientsCount); } else { values[currentAge] += ageStat.PatientsCount; } } currentAge += 10; } JsonObjects.ChartInfo chart = new JsonObjects.ChartInfo(); chart.data = new List <JsonObjects.JsonChartData>(); foreach (var value in values) { chart.data.Add(new JsonObjects.JsonChartData() { label = Helper.GetAgeRange(value.Key), y = value.Value }); } return(Json(chart, JsonRequestBehavior.AllowGet)); }
public JsonResult TreatmentsCount() { Dictionary <int, int> values = new Dictionary <int, int>(); foreach (var stats in _dbContext.TreatmentsStatistics) { if (!values.ContainsKey(stats.Month)) { values.Add(stats.Month, stats.TotalCount); } } JsonObjects.ChartInfo chart = new JsonObjects.ChartInfo(); chart.data = new List <JsonObjects.JsonChartData>(); foreach (var value in values) { string month = Helper.GetMonthName(value.Key); chart.data.Add(new JsonObjects.JsonChartData() { label = month, y = value.Value }); } return(Json(chart, JsonRequestBehavior.AllowGet)); }
public JsonResult SizeStatistics() { JsonObjects.ChartInfo chart = new JsonObjects.ChartInfo(); chart.data = new List <JsonObjects.JsonChartData>(); foreach (var tumorSizeStats in _dbContext.TumorSizeStatistics) { chart.data.Add(new JsonObjects.JsonChartData() { label = tumorSizeStats.TumorSize.ToString() + " мм", y = tumorSizeStats.PatientsCount }); } return(Json(chart, JsonRequestBehavior.AllowGet)); }
public JsonResult SexStatistics() { JsonObjects.ChartInfo chart = new JsonObjects.ChartInfo(); chart.data = new List <JsonObjects.JsonChartData>(); foreach (var sexStatisticsModel in _dbContext.SexStatistics) { chart.data.Add(new JsonObjects.JsonChartData() { label = sexStatisticsModel.SexType, y = sexStatisticsModel.PatientsCount }); } return(Json(chart, JsonRequestBehavior.AllowGet)); }