public static CIOTimesViewModel GetCIOTimesViewModel(DateTime fromDate, DateTime toDate) { List <Issue> _issuesThisWeekAllProject = IssueRepositories.GetIssuesProjectIdFromDateToDate(fromDate, toDate); List <ApplicationUser> _users = db.Users.Where(m => m.BugNetUserId != null).ToList(); List <Project> _projects = db.Projects.ToList(); List <Issue> _issuesThisWeek = new List <Issue>(); foreach (var project in _projects) { _issuesThisWeek.AddRange(_issuesThisWeekAllProject.Where(m => m.ProjectId == project.Id).ToList()); } CIOTimesViewModel cioTimes = new CIOTimesViewModel(); List <ListPerformanceUsersViewModel> listPer = new List <ListPerformanceUsersViewModel>(); cioTimes.FromDate = fromDate; cioTimes.ToDate = toDate; DateTime _dateTemp = cioTimes.FromDate; while (_dateTemp <= cioTimes.ToDate) { ListPerformanceUsersViewModel _per = new ListPerformanceUsersViewModel(); _per.Date = _dateTemp; if (_per.Date < DateTime.Today) { _per.PerformancesUsers = PerformanceHelpers.GetPerformanceUserByIssuesDate(_issuesThisWeek.Where(m => DateHelpers.IsEquals(m.IssueDueDate, _dateTemp) && m.IsClosed == true).ToList()).OrderByDescending(m => m.y).ToList(); } else { _per.PerformancesUsers = PerformanceHelpers.GetPerformanceUserByIssuesDate(_issuesThisWeek.Where(m => DateHelpers.IsEquals(m.IssueDueDate, _dateTemp)).ToList()).OrderByDescending(m => m.y).ToList(); } _dateTemp = _dateTemp.AddDays(1); listPer.Add(_per); } cioTimes.ListPerformances = listPer; return(cioTimes); }
public ActionResult TimesDashboard(CIOTimesViewModel model) { return(View(CIOHelpers.GetCIOTimesViewModel(model.FromDate, model.ToDate))); }