public async Task <IPagedResponse <Location> > GetWarehousesAsync(int pageSize = 10, int pageNumber = 1) { Logger?.LogInformation("{0} has been invoked", nameof(GetWarehousesAsync)); var response = new PagedResponse <Location>(); try { // Get query var query = DbContext.Locations; // Set information for paging response.PageSize = pageSize; response.PageNumber = pageNumber; response.ItemsCount = await query.CountAsync(); // Retrieve items, set model for response response.Model = await query.Paging(pageSize, pageNumber).ToListAsync(); } catch (Exception ex) { response.SetError(Logger, nameof(GetWarehousesAsync), ex); } return(response); }
public async Task <IPagedResponse <Customer> > GetAllCustomers(int pageSize = 10, int pageNumber = 1) { Logger?.LogDebug("{0} has been invoked", nameof(GetAllCustomers)); var response = new PagedResponse <Customer>(); try { // Get query var query = customerRepository.GetAllCustomers(pageSize, pageNumber); // Set information for paging response.PageSize = pageSize; response.PageNumber = pageNumber; response.ItemsCount = await query.CountAsync(); // Retrieve items, set model for response response.Model = await query.Paging(pageSize, pageNumber).ToListAsync(); } catch (Exception ex) { response.SetError(ex, Logger); } return(response); }
public async Task <IPagedResponse <Product> > GetProductsAsync(int pageSize = 10, int pageNumber = 1, int?productCategoryID = null) { Logger?.LogInformation("'{0}' has been invoked", nameof(GetProductsAsync)); var response = new PagedResponse <Product>(); try { // Get query var query = DbContext.GetProducts(productCategoryID); // Set information for paging response.PageSize = pageSize; response.PageNumber = pageNumber; response.ItemsCount = await query.CountAsync(); // Retrieve items, set model for response response.Model = await query.Paging(pageSize, pageNumber).ToListAsync(); } catch (Exception ex) { response.SetError(Logger, nameof(GetProductsAsync), ex); } return(response); }
public async Task <IPagedResponse <Currency> > GetCurrenciesAsync(Int32 pageSize = 10, Int32 pageNumber = 1) { Logger?.LogDebug("{0} has been invoked", nameof(GetCurrenciesAsync)); var response = new PagedResponse <Currency>(); try { // Get query var query = SalesRepository.GetCurrencies(); // Set information for paging response.PageSize = (Int32)pageSize; response.PageNumber = (Int32)pageNumber; response.ItemsCount = await query.CountAsync(); // Retrieve items, set model for response response.Model = await query .Paging(pageSize, pageNumber) .ToListAsync(); } catch (Exception ex) { response.SetError(ex, Logger); } return(response); }
public async Task <IPagedResponse <OrderInfo> > GetOrdersAsync(int pageSize = 10, int pageNumber = 1, short?orderStatusID = null, int?customerID = null, int?employeeID = null, int?shipperID = null, short?currencyID = null, Guid?paymentMethodID = null) { Logger?.LogDebug("{0} has been invoked", nameof(GetOrdersAsync)); var response = new PagedResponse <OrderInfo>(); try { // Get query var query = DbContext.GetOrders(orderStatusID, customerID, employeeID, shipperID, currencyID, paymentMethodID); // Set information for paging response.PageSize = pageSize; response.PageNumber = pageNumber; response.ItemsCount = await query.CountAsync(); // Retrieve items, set model for response response.Model = await query .Paging(pageSize, pageNumber) .ToListAsync(); response.Message = string.Format("Page {0} of {1}, Total of rows: {2}", response.PageNumber, response.PageCount, response.ItemsCount); Logger?.LogInformation(response.Message); } catch (Exception ex) { response.SetError(Logger, nameof(GetOrdersAsync), ex); } return(response); }
public async Task <IPagedResponse <TestDTO> > GetTestsSummaryAsync(int pageSize = 5, int pageNumber = 1) { var response = new PagedResponse <TestDTO>(); try { // Get query IQueryable <Test> query = _evalUOW.Tests.GetAll(); // Set information for paging response.PageSize = pageSize; response.PageNumber = pageNumber; response.ItemsCount = await query.CountAsync(); // Retrieve items, set model for response var testList = await query.Paging(pageSize, pageNumber).ToListAsync(); var testListDTO = new List <TestDTO>(); foreach (var tes in testList) { testListDTO.Add(_mapper.MapTest(tes)); } response.Model = testListDTO; } catch (Exception ex) { response.SetError(nameof(GetTestsSummaryAsync), ex); } return(response); }
public async Task <IPagedResponse <OrderInfo> > GetOrdersAsync(Int32 pageSize = 10, Int32 pageNumber = 1, Int16?currencyID = null, Int32?customerID = null, Int32?employeeID = null, Int16?orderStatusID = null, Guid?paymentMethodID = null, Int32?shipperID = null) { Logger?.LogDebug("{0} has been invoked", nameof(GetOrdersAsync)); var response = new PagedResponse <OrderInfo>(); try { // Get query var query = SalesRepository .GetOrders(currencyID, customerID, employeeID, orderStatusID, paymentMethodID, shipperID); // Set information for paging response.PageSize = (Int32)pageSize; response.PageNumber = (Int32)pageNumber; response.ItemsCount = await query.CountAsync(); // Retrieve items, set model for response response.Model = await query .Paging(pageSize, pageNumber) .ToListAsync(); } catch (Exception ex) { response.SetError(ex, Logger); } return(response); }
public async Task <IPagedResponse <ResultDTO> > GetResultsForUserByTestAsync(string userName, int testId, int pageSize = 5, int pageNumber = 1) { var response = new PagedResponse <ResultDTO>(); try { IQueryable <Result> query = _evalUOW.Results.GetAll().Where(x => x.TestId == testId && x.UserName == userName); response.PageSize = pageSize; response.PageNumber = pageNumber; response.ItemsCount = await query.CountAsync(); var resultList = await query.Paging(pageSize, pageNumber).ToListAsync(); var resultListDTO = new List <ResultDTO>(); foreach (var res in resultList) { resultListDTO.Add(_mapper.MapResult(res)); } response.Model = resultListDTO; } catch (Exception ex) { response.SetError(nameof(GetResultsForUserByTestAsync), ex); } return(response); }
public async Task <IPagedResponse <OrderInfo> > GetOrdersAsync(SearchOrdersRequest request) { Logger?.LogDebug("'{0}' has been invoked", nameof(GetOrdersAsync)); var response = new PagedResponse <OrderInfo>(); try { // Get query var query = DbContext .GetOrders(request.OrderStatusID, request.CustomerID, request.EmployeeID, request.ShipperID, request.CurrencyID, request.PaymentMethodID); // Set information for paging response.PageSize = (int)request.PageSize; response.PageNumber = (int)request.PageNumber; response.ItemsCount = await query.CountAsync(); // Retrieve items, set model for response response.Model = await query .Paging((int)request.PageSize, (int)request.PageNumber) .ToListAsync(); response.Message = string.Format("Page {0} of {1}, Total of rows: {2}", response.PageNumber, response.PageCount, response.ItemsCount); Logger?.LogInformation(response.Message); } catch (Exception ex) { response.SetError(Logger, nameof(GetOrdersAsync), ex); } return(response); }
public async Task <IPagedResponse <Product> > GetProductsAsync(int pageSize = 10, int pageNumber = 1) { Logger?.LogDebug("{0} has been invoked", nameof(GetProductsAsync)); var response = new PagedResponse <Product>(); try { //Get Query var query = DbContext.Product; //Set information for paging response.PageSize = pageSize; response.PageNumber = pageNumber; response.ItemsCount = await query.CountAsync(); response.Model = await query .Paging(pageSize, pageNumber) .ToListAsync(); } catch (Exception ex) { response.SetError(Logger, nameof(GetProductsAsync), ex); } return(response); }
public async Task <IPagedResponse <Author> > GetAuthorsAsync(int pageSize = 10, int pageNumber = 1) { Logger?.LogDebug($"{nameof(GetAuthorsAsync)} has been invoked"); var response = new PagedResponse <Author>(); try { var query = BlogRepository.GetAuthors(); // set paging information response.PageSize = pageSize; response.PageNumber = pageNumber; response.ItemsCount = await query.CountAsync(); // Retrieve items, set model for response. response.Model = await query .Paging(pageSize, pageNumber) .ToListAsync(); } catch (Exception ex) { response.SetError(ex, Logger); } return(response); }
public async Task <IPagedResponse <Product> > GetProductsAsync(Int32 pageSize = 10, Int32 pageNumber = 1, Int32?productCategoryID = null) { Logger?.LogInformation("{0} has been invoked", nameof(GetProductsAsync)); var response = new PagedResponse <Product>(); try { // Get query var query = ProductionRepository.GetProducts(productCategoryID); // Set information for paging response.PageSize = (Int32)pageSize; response.PageNumber = (Int32)pageNumber; response.ItemsCount = await query.CountAsync(); // Retrieve items, set model for response response.Model = await query.Paging(pageSize, pageNumber).ToListAsync(); } catch (Exception ex) { response.SetError(ex, Logger); } return(response); }
public async Task <IPagedResponse <ResultDTO> > GetResultsByUserAsync(string userName, int pageSize = 5, int pageNumber = 1) { var response = new PagedResponse <ResultDTO>(); try { if (!System.Text.RegularExpressions.Regex.IsMatch(userName, @"^[a-zA-Z0-9]+$")) { throw new UserNameException("username should be alphanumeric"); } // Get query IQueryable <Result> query = _evalUOW.Results.GetAll().Where(x => x.UserName == userName); // Set information for paging response.PageSize = pageSize; response.PageNumber = pageNumber; response.ItemsCount = await query.CountAsync(); // Retrieve items, set model for response var resultList = await query.Paging(pageSize, pageNumber).ToListAsync(); var resultListDTO = new List <ResultDTO>(); if (resultList != null) { foreach (var res in resultList) { resultListDTO.Add(_mapper.MapResult(res)); } } else { resultListDTO = null; } response.Model = resultListDTO; } catch (Exception ex) { response.SetError(nameof(GetResultsByUserAsync), ex); } return(response); }
public async Task <IActionResult> GetProductsAsync(int?pageSize = 10, int?pageNumber = 1, string name = "", string sortBy = "popularity") { Logger?.LogDebug("'{0}' has been invoked", nameof(GetProductsAsync)); var response = new PagedResponse <Product>(); try { // Get query from repository var query = Service.DbContext.GetProducts(name); // Sorting list if (sortBy == "popularity") { query = query.OrderByDescending(item => item.Likes); } else { query = query.OrderBy(item => item.ProductName); } // Set paging's information response.PageSize = (int)pageSize; response.PageNumber = (int)pageNumber; response.ItemsCount = await query.CountAsync(); // Retrieve items by page size and page number, set model for response response.Model = await query.Paging(response.PageSize, response.PageNumber).ToListAsync(); response.Message = string.Format("Page {0} of {1}, Total of products: {2}.", pageNumber, response.PageCount, response.ItemsCount); Logger?.LogInformation(response.Message); } catch (Exception ex) { response.SetError(Logger, nameof(GetProductsAsync), ex); } return(response.ToHttpResponse()); }