该服务平台采用三层架构,以ASP.NET MVC框架为基础 [6]。采用仓库设计的方法,布署灵便。.NET Framework是一个开源框架,适用混合开发。系统软件的集成开发工具是Visual Studio 2019。在数据库的开发中,利用了一个集成环境中的本地DB,利用 B/S架构,利用一个依赖注入的界面,而不是直接使用依赖关系,而是通过. NET核心提供的一个服务容器来完成。系统程序后台文件图,如图2.1所示。
图2.1 工程目录结构图
ASP.NET MVC 和 Entity Framework (EF) 是两个独立的框架,分别用于 Web 应用程序开发和数据访问。在 ASP.NET MVC 中,采用了模型-视图-控制器 (MVC) 设计模式,控制器协调模型和视图之间的交互,模型表示数据层,视图表示用户界面;而 Entity Framework 是一个 ORM 框架,用于简化与数据库的交互,允许使用面向对象的编程模型来访问数据库。在实际项目中,这两个框架通常结合使用来提高应用程序的性能和可维护性。需要注意的是,为确保应用程序性能和可维护性,应该对数据库访问进行优化,例如使用查询优化技术、分页和缓存等技术来提高数据访问的效率。
HTML、CSS和JavaScript是Web前端开发的三大核心技术,其中HTML用于创建网页结构和内容,CSS用于控制样式和布局,而JavaScript则用于实现交互功能和动态效果。LayUI是一个基于这三种技术的前端UI框架,提供了丰富的组件和模板,可用于快速搭建美观、易用的Web应用程序界面。
在设计页面时,可以使用HTML创建页面的骨架和内容,再使用CSS进行样式和排版的调整,最后使用JavaScript增加交互功能和动态效果。同时,可以使用LayUI提供的组件和模板进行快速定制化开发,从而提高开发效率和用户体验。需要注意的是,在设计过程中应遵循Web标准和最佳实践,确保页面兼容性和响应性。
首页,是使用者看到的第一个页面,使用者可以通过这个页面的文字和图片了解商城的大致情况,也可以通过点击导航栏中的选项进入不同页面查看其他信息,首页主要展示了轮播图,推荐产品,以及产品信息。首页页面运行效果图,如图2.2所示。
图2.2 首页图
实现过程:页面加载时调用后端HomeController接口,当页面加载时,执行“/Home /GoodsList”接口用来获取数据,当接口接收到获取商品数据的请求时,调用product.GoodsList(msg)从数据库中获取数据,并将数据返回给前端页面进行数据的实时显示。
这个模块主要用于产品效果的展示,方便用户浏览商品信息,并且可以按照分类进行产品信息的筛选,从而快捷的选择出自己喜欢的家具信息,效果图,如图2.3所示。
图2.3 产品运行效果图
实现过程:请求商品展示页面,进入Home控制器,然后返回给前端页面,前端页面采用ajax请求展示请求后台接口/Home/ GoodsList,接口以json的形式返回商户数据展示数据。
这个模块主要用于展示我购买的家具信息,以及家具的订单号,发货状态等详细信息。我的订单页面运行效果图,如图2.4所示。
图2.4 我的订单页面运行效果图
实现过程:页面加载时调用后端UserController控制器下的MyOrder方法,当页面加载时,执行“/User / MyOrderList”接口用来获取数据,当接口接收到获取数据的请求时,通过调用orderManage.MyOrderList(msg),从数据库中查询数据,然后将查询到的数据以json形式返回给前端,实现数据的查询与页面显示。
这个模块主要用于展示用户登录系统后,点击我的信息后,便可以查看到我的信息详情。我的信息介绍功能图,如图2.5所示。
图2.5 个人中心运行效果图
实现过程:用户登录成功之后,点击我的信息按钮后,会请求/User/Index跳转到我的信息页面,在我的信息页面,会展示用户的信息,用户在这里,可以对信息进行修改操作,修改后点击修改按钮,便可以保存信息。用户登录以后
这个模块用户输入帐号、密码,姓名等信息来注册,注册完成以后便可以通过账号和密码登录系统后,可以进行产品选购,下单等操作。登录功能图,如图2.6所示。
图2.6 登录页面运行效果图
图2.7 注册页面运行效果图
实现过程:用户输入帐号、密码及正确的验证密码,点击登录,该项目将会在控制器中LoginResult ()登录控制方法。进入userManage.Login(),进行账号密码的比对,若账号密码正确,便登录成功,账号密码错误便提示账号密码错误。若没用账号,则进行账号注册用户点击注册按钮,就会跳到注册页面。用户输入户名、密码、真实姓名、手机号码等资料,按下注册按钮,即可完成注册。如果输入的信息是空白的,则会提示输入信息,接着会,跳到 AccountController. cs的使用者资讯控制类。并且利用SysUserManage来保存注册信息。最终,通过 userManage.Reg(regUser)来存储用户的登记信息,并进行用户的登录。
这个模块主要用于用户将喜欢的家具信息添加到购物车中,以后后续对购买产品运行效果图,如图2.8所示。
图2.8 购物车页面运行效果图
实现过程:当用户登录成功后,点击上商品上的加入购物车,就会把商品信息添加到购物车当中,用户点击继续购物,会跳转到商品展示页面,这时候用户可以继续将喜欢的商品加入购物车中,然后下单付款。
这个模块的作用是让用户对喜欢的家具进行下单操作。下单页面运行效果图,如图2.9所示。
图2.9 下单页面运行效果图
实现过程:用户对喜欢的商品点击下单操作以后会调用PayController控制器下的PayOff 方法进行下单,便可以进入付款页面,在下单的时候用户可以选择订单的类型,选择完成以后,调用便可以将下单的数据提交的后台数据库进行保存。
1. 管理员商户登录
管理员和商户进入登录页面登录,输入账号信息及验证码,系统验证成功后会生成Token,并把用户的 信息存储到session中,登录失败,提示登录失败信息。用户登录页面,如图2.9所示。
图2.10 用户登录界面
实现过程:管理员在登录时输入帐号、密码及正确的验证密码。点击登录按钮,该项目将会使用LoginController控制器中LoginResult ()登录控制方法。在这个方法里会对用户提交的账号和密码到数据库对比。最后对比正确,验证完角色类型后登录到相符合的系统当中。
本模块主要包含网站用户管理和后台用户管理。
1. 用户管理
管理员点击网站用户信息,就能对用户进行添加、删除、查看。新增用户时,填写用户姓名、性别、地址等信息。用户信息管理功能图,如图2.11所示。
图2.11 用户管理界面
实现过程:管理员在成功登录后,就会进入管理员的主页面。点击用户管理,就会触发项目的SysUserController.cs用户控制器类。并通过该控制器,对用户信息,进行增删改查的操作。
2. 后台用户管理
管理员点击后台管理员,可以对后台用户信息进行添加,删除,修改等操作,如图2.12所示。
图2.12 后台用户管理界面
实现过程:管理员在成功登录后,就会进入管理员的主页面。管理点击管理员管理,就会触发项目的SysAdminController.cs管理员控制器类。该类里的增删改查方法,会对管理员的添加,修改,删除请求信息,保存数据库里,并进行数据的更新。
管理员点击商品类别信息管理会进入商品管理,如图2.13所示。
图2.13 商品分类界面
实现过程:管理员成功登录后,点击商品管理,就会进如商品管理主页,当管理员进行商品类型的添加,删除操作时,便会请求ProductCategoryController控制器,这时控制器里对应的方法,便会进行相应的操作。
管理员点商品管理,便可以查看商品信息,对商品信息进行相应操作,如图2.14所示。
图2.14 商品界面
实现过程:管理员成功登录后,就会进入管理员的主页面。点击商品信息管理,就会触发项目的ProductController.cs商品控制器类。当管理员进行相应操作的时候,该控制器下对应的方法便会,对数据库进行对应的操作。
管理员点击订单管理情况,就能对订单进行管理。订单相关操作,如图2.15所示。
图2.15订单界面
实现过程:管理员登录以后,点击订单管理操作,这时候页面会向控制器发送请求,请求到SysOrderController控制器,该控制器下的GetOrderList会将对应的数据返回给页面,在页面上进行展示。管理员可以对,对应的商品进行发货处理。
管理员点击评论管理情况,就能对评论进行管理。公告相关操作,如图2.16所示。
图2.16评论界面
实现过程:管理员登录以后,点击评论管理操作,这时候页面会向控制器发送请求,请求到CommentController控制器,该控制器下的Index会把相应的数据返回给页面,当管理员进行修改操作时AlterResult会将对应的数据进行修改,删除操作时Delete,会对数据进行删除操作。
商家管理是管理员对商家信息进行管理的操作,商家管理如图2.17所示。
实现过程:管理员可以对商家信息进行相应的操作,当管理点击商家管理图标时,会向后台控制ShopController下的Index方法发送请求,这时候会返回页面,页面采用ajax请求List方法,并且调用shopManage.GoodsList(msg)将数据返回页面,页面便会加载商家信息。