public ActionResult GoToSku(ProductListModel model) { string sku = model.GoDirectlyToSku; var pv = _productService.GetProductVariantBySku(sku); if (pv != null) return RedirectToAction("Edit", "ProductVariant", new { id = pv.Id }); //not found return List(); }
public ActionResult List() { if (!_permissionService.Authorize(StandardPermissionProvider.ManageProducts)) return AccessDeniedView(); var model = new ProductListModel(); model.DisplayProductPictures = _adminAreaSettings.DisplayProductPictures; model.DisplayPdfDownloadCatalog = _pdfSettings.Enabled; //a vendor should have access only to his products model.IsLoggedInAsVendor = _workContext.CurrentVendor != null; //categories model.AvailableCategories.Add(new SelectListItem() { Text = _localizationService.GetResource("Admin.Common.All"), Value = "0" }); foreach (var c in _categoryService.GetAllCategories(showHidden: true)) model.AvailableCategories.Add(new SelectListItem() { Text = c.GetCategoryNameWithPrefix(_categoryService), Value = c.Id.ToString() }); //manufacturers model.AvailableManufacturers.Add(new SelectListItem() { Text = _localizationService.GetResource("Admin.Common.All"), Value = "0" }); foreach (var m in _manufacturerService.GetAllManufacturers(true)) model.AvailableManufacturers.Add(new SelectListItem() { Text = m.Name, Value = m.Id.ToString() }); //stores model.AvailableStores.Add(new SelectListItem() { Text = _localizationService.GetResource("Admin.Common.All"), Value = "0" }); foreach (var s in _storeService.GetAllStores()) model.AvailableStores.Add(new SelectListItem() { Text = s.Name, Value = s.Id.ToString() }); //vendors model.AvailableVendors.Add(new SelectListItem() { Text = _localizationService.GetResource("Admin.Common.All"), Value = "0" }); foreach (var v in _vendorService.GetAllVendors(0, int.MaxValue, true)) model.AvailableVendors.Add(new SelectListItem() { Text = v.Name, Value = v.Id.ToString() }); return View(model); }
public ActionResult ProductList(GridCommand command, ProductListModel model) { if (!_permissionService.Authorize(StandardPermissionProvider.ManageProducts)) return AccessDeniedView(); //a vendor should have access only to his products if (_workContext.CurrentVendor != null) { model.SearchVendorId = _workContext.CurrentVendor.Id; } var gridModel = new GridModel(); var products = _productService.SearchProducts( categoryIds: new List<int>() { model.SearchCategoryId }, manufacturerId: model.SearchManufacturerId, storeId: model.SearchStoreId, vendorId: model.SearchVendorId, keywords: model.SearchProductName, pageIndex: command.Page - 1, pageSize: command.PageSize, showHidden: true ); gridModel.Data = products.Select(x => { var productModel = x.ToModel(); PrepareProductPictureThumbnailModel(productModel, x); return productModel; }); gridModel.Total = products.TotalCount; return new JsonResult { Data = gridModel }; }