基于SSM的网上花店系统(源码+L文+说明文档)
目录
4 系统设计
4.1 系统概述
4 系统设计
当前,系统的类型有很多,从系统呈现的内容来看,系统的类型有社交类,有商业类,有政府类,有新闻类等。那么,在众多系统类型中,先明确将要设计的系统的类型才是系统设计的首要工作,然后在此基础上明确系统的用户群,功能等,针对这些信息设计出具有独特体验和视觉的系统。如此才能让系统比较具有特色,也能够在众多相似系统中给用户留下深刻印象。
4.1系统目标
本系统在功能制定上,严格参照用户的要求,但是在设计本系统时,也要满足易操作,使用便利的设计要求。由此,设计出一个规范化并且符合用户需求的系统,一定要达到下述系统目标。
第一个系统目标:用户与系统之间的操作方式是基于人机对话,可视化界面的设计除了美观性之外,也具备友好性。可视化界面提供的各类信息符合准确性,可靠性的要求,并能够方便用户灵活查看。
第二个系统目标:用户与系统交互产生的数据,要严格规范的保存在数据库里,无论是后期管理人员查找与管理,都要确保数据安全。
第三个系统目标:实现用户需求的功能。根据对用户的调查得出的功能需求,完成网上花店的设计与实现。
第四个系统目标:在必要环节,对用户登记的数据进行检查,包括数据长度,以及数据输入类型等的检查,发现错误及时反馈,引导用户规范登记数据。常见的有密码修改,注册登录,用户资料填写等环节的数据核验。
第五个系统目标:设计开发本系统,需要尽最大努力,在系统具备易操作的特点外,也要求系统于后期使用中,维护方便,让系统具备易维护的特点。
第六个系统目标:本系统在交付用户使用时,可以达到运行稳定的目标,另外,系统具备安全性,也符合可靠性的条件,用户可以放心使用。
4.2功能结构设计
前面所做的功能分析,只是分析本系统的功能,这部分需要在此基础上进行系统结构的详细设计。
设计的系统的详细功能见下图,管理员登录进入本人后台之后,主要完成花材选择管理,用户管理,鲜花管理,鲜花出入库管理,鲜花订单管理等。用户联系客服咨询问题,查看鲜花,可以收藏,购买,评论鲜花,支付订单,管理个人订单等。
图4.1 系统功能结构图
4.3数据库设计
相比非关系型数据库来说,目前市场上使用率比较高,并且易于维护的数据库,当数关系型数据库了。这个数据库主要是基于关系模型的方式来对数据信息进行组织。也就是常见的二维表模型。可以说二维表和二维表之间的相互联系就构成了关系型数据库。
4.3.1数据库E-R图
为了更好地保存网上花店产生的数据,就需要在数据库的设计阶段对E-R模型进行建立,以及完成数据库中的表结构的创建。之所以要单独完成数据库的设计,主要有以下几点原因:
第一点:防止代码冗余;
第二点:防止占用过多内存;
第三点:提升数据库的整体性能,方便程序开发以及数据更新;
第四点:保证数据的完整性;
本部分内容主要在于建立本系统的E-R模型,需要先收集数据,然后根据数据库实现的思路,对用户的需求进行分析,这期间需要对实体,属性,还有关系进行标识,为绘制E-R模型做好充足准备。同时,在作图中,也要注意作图规范,注意每个符号的正确使用。
(1)设计的订单实体,其具备的属性见下图。
图4.4 订单实体属性图
(2)设计的鲜花实体,其具备的属性见下图。
图4.5 鲜花实体属性图
(3)设计的用户实体,其具备的属性见下图。
图4.6 用户实体属性图
(4)设计的管理员实体,其具备的属性见下图。
图4.7 管理员实体属性图
(5)设计的各实体间关系见下图。
图4.8 实体间关系E-R图
4.3.2 数据库表结构
为了设计出结构合理,性能优良的数据库,在设计数据库时,需要遵循三大范式:
第一范式:确保数据表当中的每列所代表的字段值都不能再进行分解了;
第二范式:在满足第一范式基础上,让数据表中每列与主键相关;
第三范式:在满足第二范式基础上,确保每列数据直接与主键相关,不是间接相关。
从上面的表述中可以看出,这三大范式,在等级上还是有区分的,最低等级的就数第一范式,最高等级的就是第三范式,趋于两者中间的是第二范式。总之,数据库设计按照这三大范式进行,可以简化设计过程,并且还会减少数据冗余,对于数据检索效率的提升也很有帮助。
表4.1 鲜花评论信息表
字段 | 类型 | 空 | 默认 | 注释 |
id | bigint(20) | 否 |
| 主键 |
addtime | timestamp | 否 | CURRENT_TIMESTAMP | 创建时间 |
refid | bigint(20) | 否 |
| 关联表id |
userid | bigint(20) | 否 |
| 用户id |
content | longtext | 否 |
| 评论内容 |
reply | longtext | 是 | NULL | 回复内容 |
表4.2 订单信息表
字段 | 类型 | 空 | 默认 | 注释 |
id | bigint(20) | 否 |
| 主键 |
addtime | timestamp | 否 | CURRENT_TIMESTAMP | 创建时间 |
orderid | varchar(200) | 否 |
| 订单编号 |
tablename | varchar(200) | 是 | xianhuaxinxi | 商品表名 |
userid | bigint(20) | 否 |
| 用户id |
goodid | bigint(20) | 否 |
| 商品id |
goodname | varchar(200) | 是 | NULL | 商品名称 |
picture | varchar(200) | 是 | NULL | 商品图片 |
buynumber | int(11) | 否 |
| 购买数量 |
price | float | 否 | 0 | 价格/积分 |
discountprice | float | 是 | 0 | 折扣价格 |
total | float | 否 | 0 | 总价格/总积分 |
discounttotal | float | 是 | 0 | 折扣总价格 |
type | int(11) | 是 | 1 | 支付类型 |
status | varchar(200) | 是 | NULL | 状态 |
address | varchar(200) | 是 | NULL | 地址 |
表4.3 管理员信息表
字段 | 类型 | 空 | 默认 | 注释 |
id | bigint(20) | 否 |
| 主键 |
username | varchar(100) | 否 |
| 用户名 |
password | varchar(100) | 否 |
| 密码 |
role | varchar(100) | 是 | 管理员 | 角色 |
addtime | timestamp | 否 | CURRENT_TIMESTAMP | 新增时间 |
表4.4 鲜花出库信息表
字段 | 类型 | 空 | 默认 | 注释 |
id | bigint(20) | 否 |
| 主键 |
addtime | timestamp | 否 | CURRENT_TIMESTAMP | 创建时间 |
xianhuamingcheng | varchar(200) | 是 | NULL | 鲜花名称 |
huacaixuanze | varchar(200) | 是 | NULL | 花材选择 |
shuliang | int(11) | 是 | NULL | 数量 |
dengjishijian | date | 是 | NULL | 登记时间 |
beizhu | varchar(200) | 是 | NULL | 备注 |
表4.5 鲜花入库信息表
字段 | 类型 | 空 | 默认 | 注释 |
id | bigint(20) | 否 |
| 主键 |
addtime | timestamp | 否 | CURRENT_TIMESTAMP | 创建时间 |
xianhuamingcheng | varchar(200) | 是 | NULL | 鲜花名称 |
huacaixuanze | varchar(200) | 是 | NULL | 花材选择 |
shuliang | int(11) | 是 | NULL | 数量 |
dengjishijian | date | 是 | NULL | 登记时间 |
beizhu | varchar(200) | 是 | NULL | 备注 |
表4.6 鲜花信息表
字段 | 类型 | 空 | 默认 | 注释 |
id | bigint(20) | 否 |
| 主键 |
addtime | timestamp | 否 | CURRENT_TIMESTAMP | 创建时间 |
xianhuamingcheng | varchar(200) | 否 |
| 鲜花名称 |
huacaixuanze | varchar(200) | 否 |
| 花材选择 |
tupian | varchar(200) | 是 | NULL | 图片 |
cailiao | varchar(200) | 是 | NULL | 材料 |
huayu | varchar(200) | 是 | NULL | 花语 |
xianhuayongtu | varchar(200) | 是 | NULL | 鲜花用途 |
zengsongduixiang | varchar(200) | 是 | NULL | 赠送对象 |
shuliang | int(11) | 是 | NULL | 数量 |
xianhuaxiangqing | longtext | 是 | NULL | 鲜花详情 |
clicktime | datetime | 是 | NULL | 最近点击时间 |
clicknum | int(11) | 是 | 0 | 点击次数 |
price | float | 否 |
| 价格 |
表4.7 用户信息表
字段 | 类型 | 空 | 默认 | 注释 |
id | bigint(20) | 否 |
| 主键 |
addtime | timestamp | 否 | CURRENT_TIMESTAMP | 创建时间 |
yonghuming | varchar(200) | 否 |
| 用户名 |
mima | varchar(200) | 否 |
| 密码 |
xingming | varchar(200) | 是 | NULL | 姓名 |
xingbie | varchar(200) | 是 | NULL | 性别 |
touxiang | varchar(200) | 是 | NULL | 头像 |
lianxidianhua | varchar(200) | 是 | NULL | 联系电话 |
dizhi | varchar(200) | 是 | NULL | 地址 |
money | float | 是 | 0 | 余额 |
5 系统实现
在此部分内容中,主要通过系统功能的运行效果图展示前面设计的最终结果。系统实现对编制人员的技术能力有较高要求,因为需要他们使用编程的方式去实现系统设计的方案。
5.1 管理员功能实现
5.1.1 花材选择管理
管理员权限中的花材选择管理,其运行效果见下图。花材选择管理需要管理员登记花材,删除,修改花材,查询花材等。
图5.1 花材选择管理页面
5.1.2 鲜花信息管理
管理员权限中的鲜花信息管理,其运行效果见下图。管理员在本模块登记鲜花信息,修改,删除鲜花信息,对鲜花进行出入库管理,查看鲜花评论等。
图5.2 鲜花信息管理页面
5.1.3 鲜花入库管理
管理员权限中的鲜花入库管理,其运行效果见下图。已经入库的鲜花信息,管理员可以管理,也能查看,其中的管理包括对入库的鲜花修改,删除,查询等。
图5.3 鲜花入库管理页面
5.1.4 鲜花出库管理
管理员权限中的鲜花出库管理,其运行效果见下图。已经出库的鲜花信息,管理员可以管理,也能查看,其中的管理包括对出库的鲜花修改,删除,查询等。
图5.4 鲜花出库管理页面
5.1.5 已完成订单
管理员权限中的已完成订单,其运行效果见下图。已完成订单只是订单管理的一部分功能,订单管理包括了已支付订单,未支付订单,取消的订单,已发货订单,已退款订单的管理。在已完成订单页面上,管理员能够直接查看订单详细,查询订单。
图5.5 已完成订单页面
5.2 用户功能实现
5.2.1 联系客服
用户权限中的联系客服,其运行效果见下图。用户在操作过程中,可以联系客服咨询鲜花相关信息,客服会指引用户购买鲜花,解答用户疑问。
图5.6 联系客服页面
5.2.2 鲜花信息
用户权限中的鲜花信息,其运行效果见下图。用户在本页面可以操作的功能比较多,可以购买,收藏,评论鲜花,可以添加鲜花至购物车。
图5.7 鲜花信息页面
5.2.3 购买鲜花
用户权限中的购买鲜花,其运行效果见下图。用户直接购买鲜花,就会进入下面的操作页面,用户选择地址,进行支付即可。
图5.8 购买鲜花页面
5.2.4 我的订单
用户权限中的我的订单,其运行效果见下图。用户已支付订单,可以在我的订单模块中,在已支付栏下面查看订单,也能进行订单退款。
图5.9 我的订单页面