预期:

仿照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. 【手记】未能从程序集System.Net.Http.Formatting中加载类型System.Net.Http.Formatting.FormUrlEncodedMediaTypeFormatter

    实际报错如图: 如果你跟我一样是在折腾Asp.Net WebApi 2.x时遇到这个问题,请参看如下办法: 删除现有System.Net.Http.Formatting引用(如果引用了的话) 重新引用 ...

  2. jQuery自动与手动图片切换效果下载

    效果图: 查看效果:http://hovertree.com/jq/hovertreeimg/ 下载:http://hovertree.com/h/bjaf/gk8mko69.htm 使用代码: &l ...

  3. WPF筛选、排序和分组

    可以通过CollectionViewSource或者CollectionView对视图进行排序.筛选和分组. 一.通过CollectionViewSource listingDataView是Coll ...

  4. Java 批量插入数据(Oracle)

    //批量添加20000条数据用时8秒. try {    String url = "jdbc:oracle:thin:@IP:1521:orcl"; // orcl为数据库的SI ...

  5. Java 四种线程池newCachedThreadPool,newFixedThreadPool,newScheduledThreadPool,newSingleThreadExecutor

    介绍new Thread的弊端及Java四种线程池的使用,对Android同样适用.本文是基础篇,后面会分享下线程池一些高级功能. 1.new Thread的弊端执行一个异步任务你还只是如下new T ...

  6. Tomcat启动报错整理

    1.启动报 Connector attribute SSLCertificateFile must be defined when using SSL with APR conf\server.xml ...

  7. Ajax表单异步上传(包括文件域)

    起因 做前台页面时,需要调用WebAPI的Post请求,发送一些字段和文件(相当于把表单通过ajax异步发送出去,得到返回结果),然后得到返回值判断是否成功. 尝试 先是尝试了一下 "jQu ...

  8. iOS适配 旧项目工程在iOS9下不能正常显示

    在iOS开发中,很多时候会用到旧项目,比如版本的升级.使用Demo等等, iOS SDK正在不断的升级,不断的升级给iOS开发带来了新的活力. 然而在iOS SDK新的版本出来之后,旧项目可能会出现新 ...

  9. Linux入侵检测常用命令

    find / -mtime 0 #0代表目前时间,表示从现在开始到24小时以前,有改动过内容的文件全都会被列出来.如果是3天前24小时内,则使用find / -mtime 3 find /etc -n ...

  10. 赞一个 kindle电子书有最新的计算机图书可买了【Docker技术入门与实战】

    最近对docker这个比较感兴趣,找一个比较完整的书籍看看,在z.cn上找到了电子书,jd dangdang看来要加油啊 Docker技术入门与实战 [Kindle电子书] ~ 杨保华 戴王剑 曹亚仑 ...