public IEnumerable <ProductViewModel> Get([FromUri] ProductQueryViewModel query) { var result = new List <ProductViewModel>(); var datas = DataRepository.GetData(); if (query != null) { var shop = datas.FirstOrDefault(o => o.Id == query.ShopId); result = shop?.Products.Select(o => new ProductViewModel() { Id = o.Id, Name = o.Name, Price = o.Price }).ToList(); return(result); } datas.ForEach(s => { s.Products.ForEach(p => { var product = new ProductViewModel() { Id = p.Id, Name = p.Name, Price = p.Price }; result.Add(product); }); }); return(result); }
public PagedQueryResult <Product> GetPagedProducts(ProductQueryViewModel queryModel) { var pagedResult = new PagedQueryResult <Product>(); var query = ProductDataSource.LatestProducts .AsQueryable(); var columnsMap = new Dictionary <string, Expression <Func <Product, object> > >() { ["productId"] = p => p.ProductId, ["productName"] = p => p.ProductName, ["isAvailable"] = p => p.IsAvailable, ["price"] = p => p.Price }; query = query.ApplyFiltering(queryModel, columnsMap); query = query.ApplyOrdering(queryModel, columnsMap); pagedResult.TotalItems = query.Count(); query = query.ApplyPaging(queryModel); pagedResult.Items = query.ToList(); return(pagedResult); }
public async Task <IActionResult> Buscarporcategoria(ProductQueryViewModel viewmodel) { DataResponse <List <ProductDTO> > response = await _productService.GetProductsByCategory(viewmodel.CategoryID); var configuration = new MapperConfiguration(cfg => { cfg.CreateMap <ProductDTO, ProductQueryViewModel>(); }); IMapper mapper = configuration.CreateMapper(); List <ProductQueryViewModel> dados = mapper.Map <List <ProductQueryViewModel> >(response.Data); return(View(dados)); }
public override void Execute(object obj) { var vm = new ProductQueryViewModel(); this.Sheel.Show(vm); }