Пример #1
0
 private IEnumerable<VoyageDTO> Filter(IEnumerable<VoyageDTO> voyages,
     VoyageSortOrders? sortOrder = null, VoyageStatus? status = null)
 {
     if (status != null)
         voyages = voyages.Where(x => x.Status == (BLL.DTO.VoyageStatus)status);
     if (sortOrder != null)
     {
         switch ((VoyageSortOrders)sortOrder)
         {
             case VoyageSortOrders.Name:
                 voyages = voyages.OrderBy(x => x.Name);
                 break;
             case VoyageSortOrders.Status:
                 voyages = voyages.OrderBy(x => x.Status);
                 break;
             case VoyageSortOrders.StartTime:
                 voyages = voyages.OrderBy(x => x.RequestedStartTime);
                 break;
             case VoyageSortOrders.EndTime:
                 voyages = voyages.OrderBy(x => x.RequestedEndTime);
                 break;
             case VoyageSortOrders.LeadTime:
                 voyages = voyages.OrderBy(x => x.RequestedEndTime - x.RequestedStartTime);
                 break;
             default:
                 voyages = voyages.OrderBy(x => x.Name);
                 break;
         }
     }
     return voyages;
 }
Пример #2
0
 public ActionResult My(VoyageSortOrders? sortOrder = null, VoyageStatus? status = null)
 {
     var model = _logics.GetUserVoyages(CurrentUserId, sortOrder, status);
     if (Request.IsAjaxRequest())
     {
         return PartialView("_myVoyageList", model);
     }
     ViewBag.StatusesSelectList = _logics.GetStatusesSelectList();
     ViewBag.OrdersSelectList = _logics.GetOrdersSelectList();
     return View(model);
 }
Пример #3
0
 public IEnumerable<VoyageViewModel> GetVoyages(VoyageSortOrders? sortOrder = null, VoyageStatus? status = null)
 {
     var voyages = _voyageService.GetVoyages();
     voyages = Filter(voyages, sortOrder, status);
     return Mapper.Map<List<VoyageViewModel>>(voyages);
 }
Пример #4
0
        public ActionResult Index(VoyageSortOrders? sortOrder = null, VoyageStatus? status = null)
        {
            if (Request.IsAjaxRequest())
            {
                if (User.IsInRole("Admin") || User.IsInRole("Controller"))
                {
                    return PartialView("_voyagesList", _logics.GetVoyages(sortOrder, status));
                }
                if (User.IsInRole("Driver"))
                {
                    return PartialView("_voyagesList",_logics.GetOpenVoyagesForUser(CurrentUserId, sortOrder, status));
                }
            }

            ViewBag.StatusesSelectList = _logics.GetStatusesSelectList();
            ViewBag.OrdersSelectList = _logics.GetOrdersSelectList();
            if (User.IsInRole("Admin") || User.IsInRole("Controller"))
            {
                return View(_logics.GetVoyages(sortOrder, status));
            }
            if (User.IsInRole("Driver"))
            {
                return View(_logics.GetOpenVoyagesForUser(CurrentUserId, sortOrder, status));
            }

            return RedirectToAction("Login", "Account");
        }