public ActionResult ProductAddPopupList(DataSourceRequest command, DiscountModel.AddProductToDiscountModel model) { if (!_permissionService.Authorize(StandardPermissionProvider.ManageDiscounts)) { return(AccessDeniedView()); } var gridModel = new DataSourceResult(); var products = _productService.SearchProducts( categoryIds: new List <int> { model.SearchCategoryId }, manufacturerId: model.SearchManufacturerId, storeId: model.SearchStoreId, vendorId: model.SearchVendorId, productType: model.SearchProductTypeId > 0 ? (ProductType?)model.SearchProductTypeId : null, keywords: model.SearchProductName, pageIndex: command.Page - 1, pageSize: command.PageSize, showHidden: true ); gridModel.Data = products.Select(x => x.ToModel()); gridModel.Total = products.TotalCount; return(Json(gridModel)); }
public virtual async Task <DiscountModel.AddProductToDiscountModel> PrepareProductToDiscountModel() { var model = new DiscountModel.AddProductToDiscountModel(); //stores model.AvailableStores.Add(new SelectListItem { Text = _translationService.GetResource("Admin.Common.All"), Value = " " }); foreach (var s in await _storeService.GetAllStores()) { model.AvailableStores.Add(new SelectListItem { Text = s.Shortcut, Value = s.Id.ToString() }); } //vendors model.AvailableVendors.Add(new SelectListItem { Text = _translationService.GetResource("Admin.Common.All"), Value = " " }); foreach (var v in await _vendorService.GetAllVendors(showHidden: true)) { model.AvailableVendors.Add(new SelectListItem { Text = v.Name, Value = v.Id.ToString() }); } //product types model.AvailableProductTypes = ProductType.SimpleProduct.ToSelectList().ToList(); model.AvailableProductTypes.Insert(0, new SelectListItem { Text = _translationService.GetResource("Admin.Common.All"), Value = " " }); return(model); }
public virtual IActionResult ProductAddPopup(DiscountModel.AddProductToDiscountModel model) { if (!_permissionService.Authorize(StandardPermissionProvider.ManageDiscounts)) { return(AccessDeniedView()); } var discount = _discountService.GetDiscountById(model.DiscountId); if (discount == null) { throw new Exception("No discount found with the specified id"); } if (model.SelectedProductIds != null) { foreach (var id in model.SelectedProductIds) { var product = _productService.GetProductById(id); if (product != null) { if (product.AppliedDiscounts.Count(d => d.Id == discount.Id) == 0) { product.AppliedDiscounts.Add(discount); } _productService.UpdateProduct(product); _productService.UpdateHasDiscountsApplied(product); } } } ViewBag.RefreshPage = true; return(View(model)); }
public virtual DiscountModel.AddProductToDiscountModel PrepareProductToDiscountModel() { var model = new DiscountModel.AddProductToDiscountModel(); //categories model.AvailableCategories.Add(new SelectListItem { Text = _localizationService.GetResource("Admin.Common.All"), Value = " " }); var categories = _categoryService.GetAllCategories(showHidden: true); foreach (var c in categories) { model.AvailableCategories.Add(new SelectListItem { Text = c.GetFormattedBreadCrumb(categories), Value = c.Id.ToString() }); } //manufacturers model.AvailableManufacturers.Add(new SelectListItem { Text = _localizationService.GetResource("Admin.Common.All"), Value = " " }); foreach (var m in _manufacturerService.GetAllManufacturers(showHidden: 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 = " " }); 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 = " " }); foreach (var v in _vendorService.GetAllVendors(showHidden: true)) { model.AvailableVendors.Add(new SelectListItem { Text = v.Name, Value = v.Id.ToString() }); } //product types model.AvailableProductTypes = ProductType.SimpleProduct.ToSelectList(false).ToList(); model.AvailableProductTypes.Insert(0, new SelectListItem { Text = _localizationService.GetResource("Admin.Common.All"), Value = " " }); return(model); }
public IActionResult ProductAddPopupList(DataSourceRequest command, DiscountModel.AddProductToDiscountModel model) { var products = _discountViewModelService.PrepareProductModel(model, command.Page, command.PageSize); var gridModel = new DataSourceResult(); gridModel.Data = products.products.ToList(); gridModel.Total = products.totalCount; return(Json(gridModel)); }
public virtual void InsertProductToDiscountModel(DiscountModel.AddProductToDiscountModel model) { foreach (string id in model.SelectedProductIds) { var product = _productService.GetProductById(id); if (product != null) { if (product.AppliedDiscounts.Count(d => d == model.DiscountId) == 0) { product.AppliedDiscounts.Add(model.DiscountId); _productService.InsertDiscount(model.DiscountId, product.Id); } } } }
public async Task <IActionResult> ProductAddPopup(DiscountModel.AddProductToDiscountModel model) { var discount = await _discountService.GetDiscountById(model.DiscountId); if (discount == null) { throw new Exception("No discount found with the specified id"); } if (model.SelectedProductIds != null) { await _discountViewModelService.InsertProductToDiscountModel(model); } ViewBag.RefreshPage = true; return(View(model)); }
public ActionResult ProductAddPopup(int discountId) { if (!_permissionService.Authorize(StandardPermissionProvider.ManageDiscounts)) { return(AccessDeniedView()); } var model = new DiscountModel.AddProductToDiscountModel(); //categories model.AvailableCategories.Add(new SelectListItem { Text = _localizationService.GetResource("Admin.Common.All"), Value = "0" }); var categories = SelectListHelper.GetCategoryList(_categoryService, _cacheManager, true); foreach (var c in categories) { model.AvailableCategories.Add(c); } //manufacturers model.AvailableManufacturers.Add(new SelectListItem { Text = _localizationService.GetResource("Admin.Common.All"), Value = "0" }); foreach (var m in _manufacturerService.GetAllManufacturers(showHidden: 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(showHidden: true)) { model.AvailableVendors.Add(new SelectListItem { Text = v.Name, Value = v.Id.ToString() }); } //product types model.AvailableProductTypes = ProductType.SimpleProduct.ToSelectList(false).ToList(); model.AvailableProductTypes.Insert(0, new SelectListItem { Text = _localizationService.GetResource("Admin.Common.All"), Value = "0" }); return(View(model)); }
public virtual (IList <ProductModel> products, int totalCount) PrepareProductModel(DiscountModel.AddProductToDiscountModel model, int pageIndex, int pageSize) { var products = _productService.PrepareProductList(model.SearchCategoryId, model.SearchManufacturerId, model.SearchStoreId, model.SearchVendorId, model.SearchProductTypeId, model.SearchProductName, pageIndex, pageSize); return(products.Select(x => x.ToModel()).ToList(), products.TotalCount); }
public virtual async Task <(IList <ProductModel> products, int totalCount)> PrepareProductModel(DiscountModel.AddProductToDiscountModel model, int pageIndex, int pageSize) { var products = await _productService.PrepareProductList(model.SearchCategoryId, model.SearchBrandId, model.SearchCollectionId, model.SearchStoreId, model.SearchVendorId, model.SearchProductTypeId, model.SearchProductName, pageIndex, pageSize); return(products.Select(x => x.ToModel(_dateTimeService)).ToList(), products.TotalCount); }