private async Task <IHttpActionResult> LoadManagerDashboard() { //top widget int dismissalRequestsCount = _personnelDismissalService.GetNumberOfRequests(DateTime.Now); int absentsCount = _dashboardService.AbsentPersonnelCount(DateTime.Now); int presentsCount = _dashboardService.PresentPersonnelCount(DateTime.Now); int personnelCount = _personnelService.TotalNumberOfPersonnel(); //chart data var thisMonthChartData = await _dashboardService .GetChartData(null, DateTime.Now.AddDays(-7), DateTime.Now); var prevMonthChartData = await _dashboardService .GetChartData(null, DateTime.Now.AddMonths(-1).AddDays(-7) , DateTime.Now.AddMonths(-1)); //bottom widget var personnelWithMostAbsentTime = _dashboardService .GetPersonnelWithMostAbsentTime(7, 4); var personnelWithMostOperationTime = _dashboardService .GetPersonnelWithMostOperationTime(7, 4); var personnelWithMostExtraWork = _dashboardService .GetPersonnelWithMostExtraWork(7, 4); return(Ok(new { showManagerDashboard = true, dismissalRequestsCount, absentsCount, presentsCount, personnelCount, thisMonthChartData, prevMonthChartData, personnelWithMostAbsentTime, personnelWithMostOperationTime, personnelWithMostExtraWork })); }