4 系统设计
4.1 总体功能
微乐校园是根据需求定制开发,开发软件选用idea平台配合MySQL数据库进行开发环境的搭建操作,网站采用为微信小程序结构进行开发,用户通过小程序访问项目,管理人员通过访问系统数据仅仅需要在客户端安装谷歌浏览器或者是当下常用浏览器就可以访问网站后台管理内容。
4.2 系统概要设计
本次拟开发的系统为了节约开发成本,也为了后期在维护和升级上的便利性,打算通过浏览器来实现系统功能界面的展示,让程序软件的主要事务集中在后台的服务器端处理,前端部分只用处理少量的事务逻辑。下面使用一张图(如图4.2所示)来说明程序的工作原理。
图4.2 程序工作的原理图
4.3 系统功能结构设计
在分析并得出使用者对程序的功能要求时,就可以进行程序设计了。如图4.3展示的就是管理员功能结构图,管理员在后台主要管理代跑管理、代跑收藏管理、代跑留言管理、代跑订单管理、字典管理、叫车管理、用户咨询管理、二手商品管理、二手商品评价管理、二手商品订单管理、失物招领管理、司机管理、用户管理、约战校园管理、约战校园留言管理、管理员管理等。
图4.3 管理员功能结构图
4.4 数据库设计
程序功能操作不管是添加,修改,还是删除等功能产生的数据都是经由数据库进行数据保存和更新的,所以一个数据库设计的好坏也是程序是否好坏的判定标准,因为程序的成功,有一半的功劳都是靠数据库的优秀设计。数据库一旦设计得良好是可以减轻开发人员的开发负担的。
4.4.1 数据库E-R图设计
这个部分的设计需要使用到E-R图绘制工具,常用的工具就是Visio工具来绘制E-R模型图,这款工具不仅可以快速创建需要的E-R模型图,而且该工具提供的操作界面很简单,可以短时间内修改绘图界面的图形或者是文字的属性。在绘制E-R模型图时,要分清楚各个图形代表的含义,以免绘制出错,E-R模型图由长方形(实体),椭圆形(属性),菱形(关系)这三部分图形符号组成,绘制期间要区分开来,用准确的图形符号代表相应的数据元素。
(1)下图是代跑订单实体和其具备的属性。
代跑订单实体属性图
(2)下图是用户实体和其具备的属性。
用户实体属性图
(3)下图是代跑实体和其具备的属性。
代跑实体属性图
(4)下图是失物招领实体和其具备的属性。
失物招领实体属性图
(5)下图是司机实体和其具备的属性。
司机实体属性图
(6)下图是代跑留言实体和其具备的属性。
代跑留言实体属性图
(7)下图是二手商品实体和其具备的属性。
二手商品实体属性图
(8)下图是叫车实体和其具备的属性。
叫车实体属性图
(9)下图是约战校园实体和其具备的属性。
约战校园实体属性图
(10)下图是用户咨询实体和其具备的属性。
用户咨询实体属性图
(11)下图是二手商品评价实体和其具备的属性。
二手商品评价实体属性图
(12)下图是二手商品订单实体和其具备的属性。
二手商品订单实体属性图
(13)下图是代跑收藏实体和其具备的属性。
代跑收藏实体属性图
(14)下图是约战校园留言实体和其具备的属性。
约战校园留言实体属性图
4.4.2 数据库表结构设计
数据库系统一旦选定之后,需要根据程序要求在数据库中建立数据库文件,并在已经完成创建的数据库文件里面,为程序运行中产生的数据建立对应的数据表格,数据表结构设计就是对创建的数据表格进行字段设计,字段长度设计,字段类型设计等,当数据表格合理设计完成之后,才能正常存储相关程序运行产生的数据信息。
表4.1代跑表
序号 |
列名 |
数据类型 |
说明 |
允许空 |
---|---|---|---|---|
1 |
Id |
Int |
id |
否 |
2 |
yonghu_id |
Integer |
用户 |
是 |
3 |
daipiao_name |
String |
代跑标题 |
是 |
4 |
daipiao_photo |
String |
代跑照片 |
是 |
5 |
daipiao_address |
String |
代跑地点 |
是 |
6 |
daipiao_lianxiren |
String |
联系人 |
是 |
7 |
daipiao_lianxifangshi |
String |
联系方式 |
是 |
8 |
daipiao_types |
Integer |
代跑类型 |
是 |
9 |
daipiao_new_money |
BigDecimal |
代跑金额 |
是 |
10 |
daipiao_time |
Date |
代跑时间 |
是 |
11 |
daipiao_content |
String |
代跑内容 |
是 |
12 |
daipiao_zhuangtai_types |
Integer |
代跑状态 |
是 |
13 |
insert_time |
Date |
录入时间 |
是 |
14 |
create_time |
Date |
创建时间 |
是 |
表4.2代跑收藏表
序号 |
列名 |
数据类型 |
说明 |
允许空 |
---|---|---|---|---|
1 |
Id |
Int |
id |
否 |
2 |
daipiao_id |
Integer |
代跑 |
是 |
3 |
yonghu_id |
Integer |
用户 |
是 |
4 |
daipiao_collection_types |
Integer |
类型 |
是 |
5 |
insert_time |
Date |
收藏时间 |
是 |
6 |
create_time |
Date |
创建时间 |
是 |
表4.3代跑留言表
序号 |
列名 |
数据类型 |
说明 |
允许空 |
---|---|---|---|---|
1 |
Id |
Int |
id |
否 |
2 |
daipiao_id |
Integer |
代跑 |
是 |
3 |
yonghu_id |
Integer |
用户 |
是 |
4 |
daipiao_liuyan_text |
String |
留言内容 |
是 |
5 |
insert_time |
Date |
留言时间 |
是 |
6 |
reply_text |
String |
回复内容 |
是 |
7 |
update_time |
Date |
回复时间 |
是 |
8 |
create_time |
Date |
创建时间 |
是 |
表4.4代跑订单表
序号 |
列名 |
数据类型 |
说明 |
允许空 |
---|---|---|---|---|
1 |
Id |
Int |
id |
否 |
2 |
daipiao_order_uuid_number |
String |
订单号 |
是 |
3 |
daipiao_id |
Integer |
代跑 |
是 |
4 |
yonghu_id |
Integer |
用户 |
是 |
5 |
daipiao_order_true_price |
BigDecimal |
实付价格 |
是 |
6 |
daipiao_order_types |
Integer |
订单类型 |
是 |
7 |
daipiao_order_payment_types |
Integer |
支付类型 |
是 |
8 |
insert_time |
Date |
订单创建时间 |
是 |
9 |
create_time |
Date |
创建时间 |
是 |
表4.5字典表
序号 |
列名 |
数据类型 |
说明 |
允许空 |
---|---|---|---|---|
1 |
Id |
Int |
id |
否 |
2 |
dic_code |
String |
字段 |
是 |
3 |
dic_name |
String |
字段名 |
是 |
4 |
code_index |
Integer |
编码 |
是 |
5 |
index_name |
String |
编码名字 |
是 |
6 |
super_id |
Integer |
父字段id |
是 |
7 |
beizhu |
String |
备注 |
是 |
8 |
create_time |
Date |
创建时间 |
是 |
表4.6叫车表
序号 |
列名 |
数据类型 |
说明 |
允许空 |
---|---|---|---|---|
1 |
Id |
Int |
id |
否 |
2 |
yonghu_id |
Integer |
用户 |
是 |
3 |
siji_id |
Integer |
司机 |
是 |
4 |
jiaoche_uuid_number |
String |
叫车编号 |
是 |
5 |
jiaoche_name |
String |
叫车标题 |
是 |
6 |
jiaoche_photo |
String |
叫车照片 |
是 |
7 |
shangche_time |
Date |
上车时间 |
是 |
8 |
jiaoche_address |
String |
上车地点 |
是 |
9 |
jiaoche_quwang_address |
String |
去往地点 |
是 |
10 |
jiaoche_types |
Integer |
叫车类型 |
是 |
11 |
jiaoche_new_money |
BigDecimal |
出价 |
是 |
12 |
jiaoche_content |
String |
叫车详情 |
是 |
13 |
insert_time |
Date |
叫车时间 |
是 |
14 |
jiaoche_zhuangtai_types |
Integer |
叫车状态 |
是 |
15 |
create_time |
Date |
创建时间 |
是 |
表4.7用户咨询表
序号 |
列名 |
数据类型 |
说明 |
允许空 |
---|---|---|---|---|
1 |
Id |
Int |
id |
否 |
2 |
yonghu_id |
Integer |
提问人 |
是 |
3 |
siji_id |
Integer |
回答人 |
是 |
4 |
jiaoche_chat_issue_text |
String |
问题 |
是 |
5 |
issue_time |
Date |
问题时间 |
是 |
6 |
jiaoche_chat_reply_text |
String |
回复 |
是 |
7 |
reply_time |
Date |
回复时间 |
是 |
8 |
zhuangtai_types |
Integer |
状态 |
是 |
9 |
jiaoche_chat_types |
Integer |
数据类型 |
是 |
10 |
insert_time |
Date |
提问时间 |
是 |
11 |
create_time |
Date |
创建时间 |
是 |
表4.8二手商品表
序号 |
列名 |
数据类型 |
说明 |
允许空 |
---|---|---|---|---|
1 |
Id |
Int |
id |
否 |
2 |
yonghu_id |
Integer |
用户 |
是 |
3 |
shangpin_name |
String |
二手商品名称 |
是 |
4 |
shangpin_uuid_number |
String |
二手商品编号 |
是 |
5 |
shangpin_photo |
String |
二手商品照片 |
是 |
6 |
shangpin_types |
Integer |
商品类型 |
是 |
7 |
shangpin_kucun_number |
Integer |
二手数量 |
是 |
8 |
shangpin_old_money |
BigDecimal |
二手商品原价 |
是 |
9 |
shangpin_new_money |
BigDecimal |
现价/个 |
是 |
10 |
shangpin_clicknum |
Integer |
二手商品热度 |
是 |
11 |
shangpin_content |
String |
二手商品介绍 |
是 |
12 |
shangpin_delete |
Integer |
逻辑删除 |
是 |
13 |
insert_time |
Date |
录入时间 |
是 |
14 |
create_time |
Date |
创建时间 |
是 |
表4.9二手商品评价表
序号 |
列名 |
数据类型 |
说明 |
允许空 |
---|---|---|---|---|
1 |
Id |
Int |
id |
否 |
2 |
shangpin_id |
Integer |
二手商品 |
是 |
3 |
yonghu_id |
Integer |
用户 |
是 |
4 |
shangpin_commentback_text |
String |
评价内容 |
是 |
5 |
insert_time |
Date |
评价时间 |
是 |
6 |
reply_text |
String |
回复内容 |
是 |
7 |
update_time |
Date |
回复时间 |
是 |
8 |
create_time |
Date |
创建时间 |
是 |
表4.10二手商品订单表
序号 |
列名 |
数据类型 |
说明 |
允许空 |
---|---|---|---|---|
1 |
Id |
Int |
id |
否 |
2 |
shangpin_order_uuid_number |
String |
订单号 |
是 |
3 |
shangpin_id |
Integer |
二手商品 |
是 |
4 |
yonghu_id |
Integer |
用户 |
是 |
5 |
buy_number |
Integer |
购买数量 |
是 |
6 |
shangpin_order_true_price |
BigDecimal |
实付价格 |
是 |
7 |
shangpin_order_courier_name |
String |
联系人 |
是 |
8 |
shangpin_order_courier_number |
String |
联系方式 |
是 |
9 |
shangpin_order_types |
Integer |
订单类型 |
是 |
10 |
shangpin_order_payment_types |
Integer |
支付类型 |
是 |
11 |
insert_time |
Date |
订单创建时间 |
是 |
12 |
create_time |
Date |
创建时间 |
是 |
表4.11失物招领表
序号 |
列名 |
数据类型 |
说明 |
允许空 |
---|---|---|---|---|
1 |
Id |
Int |
id |
否 |
2 |
yonghu_id |
Integer |
用户 |
是 |
3 |
shiwuzhaoling_name |
String |
物品名称 |
是 |
4 |
shiwuzhaoling_uuid_number |
String |
物品编号 |
是 |
5 |
shiwuzhaoling_photo |
String |
物品照片 |
是 |
6 |
shiwuzhaoling_address |
String |
丢失地点/找到地点 |
是 |
7 |
shiwuzhaoling_types |
Integer |
物品类型 |
是 |
8 |
jutishijian_time |
Date |
具体时间 |
是 |
9 |
shiwuzhaoling_clicknum |
Integer |
热度 |
是 |
10 |
shiwuzhaoling_content |
String |
详细描述 |
是 |
11 |
shiwuzhaoling_zhuangtai_types |
Integer |
状态 |
是 |
12 |
insert_time |
Date |
录入时间 |
是 |
13 |
create_time |
Date |
创建时间 |
是 |
表4.12司机表
序号 |
列名 |
数据类型 |
说明 |
允许空 |
---|---|---|---|---|
1 |
Id |
Int |
id |
否 |
2 |
siji_name |
String |
司机姓名 |
是 |
3 |
siji_phone |
String |
司机手机号 |
是 |
4 |
siji_id_number |
String |
司机身份证号 |
是 |
5 |
siji_photo |
String |
司机头像 |
是 |
6 |
new_money |
BigDecimal |
余额 |
是 |
7 |
siji_email |
String |
电子邮箱 |
是 |
8 |
create_time |
Date |
创建时间 |
是 |
表4.13用户表
序号 |
列名 |
数据类型 |
说明 |
允许空 |
---|---|---|---|---|
1 |
Id |
Int |
id |
否 |
2 |
yonghu_name |
String |
用户姓名 |
是 |
3 |
yonghu_phone |
String |
用户手机号 |
是 |
4 |
yonghu_id_number |
String |
用户身份证号 |
是 |
5 |
yonghu_photo |
String |
用户头像 |
是 |
6 |
yonghu_email |
String |
电子邮箱 |
是 |
7 |
new_money |
BigDecimal |
余额 |
是 |
8 |
create_time |
Date |
创建时间 |
是 |
表4.14约战校园表
序号 |
列名 |
数据类型 |
说明 |
允许空 |
---|---|---|---|---|
1 |
Id |
Int |
id |
否 |
2 |
yonghu_id |
Integer |
用户 |
是 |
3 |
yuezhanxiaoyuan_name |
String |
约战校园名称 |
是 |
4 |
yuezhanxiaoyuan_photo |
String |
约战校园照片 |
是 |
5 |
yuezhan_time |
Date |
约战时间 |
是 |
6 |
yuezhanxiaoyuan_address |
String |
约战地点 |
是 |
7 |
yuezhanxiaoyuan_types |
Integer |
约战校园类型 |
是 |
8 |
yuezhanxiaoyuan_clicknum |
Integer |
约战校园热度 |
是 |
9 |
yuezhanxiaoyuan_content |
String |
约战内容 |
是 |
10 |
yuezhanxiaoyuan_delete |
Integer |
逻辑删除 |
是 |
11 |
insert_time |
Date |
录入时间 |
是 |
12 |
create_time |
Date |
创建时间 |
是 |
表4.15约战校园留言表
序号 |
列名 |
数据类型 |
说明 |
允许空 |
---|---|---|---|---|
1 |
Id |
Int |
id |
否 |
2 |
yuezhanxiaoyuan_id |
Integer |
约战校园 |
是 |
3 |
yonghu_id |
Integer |
用户 |
是 |
4 |
yuezhanxiaoyuan_liuyan_text |
String |
留言内容 |
是 |
5 |
insert_time |
Date |
留言时间 |
是 |
6 |
reply_text |
String |
回复内容 |
是 |
7 |
update_time |
Date |
回复时间 |
是 |
8 |
create_time |
Date |
创建时间 |
是 |
表4.16管理员表
序号 |
列名 |
数据类型 |
说明 |
允许空 |
---|---|---|---|---|
1 |
Id |
Int |
id |
否 |
2 |
username |
String |
学生名 |
是 |
3 |
password |
String |
密码 |
是 |
4 |
role |
String |
角色 |
是 |
5 |
addtime |
Date |
新增时间 |
是 |
5 系统实现
系统实现部分就是将系统分析,系统设计部分的内容通过编码进行功能实现,以一个实际应用系统的形式展示系统分析与系统设计的结果。前面提到的系统分析,系统设计最主要还是进行功能,系统操作逻辑的设计,也包括了存储数据的数据库方面的设计等内容,系统实现就是一个最终的实施阶段,将前面的设计成果进行物理转化,最终出具可以运用于实际的软件系统。
5.1 管理员功能介绍
5.1.1 约战校园列表
如图5.1显示的就是约战校园列表页面,此页面提供给管理员的功能有:查看约战校园、新增约战校园、修改约战校园、删除约战校园等。
图5.1 约战校园列表页面
5.1.2 代跑信息管理
代跑信息管理页面提供的功能操作有:新增代跑,修改代跑,删除代跑操作。下图就是代跑信息管理页面。
图5.3 代跑信息管理页面
5.1.3代跑类型管理
代跑类型管理页面显示所有代跑类型,在此页面既可以让管理员添加新的代跑信息类型,也能对已有的代跑类型信息执行编辑更新,失效的代跑类型信息也能让管理员快速删除。下图就是代跑类型管理页面。
图5.4 代跑类型列表页面