Example #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;
 }
Example #2
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);
 }