public GridResponseModel<ProductModel> Get(GridRequestModel gridRequestModel, ProductModel searchModel) { var query = _unitOfWork.ProductRepository.Queryable; if (searchModel != null) { if (searchModel.ProductTypeId > 0) query = query.Where(p => p.ProductType.Id == searchModel.ProductTypeId); if (searchModel.SupplierId > 0) query = query.Where(p => p.Supplier != null && p.Supplier.Id == searchModel.SupplierId); if (!string.IsNullOrWhiteSpace(searchModel.Name)) query = query.Where(p => p.Name.Contains(searchModel.Name)); } switch (gridRequestModel.Sidx) { default: case "Name": query = query.OrderBy(p => p.Name, gridRequestModel.IsSortAsending); break; } var dbModel = query.ToPagingResult(gridRequestModel); var model = dbModel.Rows.Select(m => Mapper.Map<ProductModel>(m)).ToArray(); var gridData = new GridResponseModel<ProductModel>(gridRequestModel, dbModel.RowCount, model); return gridData; }
public GridResponseModel<SupplierModel> Get(GridRequestModel gridRequestModel, SupplierModel searchModel) { var query = _unitOfWork.SupplierRepository.Queryable; var dbModel = query.ToPagingResult(gridRequestModel); var model = dbModel.Rows.Select(m => Mapper.Map<SupplierModel>(m)).ToArray(); var gridData = new GridResponseModel<SupplierModel>(gridRequestModel, dbModel.RowCount, model); return gridData; }
public GridResponseModel <UserViewModel> GridView(GridRequestModel request) { GridResponseModel <UserViewModel> gridData = new GridResponseModel <UserViewModel>(); var user = GetUserFromToken(); gridData.Count = _repository.GetAllActive().Count(); IQueryable <User> query = null; if (user.Role.Name == "SuperAdmin") { gridData.Count = _repository.GetAllActive().Count(); query = _repository.GetAllActive().Include(x => x.Role).Include(x => x.Company); } else { gridData.Count = _repository.GetAllActive(user.CompanyId).Count(); query = _repository.GetAllActive(user.CompanyId).Include(x => x.Role).Include(x => x.Company); } if (!string.IsNullOrEmpty(request.Keyword)) { query = query.Where(x => x.Name.Contains(request.Keyword) || x.Name.Contains(request.Keyword)); } if (request.IsAscending) { switch (request.OrderBy) { case "Name": query = query.OrderBy(l => l.Name); break; default: query = query.OrderBy(l => l.Created); break; } } else { switch (request.OrderBy) { case "Name": query = query.OrderByDescending(l => l.Name); break; default: query = query.OrderByDescending(l => l.Created); break; } } query = query.Skip(((request.Page - 1) * request.PerPageCount)).Take(request.PerPageCount); List <User> users = query.ToList(); foreach (var usr in users) { gridData.Data.Add(new UserViewModel(usr)); } return(gridData); }
public GridResponseModel <SaleViewModel> GetGridData(GridRequestModel request, DateTime startDate, DateTime endDate) { GridResponseModel <SaleViewModel> gridData = new GridResponseModel <SaleViewModel>(); endDate = endDate.AddDays(1); gridData.Count = _repository.GetAllActive(getCreatedCompanyId()) .Where(x => x.Created >= startDate && x.Created <= endDate).Count(); var query = _repository.GetAllActive(getCreatedCompanyId()) .Where(x => x.Created >= startDate && x.Created <= endDate) .Include(x => x.SalesDetails) .Include(x => x.SalesDetails.Select(y => y.Product)) .Include(x => x.SalesDetails.Select(y => y.Product.Group)) .Include(x => x.SalesDetails.Select(y => y.Product.Brand)) .Include(x => x.Customer); if (!string.IsNullOrEmpty(request.Keyword)) { query = query.Where(x => x.InvoiceNo.Contains(request.Keyword)); } if (request.IsAscending) { switch (request.OrderBy) { case "Name": query = query.OrderBy(l => l.InvoiceNo); break; default: query = query.OrderBy(l => l.Created); break; } } else { switch (request.OrderBy) { case "Name": query = query.OrderByDescending(l => l.InvoiceNo); break; default: query = query.OrderByDescending(l => l.Created); break; } } query = query.Skip(((request.Page - 1) * request.PerPageCount)).Take(request.PerPageCount); List <Sale> sales = query.ToList(); foreach (var sale in sales) { gridData.Data.Add(new SaleViewModel(sale)); } return(gridData); }
public GridResponseModel <PurchaseViewModel> GetPurchaseReportGridData(GridRequestModel request, DateTime startDate, DateTime endDate) { GridResponseModel <PurchaseViewModel> gridData = new GridResponseModel <PurchaseViewModel>(); gridData.Count = _repository.GetAllActive(getCreatedCompanyId()).Count(x => x.Created >= startDate && x.Created <= endDate); gridData.Value = _repository.GetAllActive(getCreatedCompanyId()) .Where(x => x.Created >= startDate && x.Created <= endDate).Sum(x => (decimal?)x.Amount) ?? 0; var query = _repository.GetAllActive(getCreatedCompanyId()) .Where(x => x.Created >= startDate && x.Created <= endDate) .Include(x => x.PurchaseDetails) .Include(x => x.PurchaseDetails.Select(y => y.Product)) .Include(x => x.PurchaseDetails.Select(y => y.Product.Group)) .Include(x => x.PurchaseDetails.Select(y => y.Product.Brand)); if (!string.IsNullOrEmpty(request.Keyword)) { query = query.Where(x => x.InvoiceNo.Contains(request.Keyword)); } if (request.IsAscending) { switch (request.OrderBy) { case "Name": query = query.OrderBy(l => l.InvoiceNo); break; default: query = query.OrderBy(l => l.Created); break; } } else { switch (request.OrderBy) { case "Name": query = query.OrderByDescending(l => l.InvoiceNo); break; default: query = query.OrderByDescending(l => l.Created); break; } } query = query.Skip(((request.Page - 1) * request.PerPageCount)).Take(request.PerPageCount); List <Purchase> purchases = query.ToList(); foreach (var purchase in purchases) { gridData.Data.Add(new PurchaseViewModel(purchase)); } return(gridData); }
public GridResponseModel <BrandViewModel> GetGridData(GridRequestModel request) { GridResponseModel <BrandViewModel> gridData = new GridResponseModel <BrandViewModel>(); gridData.Count = _repository.GetAllActive(getCreatedCompanyId()).Count(); var query = _repository.GetAllActive(getCreatedCompanyId()); if (!string.IsNullOrEmpty(request.Keyword)) { query = query.Where(x => x.Name.Contains(request.Keyword)); } if (request.IsAscending) { switch (request.OrderBy) { case "Name": query = query.OrderBy(l => l.Name); break; default: query = query.OrderBy(l => l.Created); break; } } else { switch (request.OrderBy) { case "Name": query = query.OrderByDescending(l => l.Name); break; default: query = query.OrderByDescending(l => l.Created); break; } } query = query.Skip(((request.Page - 1) * request.PerPageCount)).Take(request.PerPageCount); List <Brand> brands = query.ToList(); foreach (var brand in brands) { gridData.Data.Add(new BrandViewModel(brand)); } return(gridData); }
public GridResponseModel <RoleViewModel> RoleGridView(GridRequestModel request) { GridResponseModel <RoleViewModel> gridData = new GridResponseModel <RoleViewModel>(); gridData.Count = _repository.GetAllActive().Count(); var query = _repository.GetAllActive().Include(x => x.PermissionMaps.Select(y => y.Permission)); if (!string.IsNullOrEmpty(request.Keyword)) { query = query.Where(x => x.Name.Contains(request.Keyword) || x.Name.Contains(request.Keyword)); } if (request.IsAscending) { switch (request.OrderBy) { case "Name": query = query.OrderBy(l => l.Name); break; default: query = query.OrderBy(l => l.Created); break; } } else { switch (request.OrderBy) { case "Name": query = query.OrderByDescending(l => l.Name); break; default: query = query.OrderByDescending(l => l.Created); break; } } query = query.Skip(((request.Page - 1) * request.PerPageCount)).Take(request.PerPageCount); List <Role> roles = query.ToList(); foreach (var role in roles) { gridData.Data.Add(new RoleViewModel(role)); } return(gridData); }
public GridResponseModel <PermissionViewModel> PermissionGridView(GridRequestModel request) { GridResponseModel <PermissionViewModel> gridData = new GridResponseModel <PermissionViewModel>(); gridData.Count = _repository.GetAllActive().Count(); var query = _repository.GetAllActive(); if (!string.IsNullOrEmpty(request.Keyword)) { query = query.Where(x => x.Resource.Contains(request.Keyword) || x.Resource.Contains(request.Keyword)); } if (request.IsAscending) { switch (request.OrderBy) { case "Name": query = query.OrderBy(l => l.Resource); break; default: query = query.OrderBy(l => l.Created); break; } } else { switch (request.OrderBy) { case "Name": query = query.OrderByDescending(l => l.Resource); break; default: query = query.OrderByDescending(l => l.Created); break; } } query = query.Skip(((request.Page - 1) * request.PerPageCount)).Take(request.PerPageCount); List <Permission> permissions = query.ToList(); foreach (var permission in permissions) { gridData.Data.Add(new PermissionViewModel(permission)); } return(gridData); }
public GridResponseModel <JournalTypeViewModel> GetJournalTypeGridData(GridRequestModel request) { GridResponseModel <JournalTypeViewModel> gridData = new GridResponseModel <JournalTypeViewModel>(); gridData.Count = _journalTypeRepository.GetAllActive(getCreatedCompanyId()).Count(); var query = _journalTypeRepository.GetAllActive(getCreatedCompanyId()); query = query.OrderByDescending(l => l.Created); query = query.Skip(((request.Page - 1) * request.PerPageCount)).Take(request.PerPageCount); List <JournalType> journalTypes = query.ToList(); foreach (var journalTpe in journalTypes) { gridData.Data.Add(new JournalTypeViewModel(journalTpe)); } return(gridData); }
public GridResponseModel <JournalViewModel> GetGridData(GridRequestModel request, DateTime startDate, DateTime endDate) { GridResponseModel <JournalViewModel> gridData = new GridResponseModel <JournalViewModel>(); endDate = endDate.AddDays(1); gridData.Count = _repository.GetAllActive(getCreatedCompanyId()).Where(x => x.Status == JournalStatus.paid).Where(x => x.Created >= startDate && x.Created <= endDate).Count(); var totalValue = _repository.GetAllActive(getCreatedCompanyId()).Where(x => x.Status == JournalStatus.paid).Where(x => x.Created >= startDate && x.Created <= endDate).Sum(x => x.Amount); gridData.Value = totalValue; var query = _repository.GetAllActive(getCreatedCompanyId()); if (request.IsAscending) { switch (request.OrderBy) { case "Status": query = query.OrderBy(l => l.Status); break; default: query = query.OrderBy(l => l.Created); break; } } else { switch (request.OrderBy) { case "Status": query = query.OrderByDescending(l => l.Status); break; default: query = query.OrderByDescending(l => l.Created); break; } } query = query.Where(x => x.Status == JournalStatus.paid).Where(x => x.Created >= startDate && x.Created <= endDate).Include(x => x.JournalType).Include(x => x.SubmittedBy).Skip(((request.Page - 1) * request.PerPageCount)).Take(request.PerPageCount); List <Journal> journals = query.ToList(); foreach (var journal in journals) { gridData.Data.Add(new JournalViewModel(journal)); } return(gridData); }
public GridResponseModel <JournalViewModel> GetGridDataByUser(GridRequestModel request) { GridResponseModel <JournalViewModel> gridData = new GridResponseModel <JournalViewModel>(); var user = this.GetUserFromToken(); gridData.Count = _repository.GetAllActive(getCreatedCompanyId()).Where(x => x.CreatedBy == user.UserId).Count(); var query = _repository.GetAllActive(getCreatedCompanyId()).Where(x => x.CreatedBy == user.UserId); if (request.IsAscending) { switch (request.OrderBy) { case "Status": query = query.OrderBy(l => l.Status); break; default: query = query.OrderBy(l => l.Created); break; } } else { switch (request.OrderBy) { case "Status": query = query.OrderByDescending(l => l.Status); break; default: query = query.OrderByDescending(l => l.Created); break; } } query = query.Include(x => x.JournalType).Include(x => x.SubmittedBy).Skip(((request.Page - 1) * request.PerPageCount)).Take(request.PerPageCount); List <Journal> journals = query.ToList(); foreach (var journal in journals) { gridData.Data.Add(new JournalViewModel(journal)); } return(gridData); }
public GridResponseModel <ProductViewModel> GetGridData(GridRequestModel request) { var firstCharOfKey = " "; if (request.Keyword != null && request.Keyword != "") { firstCharOfKey = request.Keyword[0].ToString(); } GridResponseModel <ProductViewModel> gridData = new GridResponseModel <ProductViewModel>(); List <Product> products = new List <Product>(); gridData.Count = _repository.GetAllActive(getCreatedCompanyId()).Count(); var query = _repository.GetAllActive(getCreatedCompanyId()).Include(x => x.Group).Include(x => x.Brand); if (firstCharOfKey.All(char.IsDigit)) { if (request.Keyword.Length > 9) { products = _repository.GetAllActive(getCreatedCompanyId()) .Where(x => x.VendorBarcodeNo.Equals(request.Keyword)).Include(x => x.Group).Include(x => x.Brand).OrderBy(l => l.Name).Skip(((request.Page - 1) * request.PerPageCount)).Take(request.PerPageCount).ToList(); } else { products = _repository.GetAllActive(getCreatedCompanyId()) .Where(x => x.BarCodeNo.Equals(request.Keyword)).Include(x => x.Group).Include(x => x.Brand).OrderBy(l => l.Name).Skip(((request.Page - 1) * request.PerPageCount)).Take(request.PerPageCount).ToList(); } } else { if (!string.IsNullOrEmpty(request.Keyword)) { query = query.Where(x => x.Name.Contains(request.Keyword)); } if (request.IsAscending) { switch (request.OrderBy) { case "Name": query = query.OrderBy(l => l.Name); break; default: query = query.OrderBy(l => l.Created); break; } } else { switch (request.OrderBy) { case "Name": query = query.OrderByDescending(l => l.Name); break; default: query = query.OrderByDescending(l => l.Created); break; } } query = query.Skip(((request.Page - 1) * request.PerPageCount)).Take(request.PerPageCount); products = query.ToList(); } foreach (var product in products) { gridData.Data.Add(new ProductViewModel(product)); } return(gridData); }
public IQueryable <T> CreateQuery(IQueryable <T> query, GridRequestModel gridRequestModel) { return(CreateQuery(query, gridRequestModel.Sidx, gridRequestModel.IsSortAsending)); }
public IHttpActionResult GetPermission(GridRequestModel request) { return(Ok(_permissionService.PermissionGridView(request).Data)); }
public static Task <PagingResultModel <TQuery> > ToPagingResultAsync <TQuery>(this IQueryable <TQuery> query, GridRequestModel gridRequest) { var rowCount = query.ToFutureValue(q => q.Count()); var query1 = query .Skip((gridRequest.Page - 1) * gridRequest.Rows) .Take(gridRequest.Rows); var gridData = query1.ToListAsync() .ContinueWith(antecendent => new PagingResultModel <TQuery>(antecendent.Result, rowCount.Value)); return(gridData); }
public static PagingResultModel <TQuery> ToPagingResult <TQuery>(this IQueryable <TQuery> query, GridRequestModel gridRequest) { var rowCount = query.ToFutureValue(q => q.Count()); var query1 = query .Skip((gridRequest.Page - 1) * gridRequest.Rows) .Take(gridRequest.Rows); var dbModel = query1.ToList(); var gridData = new PagingResultModel <TQuery>(dbModel, rowCount.Value); return(gridData); }
public ActionResult Get(GridRequestModel gridRequestModel, ProductTypeModel searchModel, bool _search) { var data = _productTypeService.Get(gridRequestModel, _search ? searchModel : null); return Json(data, JsonRequestBehavior.AllowGet); }
public IHttpActionResult GetUsers(GridRequestModel request) { return(Ok(_service.GridView(request).Data)); }
public IHttpActionResult GetJournalType(GridRequestModel request) { return(Ok(_service.GetJournalTypeGridData(request))); }
public IHttpActionResult GetRole(GridRequestModel request) { return(Ok(_roleService.RoleGridView(request).Data)); }
public ActionResult Get(GridRequestModel gridRequestModel, SupplierModel searchModel, bool _search) { var data = _supplierService.Get(gridRequestModel, _search ? searchModel : null); return Json(data, JsonRequestBehavior.AllowGet); }
public IHttpActionResult GetRepost(GridRequestModel request, DateTime startDate, DateTime endDate) { return(Ok(_service.GetSalesReportGridData(request, startDate, endDate))); }
public IHttpActionResult GetCustomer(GridRequestModel request) { return(Ok(_service.GetGridData(request))); }
public IHttpActionResult GetJournal(GridRequestModel request, DateTime startDate, DateTime endDate) { return(Ok(_service.GetGridData(request, startDate, endDate))); }
public ActionResult Get(GridRequestModel gridRequestModel, ProductModel searchModel, bool _search) { if (searchModel.ProductTypeId > 0 || searchModel.SupplierId > 0) _search = true; var data = _productService.Get(gridRequestModel, _search ? searchModel : null); return Json(data, JsonRequestBehavior.AllowGet); }
public SalesReportViewModel <SaleViewModel> GetSalesReportGridData(GridRequestModel request, DateTime startDate, DateTime endDate) { SalesReportViewModel <SaleViewModel> gridData = new SalesReportViewModel <SaleViewModel>(); endDate = endDate.AddDays(1); var query = _repository.GetAllActive(getCreatedCompanyId()) .Where(x => x.Created >= startDate && x.Created <= endDate) .Include(x => x.SalesDetails) .Include(x => x.SalesDetails.Select(y => y.Product)) .Include(x => x.SalesDetails.Select(y => y.Product.Group)) .Include(x => x.SalesDetails.Select(y => y.Product.Brand)) .Include(x => x.Customer); var invoiceNo = request.Keyword.Contains("PB1-"); if (request.Keyword == "") { gridData.Count = _repository.GetAllActive(getCreatedCompanyId()) .Where(x => x.Created >= startDate && x.Created <= endDate).Count(); gridData.DueCount = _repository.GetAllActive(getCreatedCompanyId()) .Where(x => x.Created >= startDate && x.Created <= endDate && x.Due > 0).Count(); gridData.TotalAmount = _repository.GetAllActive(getCreatedCompanyId()) .Where(x => x.Created >= startDate && x.Created <= endDate).Sum(x => (decimal?)x.Amount) ?? 0; gridData.TotalDue = _repository.GetAllActive(getCreatedCompanyId()) .Where(x => x.Created >= startDate && x.Created <= endDate && x.Due > 0).Sum(x => (decimal?)x.Due) ?? 0; gridData.Profit = _repository.GetAllActive(getCreatedCompanyId()) .Where(x => x.Created >= startDate && x.Created <= endDate && x.Profit > 0).Sum(x => (decimal?)x.Profit) ?? 0; } else if (invoiceNo) { gridData.Count = _repository.GetAllActive(getCreatedCompanyId()) .Where(x => x.InvoiceNo.Contains(request.Keyword) && x.Created >= startDate && x.Created <= endDate).Count(); gridData.DueCount = _repository.GetAllActive(getCreatedCompanyId()) .Where(x => x.InvoiceNo.Contains(request.Keyword) && x.Created >= startDate && x.Created <= endDate && x.Due > 0).Count(); gridData.TotalAmount = _repository.GetAllActive(getCreatedCompanyId()) .Where(x => x.InvoiceNo.Contains(request.Keyword) && x.Created >= startDate && x.Created <= endDate).Sum(x => (decimal?)x.Amount) ?? 0; gridData.TotalDue = _repository.GetAllActive(getCreatedCompanyId()) .Where(x => x.InvoiceNo.Contains(request.Keyword) && x.Created >= startDate && x.Created <= endDate && x.Due > 0).Sum(x => (decimal?)x.Due) ?? 0; gridData.Profit = _repository.GetAllActive(getCreatedCompanyId()) .Where(x => x.InvoiceNo.Contains(request.Keyword) && x.Created >= startDate && x.Created <= endDate && x.Profit > 0).Sum(x => (decimal?)x.Profit) ?? 0; query = query.Where(x => x.InvoiceNo.Contains(request.Keyword)); } else { if (request.Keyword.Contains("01")) { gridData.Count = _repository.GetAllActive(getCreatedCompanyId()).Include(x => x.Customer) .Where(x => x.Customer.Phone.Contains(request.Keyword) && x.Created >= startDate && x.Created <= endDate).Count(); gridData.DueCount = _repository.GetAllActive(getCreatedCompanyId()).Include(x => x.Customer) .Where(x => x.Customer.Phone.Contains(request.Keyword) && x.Created >= startDate && x.Created <= endDate && x.Due > 0).Count(); gridData.TotalAmount = _repository.GetAllActive(getCreatedCompanyId()).Include(x => x.Customer) .Where(x => x.Customer.Phone.Contains(request.Keyword) && x.Customer.Name.Contains(request.Keyword) && x.Created >= startDate && x.Created <= endDate).Sum(x => (decimal?)x.Amount) ?? 0; gridData.TotalDue = _repository.GetAllActive(getCreatedCompanyId()).Include(x => x.Customer) .Where(x => x.Customer.Phone.Contains(request.Keyword) && x.Created >= startDate && x.Created <= endDate && x.Due > 0).Sum(x => (decimal?)x.Due) ?? 0; gridData.Profit = _repository.GetAllActive(getCreatedCompanyId()).Include(x => x.Customer) .Where(x => x.Customer.Phone.Contains(request.Keyword) && x.Created >= startDate && x.Created <= endDate && x.Profit > 0).Sum(x => (decimal?)x.Profit) ?? 0; query = query.Where(x => x.Customer.Phone.Contains(request.Keyword)); } else { gridData.Count = _repository.GetAllActive(getCreatedCompanyId()).Include(x => x.Customer) .Where(x => x.Customer.Name.Contains(request.Keyword) && x.Created >= startDate && x.Created <= endDate).Count(); gridData.DueCount = _repository.GetAllActive(getCreatedCompanyId()).Include(x => x.Customer) .Where(x => x.Customer.Name.Contains(request.Keyword) && x.Created >= startDate && x.Created <= endDate && x.Due > 0).Count(); gridData.TotalAmount = _repository.GetAllActive(getCreatedCompanyId()).Include(x => x.Customer) .Where(x => x.Customer.Name.Contains(request.Keyword) && x.Customer.Name.Contains(request.Keyword) && x.Created >= startDate && x.Created <= endDate).Sum(x => (decimal?)x.Amount) ?? 0; gridData.TotalDue = _repository.GetAllActive(getCreatedCompanyId()).Include(x => x.Customer) .Where(x => x.Customer.Name.Contains(request.Keyword) && x.Created >= startDate && x.Created <= endDate && x.Due > 0).Sum(x => (decimal?)x.Due) ?? 0; gridData.Profit = _repository.GetAllActive(getCreatedCompanyId()).Include(x => x.Customer) .Where(x => x.Customer.Name.Contains(request.Keyword) && x.Created >= startDate && x.Created <= endDate && x.Profit > 0).Sum(x => (decimal?)x.Profit) ?? 0; query = query.Where(x => x.Customer.Name.Contains(request.Keyword)); } } if (request.IsAscending) { switch (request.OrderBy) { case "InvoiceNo": query = query.OrderBy(l => l.InvoiceNo); break; case "Due": query = query.OrderBy(l => l.Due); break; case "Created": query = query.OrderBy(l => l.Created); break; default: query = query.OrderBy(l => l.Created); break; } } else { switch (request.OrderBy) { case "InvoiceNo": query = query.OrderByDescending(l => l.InvoiceNo); break; case "Due": query = query.OrderByDescending(l => l.Due); break; case "Created": query = query.OrderByDescending(l => l.Created); break; default: query = query.OrderByDescending(l => l.Created); break; } } query = query.Skip(((request.Page - 1) * request.PerPageCount)).Take(request.PerPageCount); List <Sale> sales = query.ToList(); foreach (var sale in sales) { gridData.Data.Add(new SaleViewModel(sale)); } return(gridData); }