/// <summary> /// 获取单个教师请假情况 /// </summary> /// <param name="SelectYear">年份</param> /// <param name="type">按年还是请假类型</param> /// <param name="userType">判断当前登录教师还是选择的教师</param> /// <param name="userId">教师ID</param> /// <returns></returns> public JsonResult GetTeacherLeaveByID(string SelectYear, string type, string userType = "", string userId = "") { var teahcerLeaveViewModel = new TeahcerLeaveViewModel(); try { var teacherLeaveList = new List <AL_Apply>(); List <Guid?> userIdList = new List <Guid?>(); if (!string.IsNullOrEmpty(userType)) { userIdList.Add(new Guid(userId)); } else { userIdList.Add(userid); } List <SeriesPie> serList = new List <SeriesPie>(); switch (type) { case "年份": #region 年份 teacherLeaveList = oabll.GetLeaveListByTeahcerIdListAndYear(userIdList, SelectYear); if (teacherLeaveList.Any()) { for (int i = 1; i < 13; i++) { SeriesPie s = new SeriesPie(); s.name = i + "月"; var month = ""; if (i < 10) { month = "0" + i; } else { month = i.ToString(); } var teacherHour = teacherLeaveList.Where( // e => e.StartDate.StartsWith(SelectYear + month)); e => e.StartDate.StartsWith(SelectYear + "-" + month)); if (teacherHour.Any()) { s.data = FormateHour((int)teacherHour.Sum(e => e.Hour)); serList.Add(s); } } teahcerLeaveViewModel.SeriesPieList = serList; } #endregion break; case "请假类型": #region 请假类型 teacherLeaveList = oabll.GetLeaveListByTeahcerIdListAndYear(userIdList, SelectYear); if (teacherLeaveList.Any()) { var typeList = oabll.GetTypeNameList(); for (int i = 0; i < typeList.Count; i++) { SeriesPie s = new SeriesPie(); s.name = typeList[i]; var teacherHour = teacherLeaveList.Where( e => e.CJR == typeList[i]); if (teacherHour.Any()) { s.data = FormateHour((int)teacherHour.Sum(e => e.Hour)); // s.data = FormateHour((int)teacherHour.Sum(e => e.Hour)); serList.Add(s); } } teahcerLeaveViewModel.SeriesPieList = serList; } #endregion break; } if (teacherLeaveList.Any()) { List <LeaveViewModel> leaveViewModelList = new List <LeaveViewModel>(); foreach (var leave in teacherLeaveList) { LeaveViewModel _leaveView = new LeaveViewModel { Date = leave.StartDate + "—" + leave.EndDate, DayNum = FormateHour((int)leave.Hour.Value), LeaveType = leave.CJR }; leaveViewModelList.Add(_leaveView); } teahcerLeaveViewModel.TeacherLeaveDetailList = leaveViewModelList; } } catch (Exception) { throw; } return(Json(teahcerLeaveViewModel, JsonRequestBehavior.AllowGet)); }
public ViewModelBase() { List <double> data = new List <double>(); data.Add(5); data.Add(6); data.Add(7); data.Add(5); data.Add(4); data.Add(3); Labels = new List <string>(); Labels.Add("Pedro"); Labels.Add("Juan"); Labels.Add("Diego"); Labels.Add("Pablo"); Labels.Add("Marcos"); Labels.Add("Manuel"); ChartValues <double> cv = new ChartValues <double>(); cv.AddRange(data); var lineSerie = new LineSeries { Title = "Values", Values = cv, }; Series.Clear(); Series.Add(lineSerie); var barSerie = new BarSeries { Title = "Values", Values = cv, }; SeriesBar.Clear(); SeriesBar.Add(barSerie); var pieSerie = new PieSeries { Title = "Values", Values = cv, }; SeriesPie.Clear(); SeriesPie.Add(pieSerie); var radarSerie = new RadarSeries { Title = "Values", Values = cv, }; SeriesRadar.Clear(); SeriesRadar.Add(radarSerie); var StackedBarChartSerie = new StackedBarSeries { Title = "Values1", Values = cv, }; var StackedBarChartSerie2 = new StackedBarSeries { Title = "Values2", Values = cv, }; SeriesStackedBarChart.Clear(); SeriesStackedBarChart.Add(StackedBarChartSerie); SeriesStackedBarChart.Add(StackedBarChartSerie2); }