本文整理汇总了C#中Nop.Admin.Models.Discounts.DiscountModel类的典型用法代码示例。如果您正苦于以下问题:C# DiscountModel类的具体用法?C# DiscountModel怎么用?C# DiscountModel使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
DiscountModel类属于Nop.Admin.Models.Discounts命名空间,在下文中一共展示了DiscountModel类的13个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: PrepareDiscountModel
protected virtual void PrepareDiscountModel(DiscountModel model, Discount discount)
{
if (model == null)
throw new ArgumentNullException("model");
model.PrimaryStoreCurrencyCode = _currencyService.GetCurrencyById(_currencySettings.PrimaryStoreCurrencyId).CurrencyCode;
model.AvailableDiscountRequirementRules.Add(new SelectListItem() { Text = _localizationService.GetResource("Admin.Promotions.Discounts.Requirements.DiscountRequirementType.Select"), Value = "" });
var discountRules = _discountService.LoadAllDiscountRequirementRules();
foreach (var discountRule in discountRules)
model.AvailableDiscountRequirementRules.Add(new SelectListItem() { Text = discountRule.PluginDescriptor.FriendlyName, Value = discountRule.PluginDescriptor.SystemName });
if (discount != null)
{
//applied to categories
foreach (var category in discount.AppliedToCategories)
{
if (category != null && !category.Deleted)
{
model.AppliedToCategoryModels.Add(new DiscountModel.AppliedToCategoryModel()
{
CategoryId = category.Id,
Name = category.Name
});
}
}
//applied to product variants
foreach (var product in discount.AppliedToProducts)
{
if (product != null && !product.Deleted)
{
var appliedToProductModel = new DiscountModel.AppliedToProductModel()
{
ProductId = product.Id,
ProductName = product.Name
};
model.AppliedToProductModels.Add(appliedToProductModel);
}
}
//requirements
foreach (var dr in discount.DiscountRequirements.OrderBy(dr=>dr.Id))
{
var drr = _discountService.LoadDiscountRequirementRuleBySystemName(dr.DiscountRequirementRuleSystemName);
if (drr != null)
{
model.DiscountRequirementMetaInfos.Add(new DiscountModel.DiscountRequirementMetaInfo()
{
DiscountRequirementId = dr.Id,
RuleName = drr.PluginDescriptor.FriendlyName,
ConfigurationUrl = GetRequirementUrlInternal(drr, discount, dr.Id)
});
}
}
}
}
示例2: Create
//create
public ActionResult Create()
{
if (!_permissionService.Authorize(StandardPermissionProvider.ManageDiscounts))
return AccessDeniedView();
var model = new DiscountModel();
PrepareDiscountModel(model, null);
//default values
model.LimitationTimes = 1;
return View(model);
}
示例3: ManufacturerAddPopup
public ActionResult ManufacturerAddPopup(string btnId, string formId, DiscountModel.AddManufacturerToDiscountModel 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.SelectedManufacturerIds != null)
{
foreach (int id in model.SelectedManufacturerIds)
{
var manufacturer = _manufacturerService.GetManufacturerById(id);
if (manufacturer != null)
{
if (manufacturer.AppliedDiscounts.Count(d => d.Id == discount.Id) == 0)
manufacturer.AppliedDiscounts.Add(discount);
_manufacturerService.UpdateManufacturer(manufacturer);
}
}
}
ViewBag.RefreshPage = true;
ViewBag.btnId = btnId;
ViewBag.formId = formId;
return View(model);
}
示例4: ManufacturerAddPopupList
public ActionResult ManufacturerAddPopupList(DataSourceRequest command, DiscountModel.AddManufacturerToDiscountModel model)
{
if (!_permissionService.Authorize(StandardPermissionProvider.ManageDiscounts))
return AccessDeniedView();
var manufacturers = _manufacturerService.GetAllManufacturers(model.SearchManufacturerName,
0, command.Page - 1, command.PageSize, true);
var gridModel = new DataSourceResult
{
Data = manufacturers.Select(x => x.ToModel()),
Total = manufacturers.TotalCount
};
return Json(gridModel);
}
示例5: CategoryAddPopupList
public ActionResult CategoryAddPopupList(DataSourceRequest command, DiscountModel.AddCategoryToDiscountModel model)
{
if (!_permissionService.Authorize(StandardPermissionProvider.ManageDiscounts))
return AccessDeniedView();
var categories = _categoryService.GetAllCategories(model.SearchCategoryName,
0, command.Page - 1, command.PageSize, true);
var gridModel = new DataSourceResult
{
Data = categories.Select(x =>
{
var categoryModel = x.ToModel();
categoryModel.Breadcrumb = x.GetFormattedBreadCrumb(_categoryService);
return categoryModel;
}),
Total = categories.TotalCount
};
return Json(gridModel);
}
示例6: ProductAddPopupList
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);
}
示例7: Edit
public ActionResult Edit(DiscountModel model, bool continueEditing)
{
if (!_permissionService.Authorize(StandardPermissionProvider.ManageDiscounts))
return AccessDeniedView();
var discount = _discountService.GetDiscountById(model.Id);
if (discount == null)
//No discount found with the specified id
return RedirectToAction("List");
if (ModelState.IsValid)
{
var prevDiscountType = discount.DiscountType;
discount = model.ToEntity(discount);
_discountService.UpdateDiscount(discount);
//clean up old references (if changed) and update "HasDiscountsApplied" properties
if (prevDiscountType == DiscountType.AssignedToCategories
&& discount.DiscountType != DiscountType.AssignedToCategories)
{
//applied to categories
discount.AppliedToCategories.Clear();
_discountService.UpdateDiscount(discount);
}
if (prevDiscountType == DiscountType.AssignedToManufacturers
&& discount.DiscountType != DiscountType.AssignedToManufacturers)
{
//applied to manufacturers
discount.AppliedToManufacturers.Clear();
_discountService.UpdateDiscount(discount);
}
if (prevDiscountType == DiscountType.AssignedToSkus
&& discount.DiscountType != DiscountType.AssignedToSkus)
{
//applied to products
var products = discount.AppliedToProducts.ToList();
discount.AppliedToProducts.Clear();
_discountService.UpdateDiscount(discount);
//update "HasDiscountsApplied" property
foreach (var p in products)
_productService.UpdateHasDiscountsApplied(p);
}
//activity log
_customerActivityService.InsertActivity("EditDiscount", _localizationService.GetResource("ActivityLog.EditDiscount"), discount.Name);
SuccessNotification(_localizationService.GetResource("Admin.Promotions.Discounts.Updated"));
if (continueEditing)
{
//selected tab
SaveSelectedTabName();
return RedirectToAction("Edit", new {id = discount.Id});
}
return RedirectToAction("List");
}
//If we got this far, something failed, redisplay form
PrepareDiscountModel(model, discount);
return View(model);
}
示例8: PrepareDiscountModel
protected virtual void PrepareDiscountModel(DiscountModel model, Discount discount)
{
if (model == null)
throw new ArgumentNullException("model");
model.PrimaryStoreCurrencyCode = _currencyService.GetCurrencyById(_currencySettings.PrimaryStoreCurrencyId).CurrencyCode;
model.AvailableDiscountRequirementRules.Add(new SelectListItem { Text = _localizationService.GetResource("Admin.Promotions.Discounts.Requirements.DiscountRequirementType.Select"), Value = "" });
var discountRules = _discountService.LoadAllDiscountRequirementRules();
foreach (var discountRule in discountRules)
model.AvailableDiscountRequirementRules.Add(new SelectListItem { Text = discountRule.PluginDescriptor.FriendlyName, Value = discountRule.PluginDescriptor.SystemName });
if (discount != null)
{
//requirements
foreach (var dr in discount.DiscountRequirements.OrderBy(dr=>dr.Id))
{
var drr = _discountService.LoadDiscountRequirementRuleBySystemName(dr.DiscountRequirementRuleSystemName);
if (drr != null)
{
model.DiscountRequirementMetaInfos.Add(new DiscountModel.DiscountRequirementMetaInfo
{
DiscountRequirementId = dr.Id,
RuleName = drr.PluginDescriptor.FriendlyName,
ConfigurationUrl = GetRequirementUrlInternal(drr, discount, dr.Id)
});
}
}
}
}
示例9: Edit
public ActionResult Edit(DiscountModel model, bool continueEditing)
{
if (!_permissionService.Authorize(StandardPermissionProvider.ManageDiscounts))
return AccessDeniedView();
var discount = _discountService.GetDiscountById(model.Id);
if (discount == null)
//No discount found with the specified id
return RedirectToAction("List");
if (ModelState.IsValid)
{
discount = model.ToEntity(discount);
_discountService.UpdateDiscount(discount);
//activity log
_customerActivityService.InsertActivity("EditDiscount", _localizationService.GetResource("ActivityLog.EditDiscount"), discount.Name);
SuccessNotification(_localizationService.GetResource("Admin.Promotions.Discounts.Updated"));
return continueEditing ? RedirectToAction("Edit", discount.Id) : RedirectToAction("List");
}
//If we got this far, something failed, redisplay form
PrepareDiscountModel(model, discount);
return View(model);
}
示例10: CategoryAddPopup
public ActionResult CategoryAddPopup(string btnId, string formId, DiscountModel.AddCategoryToDiscountModel 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.SelectedCategoryIds != null)
{
foreach (int id in model.SelectedCategoryIds)
{
var category = _categoryService.GetCategoryById(id);
if (category != null)
{
if (category.AppliedDiscounts.Count(d => d.Id == discount.Id) == 0)
category.AppliedDiscounts.Add(discount);
_categoryService.UpdateCategory(category);
_categoryService.UpdateHasDiscountsApplied(category);
}
}
}
ViewBag.RefreshPage = true;
ViewBag.btnId = btnId;
ViewBag.formId = formId;
return View(model);
}
示例11: ProductAddPopup
public ActionResult ProductAddPopup(string btnId, string formId, 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 (int 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.InsertDiscount(discount, product.Id);
}
//_productService.UpdateProduct(product);
_productService.UpdateHasDiscountsApplied(product.Id);
}
}
}
ViewBag.RefreshPage = true;
ViewBag.btnId = btnId;
ViewBag.formId = formId;
return View(model);
}
示例12: Edit
public ActionResult Edit(DiscountModel model, bool continueEditing)
{
if (!_permissionService.Authorize(StandardPermissionProvider.ManageDiscounts))
return AccessDeniedView();
var discount = _discountService.GetDiscountById(model.Id);
if (discount == null)
//No discount found with the specified id
return RedirectToAction("List");
if (ModelState.IsValid)
{
var prevDiscountType = discount.DiscountType;
discount = model.ToEntity(discount);
_discountService.UpdateDiscount(discount);
//clean up old references (if changed) and update "HasDiscountsApplied" properties
if (prevDiscountType == DiscountType.AssignedToCategories
&& discount.DiscountType != DiscountType.AssignedToCategories)
{
//applied to categories
//_categoryService.
var categories = _categoryService.GetAllCategoriesByDiscount(discount.Id);
//update "HasDiscountsApplied" property
foreach (var category in categories)
{
var item = category.AppliedDiscounts.Where(x => x.Id == discount.Id).FirstOrDefault();
category.AppliedDiscounts.Remove(item);
//_discountService.UpdateDiscount(discount);
//_categoryService.Update(category);
}
}
if (prevDiscountType == DiscountType.AssignedToManufacturers
&& discount.DiscountType != DiscountType.AssignedToManufacturers)
{
//applied to manufacturers
var manufacturers = _manufacturerService.GetAllManufacturersByDiscount(discount.Id);
foreach (var manufacturer in manufacturers)
{
var item = manufacturer.AppliedDiscounts.Where(x => x.Id == discount.Id).FirstOrDefault();
manufacturer.AppliedDiscounts.Remove(item);
//_manufacturerService.UpdateHasDiscountsApplied(manufacturer);
}
}
if (prevDiscountType == DiscountType.AssignedToSkus
&& discount.DiscountType != DiscountType.AssignedToSkus)
{
//applied to products
//var products = discount.AppliedToProducts.ToList();
var products = _productService.GetProductsByDiscount(discount.Id);
foreach (var p in products)
{
var item = p.AppliedDiscounts.Where(x => x.Id == discount.Id).FirstOrDefault();
p.AppliedDiscounts.Remove(item);
_productService.DeleteDiscount(item, p.Id);
_productService.UpdateHasDiscountsApplied(p.Id);
}
}
//activity log
_customerActivityService.InsertActivity("EditDiscount", discount.Id, _localizationService.GetResource("ActivityLog.EditDiscount"), discount.Name);
SuccessNotification(_localizationService.GetResource("Admin.Promotions.Discounts.Updated"));
if (continueEditing)
{
//selected tab
SaveSelectedTabIndex();
return RedirectToAction("Edit", new {id = discount.Id});
}
return RedirectToAction("List");
}
//If we got this far, something failed, redisplay form
PrepareDiscountModel(model, discount);
return View(model);
}
示例13: Edit
public ActionResult Edit(DiscountModel model, bool continueEditing)
{
throw new NotSupportedException("Edit");
}