예제 #1
0
 public int GetTransactionDataCount(TransactionDataSearchFilter searchFilter)
 {
     return UnitOfWork.Repository<TransactionData>()
         .Get(
             orderBy:
                 t =>
                     t.OrderBy(searchFilter.Filter.Sorting.SortOrder,
                         searchFilter.Filter.Sorting.SortDirection)).Count();
 }
예제 #2
0
 public IEnumerable<TransactionData> GetTransactionData(TransactionDataSearchFilter searchFilter)
 {
     var results =
         UnitOfWork.Repository<TransactionData>()
             .Get(
                 orderBy:
                     t =>
                         t.OrderBy(searchFilter.Filter.Sorting.SortOrder,
                             searchFilter.Filter.Sorting.SortDirection),
                 pageNumber: searchFilter.Filter.Paging.CurrentPage,
                 pageSize: searchFilter.Filter.Paging.ItemsPerPage);
     return results;
 }
예제 #3
0
        public IHttpActionResult Search(TransactionDataSearchFilter searchFilter)
        {
            try
            {
                var model = new TransactionDataModel
                {
                    TransactionData = _transactionService.GetTransactionData(searchFilter).MapTo<TransactionDataDto>(),
                    Paging = new PaginationModel
                    {
                        TotalItems = _transactionService.GetTransactionDataCount(searchFilter),
                        ItemsPerPage = searchFilter.Filter.Paging.ItemsPerPage,
                        CurrentPage = searchFilter.Filter.Paging.CurrentPage
                    }
                };

                return Ok(model);
            }
            catch (Exception ex)
            {
                return InternalServerError(ex);
            }
        }