0%

基于SpringBoot+Nginx+Redis的电子商城(三)

front

基于SpringBoot+Nginx+Redis的电子商城(三)

商品模块设计

商品模块首页详细设计

在首页商品展示模块,用户可以看到网站顶部的导航栏、搜索框、购物车、登录注册等功能。其中,如果用户在未登录的情况下点击购物车,则将会弹出模态框提醒用户未登录,并让用户跳转到登录页面。在下方是一个商品展示轮播图。而在轮播图的下方展示热销商品和其他类别的运动商品等。用户可以点击某个商品,进入商品详情页面进行浏览。并且在该页面利用了bootstrap进行开发,有较好的响应式。

商品浏览设计说明

(1)程序描述

商品浏览页面主要是展示商品的大致信息一般是带图显示,采用分页的形式。HTML代码具有部分重用,可用于展示商品的评价和成交记录等。

(2)功能

1

(3)性能

在点击换页操作后,响应时间在2秒左右,最多不超过5秒。+要求对从数据库查出的数据进行分析,避免将错误的信息和机密信息传到前台。+点击对应商品和能跳转到对应商品的详细页面。

(4)输入项

2

相关说明:如当前浏览者是已登录的客户,则要把用户的相关信息传进来。可以只传用户ID。数据形式为Json。ID的数据类型为Int。如果是从登录界面调回,则还需要将跳转前的页面信息传回来,如:跳转前浏览的页面号,形式为Json。ID的数据类型为Int。

(5) 输出项

2

相关说明:输出数据形式为HTML数据。通过浏览器解析和展示给用户。其中HTML的数据包括:跳转到其他页面的超链接。单个商品的图片,单个商品的ID。商品的总数,商品的总页数和当前页数。已经登录的客户的信息,在页面上显示用户名,用户的消息等,但不能显示用的ID。

(6) 流程图

2

(7) 数据流图

2

热销榜设计

此热销榜是对商品热销程度进行一个排名,供用户进行参考和选择。热销榜采用Redis的Sorted Set数据结构来进行存储。电商系统高并发情况下,采用java数据结构存储容易出现并发安全的问题,因此Redis单线程很适合这样的场景。

2

商品评价设计

用户在购买商品过后,可以对商品进行评价,本系统评价数据存储于MySql数据库当中。当订单完成后,系统将会提示用户进行评价。而评价的内容,将会显示在商品详情中,方便后续购买者进行查看。

2

商品搜索设计

用户通过在页面上方的搜索框中输入关键词,并点击搜索按钮,即可以通过sql的模糊搜索,对所有商品的名称进行模糊匹配,从而筛选出用户期待的商品。

2

用户模块设计

对于本项目用户,主要分为普通用户和管理员。而用户和管理员的网址和主页信息是有专门区别的,两者的权限也有所不同,管理员可以拥有普通用户的权限,也可以进行普通用户的购物等功能,但普通用户却不能登录进管理员界面。

普通用户注册、登录、个人信息管理、注销的整体流程活动图如下所示:
2

对于普通用户而言,刚开始使用系统浏览商品时,可以不注册用户,在这种情况下,先了解下商城的商品信息,当涉及到用户交易的时候,用户可以选择注册用户,填写个人基本信息,然后登录系统,登录系统后,用户可以选择修改个人信息,例如上传个人头像等。当用户想注销时,可以点击退出按钮,退出系统。

而我们系统是采用session的形式存储用户的个人基本信息的,默认是30分钟,当用户出于网站中持久没有任何操作,并且超过30分钟后,session会自动丢失,再次操作时需要再次登录系统。

(1)普通用户登录

2

(2)注册

普通用户注册主要通过首页注册按钮进入注册页面,填写好个人基本信息,包括用户账号、用户昵称、登录密码、真实姓名、用户性别、生日、邮政编号、收货地址、用户头像(可选),通过验证后,注册用户成功。

(3)个人信息管理

用户登录进入主页后,可点击主页个人头像,进入个人信息界面,可查看个人基本信息,通过修改,点击保存后,成功修改成功个人基本信息,调用接口修改数据库信息。

(4)注销

用户主要通过点击导航栏的注销按钮退出,注销用户,而后端对注销的用户的session信息删除,下次登录时需要重新登录系统。

管理员注册、登录、个人信息管理、注销的整体流程活动图如下所示:

2

对于管理员登录系统,有专门的后台供其进入系统,管理员输入账号、密码便可登录,管理员登录后台后,可以选择修改订单状态,查看商品销售情况等,并且管理员可以注册新管理员,以增加管理员,除此之外,管理员同样拥有用户所有的功能,包括去前台浏览商品,购买等。

(1)管理员登录

2

注册、个人信息管理、注销同普通用户一样,不再赘述。

订单模块设计

2

(1)购物车

用户浏览商品后,选择自己合适的商品,可以选择加入购物车,继续浏览商品,也可以选择点击立即购买,直接进入购物车界面进行结算,此时后端为用户生成购物车列表,存储用户购物车的信息。

(2)付款

用户选择付款后,需要确认个人收货地址与联系方式,付款成功后,购物车列表清空,商品数量减少相应的数量,系统会生成订单,订单初始化状态为待发货,等管理员到后台确认发货后,用户的订单状态会发生改变,等待收货状态。

(3)收货

用户收到货物后,可点击确认收货按钮,订单状态为以完成,并且可以选择评价商品。

(4)评价

评价时可选的,成功评价后,日后还可以继续评价,并且评价的内容不仅会出现在管理员后台,同时还会直接在前台呈现给其他用户观看。

订单的存储主要采用商品订单表存储。

后台管理模块设计

订单发货

(1)描述

后台全部订单页面主要用于展示订单信息(包括订单号、收货人、订单状态、联系方式),以及操作订单发货更新订单状态。当订单状态为“等待买家发货“时,可通过点击操作的详情按钮进行订单发货标记。

(2)IPO图

2

(3)性能

在点击“全部订单”按钮后,响应时间在2秒左右,不超过5秒。点击“发货”按钮后,平均响应时间在2秒。

(4) 数据流图

2

产品管理

(1)描述

所有产品页面展示所有产品信息(包括名称、标题、原价、促销价、状态,创建时间)、同时具有添加新产品和更改产品列表内的产品信息以及产品查询。管理员可以通过类型、名称、类别、金额范围联合查询产品。并提供产品信息更改和创建页面。

(2)IPO图

2

(3)性能

输入新产品信息进行创建或更新响应时间平均在5秒。

用户管理

(1)描述

用户管理页面,可展示、查询用户信息(包括用户名,昵称、姓名、出生日期、性别)。支持用户信息查询和展示,提供详细信息展示页面。

(2)IPO图

2

(3)流程图

2

(4)数据流图

2

产品分类管理

(1)描述

产品分类管理可以获取并展示产品分类,可以通过点击添加分类,跳转进入分类输入详情页面,输入完成后自动更新分类信息。

(2)IPO图

2

-------------本文结束感谢您的阅读-------------