预期:

仿照Customer 的 Phone number enabled 和 required

增加MemberType

相关步骤如下:

1.运行站点

Admin -> Settings -> All settings(advanced)

-> Add new record

仿照 customersettings.phone 新增

customersettings.membertypeenabled

customersettings.membertyperequired

2.运行站点

Admin -> Configuration -> Languages -> Edit

-> Add new record

仿照 CustomerUser.phone 新增

Admin.Configuration.Settings.CustomerUser.MemberTypeEnabled

Admin.Configuration.Settings.CustomerUser.MemberTypeRequired

3.Nop.Core\Domain\Customers\CustomerSettings.cs

仿照 PhoneEnabled 及 PhoneRequired 新增

/// <summary>

/// Gets or sets a value indicating whether 'Member Type' is enabled

/// </summary>

public bool MemberTypeEnabled { get; set; }

/// <summary>

/// Gets or sets a value indicating whether 'Member Type' is required

/// </summary>

public bool MemberTypeRequired { get; set; }

4.Presentation\Nop.Web\Administration\Models\Settings\CustomerUserSettingsModel.cs

修改 CustomerSettingsModel

仿照 PhoneEnabled 及 PhoneRequired 新增

[NopResourceDisplayName("Admin.Configuration.Settings.CustomerUser.MemberTypeEnabled")]

public bool MemberTypeEnabled { get; set; }

[NopResourceDisplayName("Admin.Configuration.Settings.CustomerUser.MemberTypeRequired")]

public bool MemberTypeRequired { get; set; }

5.Presentation\Nop.Web\Administration\Views\Setting\CustomerUser.cshtml

仿照 PhoneEnabled 及 PhoneRequired 新增

<div class="form-group">

<div class="col-md-3">

@Html.NopLabelFor(model => model.CustomerSettings.MemberTypeEnabled)

</div>

<div class="col-md-9">

@Html.NopEditorFor(model => model.CustomerSettings.MemberTypeEnabled)

@Html.ValidationMessageFor(model => model.CustomerSettings.MemberTypeEnabled)

</div>

</div>

<div class="form-group" id="pnlMemberTypeRequired">

<div class="col-md-3">

@Html.NopLabelFor(model => model.CustomerSettings.MemberTypeRequired)

</div>

<div class="col-md-9">

@Html.NopEditorFor(model => model.CustomerSettings.MemberTypeRequired)

@Html.ValidationMessageFor(model => model.CustomerSettings.MemberTypeRequired)

</div>

</div>

if ($('#@Html.FieldIdFor(model => model.CustomerSettings.MemberTypeEnabled)').is(':checked')) {

$('#pnlMemberTypeRequired').show();

} else {

$('#pnlMemberTypeRequired').hide();

}

$("#@Html.FieldIdFor(model => model.CustomerSettings.MemberTypeEnabled)").click(toggleCustomerRequiredFormField);

6.解决方案 Clean 和 Rebuild

7.运行站点 查看效果

其他:

Presentation\Nop.Web\Administration\Controllers\SettingController.cs

public ActionResult CustomerUser()

