コード例 #1
0
 public ActionResult GetChecksByManager()
 {
     try
     {
         var userName = HttpContext.User.Identity.Name;
         var checks   = managerTaskDataAccess.GetChecksByManager(userName).ToList();
         return(View(checks));
     }
     catch (Exception e)
     {
         ViewBag.Error = e.Message;
         return(View());
     }
 }
コード例 #2
0
        public ActionResult GetAlerts(int page = 1)
        {
            try
            {
                var user = HttpContext.User;
                if (user == null)
                {
                    return(View(new List <DriverCheckAlert>()));
                }

                var checks = managerTaskDataAccess.GetChecksByManager(user.Identity.Name).ToList();
                var alerts = GetAlertsWithChecks(checks).ToList();

                var drivers = managerTaskDataAccess.GetDriversWithNoChecks(user.Identity.Name).ToList();
                var alertsForNoCheckDriver = drivers
                                             .Select(d => new DriverCheckAlert(d.Name, AlertType.CheckMissing, AlertLevel.Critical, DateTime.Now))
                                             .ToList();

                alerts.AddRange(alertsForNoCheckDriver);

                AlertViewModel model = new AlertViewModel
                {
                    PagingInfo = new PagingInfo
                    {
                        CurrentPage = page,
                        Pages       = (int)Math.Ceiling((decimal)alerts.Count / PageSize),
                        PageSpan    = PageSpan
                    },
                    Alerts = alerts.Skip(PageSize * (page - 1)).Take(PageSize).OrderBy(x => x.DriverName).ToList()
                };

                return(View(model));
            }
            catch (Exception e)
            {
                ViewBag.Error = e.Message;
                return(View());
            }
        }