public IEnumerable <OrderDetail> Get(OrderDetailsFilter <int> filter)
 {
     try
     {
         var query = Db.Set <OrderDetail>().Where(it => it.OrderId == filter.OrderId);
         if (filter.TotalInterval != null)
         {
             if (filter.TotalInterval.Start != null)
             {
                 query = query.Where(it => it.Total >= filter.TotalInterval.Start);
             }
             if (filter.TotalInterval.End != null)
             {
                 query = query.Where(it => it.Total <= filter.TotalInterval.End);
             }
         }
         if (!string.IsNullOrEmpty(filter.Sidx))
         {
             query = filter.Sord.Equals("desc", StringComparison.OrdinalIgnoreCase)
                 ? query.OrderByDescending(filter.Sidx)
                 : query.OrderBy(filter.Sidx);
         }
         if (filter.Page != 0 && filter.Rows != 0)
         {
             return(query.Skip(filter.Rows * (filter.Page - 1)).Take(filter.Rows));
         }
         return(query);
     }
     catch (Exception ex)
     {
         LogEventManager.Logger.Error(ex.Message, ex);
         throw;
     }
 }
Esempio n. 2
0
 public void GetOrderDetails(DbContextOptions <OrderContext> options, OrderDetailsFilter <int> filter, int expectedResult)
 {
     try
     {
         using (var db = new OrderContext(options))
         {
             var repository =
                 new OrderRepository(db);
             IEnumerable <OrderDetail> result = null;
             Assert.DoesNotThrow(() => result = repository.GetOrderDetails(filter));
             Assert.True(result != null && result.Count() == expectedResult);
         }
     }
     catch (Exception ex)
     {
         LogEventManager.Logger.Error(ex.Message, ex);
         throw;
     }
 }
 public IEnumerable <OrderDetail> GetOrderDetails(OrderDetailsFilter <int> filter)
 {
     return(repo.Get(filter));
 }