{

if (!_permissionService.Authorize(StandardPermissionProvider.ManageSettings))

return AccessDeniedView();

var storeScope = this.GetActiveStoreScopeConfiguration(_storeService, _workContext);

var customerSettings = _settingService.LoadSetting<CustomerSettings>(storeScope);

Presentation\Nop.Web\Administration\Infrastructure\Mapper\AutoMapperConfiguration.cs

仿照  cfg.CreateMap<CustomerUserSettingsModel.CustomerSettingsModel, CustomerSettings>()

//.ForMember(dest => dest.MemberTypeEnabled, mo => mo.Ignore())

//.ForMember(dest => dest.MemberTypeRequired, mo => mo.Ignore())

NopCommerce 增加 Customer Settings的更多相关文章

  1. NopCommerce 增加 Customer Field

    预期效果: Customer表新增一个Column 该新增字段可以在Admin段 新增 修改 列表查询及显示 示例步骤: 0.数据库表修改 alter table [Customer] add Mem ...

  2. NopCommerce 增加 Customer Attributes

    预期: Customer 新增一个自定义属性 运行站点 1.Admin -> Settings -> Customer settings -> Customer form field ...

  3. [转]教你一招 - 如何给nopcommerce增加新闻类别模块

    本文转自:http://www.nopchina.net/post/nopchina-teach-newscategory.html nopcommerce的新闻模块一直都没有新闻类别,但是很多情况下 ...

  4. [转]教你一招 - 如何给nopcommerce增加一个类似admin的area

    本文转自:http://www.cnblogs.com/wucf2004/p/nopcommerce-area.html asp.net mvc里面的area是什么,点击这里查看 如果在nopcomm ...

  5. NopCommerce 关于Customer的会员类别及会员价处理 的尝试途径

    示例效果: 当Customer是某个会员级别或内部员工时, 购物结算时享受一定的折扣: 相关设定如下: Step1.新增会员类别    Admin - Customers - Customer rol ...

  6. 教你一招 - 如何给nopcommerce增加一个类似admin的area

    asp.net mvc里面的area是什么,点击这里查看 如果在nopcommerce里面加入类似admin的area,步骤如下: 1.新建一个mvc空项目MvcApplication1,位置放在\N ...

  7. NopCommerce源代码分析之用户验证和权限管理

    目录 1.  介绍 2.  UML 2.1  实体类UML图 2.2  业务相关UML图 3.  核心代码分析 3.1  实体类源代码 3.2  业务相关源代码 3.3  相关控制器源代码 3.4  ...

  8. Maven命令

    1. mvn help:describe 你是否因为记不清某个插件有哪些goal而痛苦过,你是否因为想不起某个goal有哪些参数而苦恼,那就试试这个命令吧,它会告诉你一切的. 参数: 1. -Dplu ...

  9. maven使用

    Maven是一个项目管理和构建自动化工具.但是对于我们程序员来说,我们最关心的是它的项目构建功能,它定义了项目开发的几个标准步骤:编译,发布,单元测试及部署以帮助项目开发 最简单的时候场景是,在pom ...

随机推荐

  1. [Asp.net 5] Options-配置文件之后的配置

    今天要讲的是OptionsModel解决方案,整个解决方案中也只有Microsoft.Framework.OptionsModel一个工程.按照表面文字OptionsModel应该翻译成选项模型,但是 ...

  2. [Asp.net 5] Localization-Asp.net运行时多语言

    本节介绍的是Microsoft.AspNet.Localization工程.该工程是运行在Asp.net 5环境中的运行时多语言设置. ASP.net 5中间件技术 在新的Asp.net 5中,可以将 ...

  3. Asp.Net Core子应用由于配置中重复添加模块会引起IIS错误500.19

    ASP.NET Core已经从IIS中解耦,可以作为自宿主程序运行,不再依赖IIS. 但我们还是需要强大的IIS作为前置服务器,IIS利用httpPlatformHandler模块来对后台的一些web ...

  4. poj1789--最小生成树(prim)

    水题... 题目大意: 用一个7位的字符串代表一个编号,两个编号之间的distance代表这两个编号之间不同字母的个数.一个编号只能由另一个编号“衍生”出来,代价是这两个编号之间相应的distance ...

  5. JAVA 8 Streams

    什么是Stream 首先要说的是,不要被它的名称骗了,这里的Stream跟JAVA I/O中的InputStream和OutputStream是两个不同的概念.Java 8中的Stream其实是函数式 ...

  6. IOS应用内存释放机制

    这是由iOS系统管理决定的,但APP退出在后台后,只有10秒的持续运行时间,然后暂停.但该APP还在内存中,当出现内存警告,也就是别的APP要运行,而此时内存又不足的情况下,系统会回收停在后台APP所 ...

  7. JS学习笔记10之Math对象

    -->Math对象 常用属性和方法-->使用Math对象制作相应的效果 Math对象用于执行数学任务 一.Math对象的属性: 二.Math对象的方法: 三.常用属性和方法: Math.P ...

  8. 使用React制作一个可配置的页面生成器[0]

    背景 上班两年多,终于来到一家互联网公司,告别之前的朝九晚六的腐败生活,开始了11116的码农之旅. 因为公司做的是直播相关的业务,所以伴随着直播,不定期的就会有运营活动-.- 但是这类活动留给码农的 ...

  9. Microsoft Visual C++ Compiler for Python

    Visual C++ |CPython ------------------------------------------- 14.0(2015) |3.5 10.0(2010) |3.3, 3.4 ...

  10. Xcode计算缓存文件大小和清除缓存

    //获得缓存路径 self.cachesPath = NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, ...