第43章 前台左侧菜单组件的集成

 

118 EditorType、TaxBasedOn、TaxDisplayType、ForumSettings、TaxSettings、TaxCategory、TaxCategoryBuilder、CustomerNavigationEnum、CustomerNavigationItemModel、CustomerNavigationModel、CustomerAttributeValueModel、CustomerAttributeModel、CustomerInfoModel、CustomerNavigationViewComponent

    EditorType枚举,编辑输入控件的类型,共有2种类型:文本输入控件/BBCode输入控件(以用于对帖子内容进行输入)。

    TaxBasedOn枚举,该枚举定义了增值税3种税率计算方式:账单地址/配送地址/默认地址,并根据相应的税率计算出与之相应对应的税金。

    TaxDisplayType枚举,该枚举用于确认订单金额中是否包含包含有税金,从而确认税金上缴操作最终对象:网店的拥有者/购买商品的用户。

    ForumSettings类,通过该类及其属性成员实例,设定与论坛相关的一些默认数据值,并把这些数据值持久化存储到数据库的设置表中,管理员可以修改这些数据值,使当前程序可以根据管理员的需求进行定制。

TaxSettings类,通过该类及其属性成员实例,设定与增值税相关的一些默认数据值,并把这些数据值持久化存储到数据库的设置表中,管理员可以修改这些数据值,使当前程序可以根据管理员的需求进行定制。

TaxCategory类,通过该实体类及其属性成员,实现当前程序与数据库中增值税类别表之间的数据交互操作。

TaxCategoryBuilder类,该类通过对父类中同名方法进行覆写,为增值税类别实体类中的一些属性成员定义了相关约束规则及其级联关系,为把这些定义约束规则和级联关系,映射到增值税类别表的相应字段上,提供数据和方法支撑。

CustomerNavigationEnum枚举,通过该枚举中的枚举成员,定义了前台左侧菜单组件中所包含的所有菜单项。

CustomerNavigationItemModel纪录,通过纪录定义了前台左侧菜单组件中指定菜单项所需的数据,为菜单项的绑定及其显示提供数据支撑。

CustomerNavigationModel纪录,通过纪录定义了前台左侧菜单组件中所菜单项所需的数据,为菜单的绑定及其显示提供数据支撑。

CustomerAttributeValueModel纪录,通过纪录及其成员,为用户属性值在页面中的绑定及其显示提供数据支撑。

CustomerAttributeModel纪录,通过纪录及其成员,为用户属性在页面中的绑定及其显示提供数据支撑。

CustomerInfoModel纪录,通过纪录及其成员,为用户信息的页面的绑定及其显示提供数据支撑。

CustomerNavigationViewComponent类,  把管前台左侧菜单组件的默认本地化数据,与该组件进行绑定,即在页面展示时,(如果)显示该组件及其所默认本地化数据。

1、重构Nop.Data.Migrations.SchemaMigration.Up方法,取消下列语句前的注释:

    _migrationManager.BuildTable<TaxCategory>(Create);

2、取消对Nop.Services.Installation.InstallationService.InstallSettingsAsync.ForumSettings的注释。

3、取消对Nop.Services.Installation.InstallationService.InstallSettingsAsync.TaxSettings的注释。

4、Nop.Services.Installation.InstallationService类中定义下列方法:

Nop.Services.Installation.InstallationService.InstallTaxCategoriesAsync

5、取消Nop.Services.Installation.InstallationService.InstallRequiredDataAsync方法中下列语句中的注释:

await InstallTaxCategoriesAsync();

6、重构Nop.Web.Infrastructure.RouteProvider.RegisterRoutes方法,取消对该方法中下列语句的注释。

//用户信息页面路由映射。

            endpointRouteBuilder.MapControllerRoute(name: "CustomerInfo",

                pattern: $"{lang}/customer/info",

                defaults: new { controller = "Customer", action = "Info" });

7、重构Nop.Web.Factories.IcustomerModelFactory和Nop.Web.Factories.CustomerModelFactory,取消对下列方法的注释:

PrepareCustomCustomerAttributesAsync

PrepareCustomerInfoModelAsync

PrepareCustomerNavigationModelAsync

8、定义Nop.Web.Controllers.CustomerController.Info方法。

9、复制\Nop.Web\Views\Shared\Components\CustomerNavigation\Default.cshtm页面到示例程序。

10、复制\Nop.Web\Views\Shared\_ColumnsTwo.cshtml页面到示例程序。

11、复制\Nop.Web\Views\Customer\Info.cshtml页面到示例程序。

12、按F5执行安装页面,执行数据库的初始化安装操作,然后执行用户登录操作后,跳转到“https://localhost:44303/customer/info”,这里“我的帐户信息”页面中的前台左侧菜单组件已经在当前页面中已经被显示了出来。

对以上功能更为具体实现和注释见:。22-04-10-043_Nop_4.40.4(前台左侧菜单组件的集成)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值