public List <CustomerDiscountViewModel> Search(CustomerDiscountSearch search) { var products = _shopContext.Products.Select(p => new { p.Id, p.Name }).ToList(); var query = _discountContext.CustomerDiscounts.Select(d => new CustomerDiscountViewModel() { Id = d.Id, DateEnd = d.DateEnd.ToPersian(), DateEndGR = d.DateEnd, DateStart = d.DateStart.ToPersian(), DateStartGR = d.DateStart, DiscountRate = d.DiscountRate, ProductId = d.ProductId, Reason = d.Reason, DateCreate = d.DateCreate.ToPersian(), }); if (search.ProductId > 0) { query = query.Where(d => d.ProductId == search.ProductId); } if (!string.IsNullOrWhiteSpace(search.DateStart)) { query = query.Where(d => d.DateStartGR > search.DateStart.ToGeorgianDateTime()); } if (!string.IsNullOrWhiteSpace(search.DateEnd)) { query = query.Where(d => d.DateEndGR < search.DateEnd.ToGeorgianDateTime()); } var discounts = query.OrderByDescending(p => p.Id).ToList(); discounts.ForEach(d => d.Product = products.FirstOrDefault(p => p.Id == d.ProductId)?.Name); return(discounts); }
public void OnGet(CustomerDiscountSearch search) { Products = new SelectList(_productApplication.GetProducts(), "Id", "Name"); CustomerDiscounts = _customerDiscountApplication.Search(search); }
public List <CustomerDiscountViewModel> Search(CustomerDiscountSearch search) { return(_customerDiscountRepository.Search(search)); }