public ActionResult Configure(int discountId, int? discountRequirementId) { if (!_permissionService.Authorize(StandardPermissionProvider.ManageDiscounts)) return Content("Access denied"); var discount = _discountService.GetDiscountById(discountId); if (discount == null) throw new ArgumentException("Discount could not be loaded"); DiscountRequirement discountRequirement = null; if (discountRequirementId.HasValue) { discountRequirement = discount.DiscountRequirements.FirstOrDefault(dr => dr.Id == discountRequirementId.Value); if (discountRequirement == null) return Content("Failed to load requirement."); } var restrictedProductIds = _settingService.GetSettingByKey<string>(string.Format("DiscountRequirement.RestrictedProductIds-{0}", discountRequirementId.HasValue ? discountRequirementId.Value : 0)); var model = new RequirementModel(); model.RequirementId = discountRequirementId.HasValue ? discountRequirementId.Value : 0; model.DiscountId = discountId; model.Products = restrictedProductIds; //add a prefix ViewData.TemplateInfo.HtmlFieldPrefix = string.Format("DiscountRulesHasAllProducts{0}", discountRequirementId.HasValue ? discountRequirementId.Value.ToString() : "0"); return View("Nop.Plugin.DiscountRules.HasAllProducts.Views.DiscountRulesHasAllProducts.Configure", model); }
public ActionResult Configure(int discountId, int? discountRequirementId) { var discount = _discountService.GetDiscountById(discountId); if (discount == null) throw new ArgumentException("Discount could not be loaded"); DiscountRequirement discountRequirement = null; if (discountRequirementId.HasValue) { discountRequirement = discount.DiscountRequirements.Where(dr => dr.Id == discountRequirementId.Value).FirstOrDefault(); if (discountRequirement == null) return Content("Failed to load requirement."); } var model = new RequirementModel(); model.RequirementId = discountRequirementId.HasValue ? discountRequirementId.Value : 0; model.DiscountId = discountId; model.ProductVariants = discountRequirement != null ? discountRequirement.RestrictedProductVariantIds : ""; //add a prefix ViewData.TemplateInfo.HtmlFieldPrefix = string.Format("DiscountRulesHasAllProducts{0}", discountRequirementId.HasValue ? discountRequirementId.Value.ToString() : "0"); return View("Nop.Plugin.DiscountRules.HasAllProducts.Views.DiscountRulesHasAllProducts.Configure", model); }
public ActionResult ProductAddPopupList(DataSourceRequest command, RequirementModel.AddProductModel model) { if (!_permissionService.Authorize(StandardPermissionProvider.ManageProducts)) return Content("Access denied"); //a vendor should have access only to his products if (_workContext.CurrentVendor != null) { model.SearchVendorId = _workContext.CurrentVendor.Id; } 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 ); var gridModel = new DataSourceResult(); gridModel.Data = products.Select(x => new RequirementModel.ProductModel { Id = x.Id, Name = x.Name, Published = x.Published }); gridModel.Total = products.TotalCount; return Json(gridModel); }