校园车辆管理系统的设计方案比如功能框架的设计,比如数据库的设计的好坏也就决定了该系统在开发层面是否高效,以及在系统维护层面是否容易维护和升级,因为在系统实现阶段是需要考虑用户的所有需求,要是在设计阶段没有经过全方位考虑,那么系统实现的部分也就无从下手,所以系统设计部分也是至关重要的一个环节,只有根据用户需求进行细致全面的考虑,才有希望开发出功能健全稳定的程序软件。
4.1 系统概要设计
本次拟开发的系统为了节约开发成本,也为了后期在维护和升级上的便利性,打算通过浏览器来实现系统功能界面的展示,让程序软件的主要事务集中在后台的服务器端处理,前端部分只用处理少量的事务逻辑。下面使用一张图(如图4.1所示)来说明程序的工作原理。
图4.1 程序工作的原理图
4.2 系统功能结构设计
在分析并得出使用者对程序的功能要求时,就可以进行程序设计了。如图4.2展示的就是管理员功能结构图,管理员主要负责填充校园车辆和其类别信息,并对已填充的数据进行维护,包括修改与删除,管理员也需要对停车位进行管理,停车记录进行管理等。
图4.2 系统功能结构图
4.3 数据库设计
程序功能操作不管是添加,修改,还是删除等功能产生的数据都是经由数据库进行数据保存和更新的,所以一个数据库设计的好坏也是程序是否好坏的判定标准,因为程序的成功,有一半的功劳都是靠数据库的优秀设计。数据库一旦设计得良好是可以减轻开发人员的开发负担的。
4.3.1 数据库E-R图设计
这个部分的设计需要使用到E-R图绘制工具,常用的工具就是Visio工具来绘制E-R模型图,这款工具不仅可以快速创建需要的E-R模型图,而且该工具提供的操作界面很简单,可以短时间内修改绘图界面的图形或者是文字的属性。在绘制E-R模型图时,要分清楚各个图形代表的含义,以免绘制出错,E-R模型图由长方形(实体),椭圆形(属性),菱形(关系)这三部分图形符号组成,绘制期间要区分开来,用准确的图形符号代表相应的数据元素。
各个实体之间的联系用下图的E-R图表示。绘制的系统E-R图见图4.8。
图4.8 系统E-R图
4.3.2 数据库表结构设计
数据库系统一旦选定之后,需要根据程序要求在数据库中建立数据库文件,并在已经完成创建的数据库文件里面,为程序运行中产生的数据建立对应的数据表格,数据表结构设计就是对创建的数据表格进行字段设计,字段长度设计,字段类型设计等,当数据表格合理设计完成之后,才能正常存储相关程序运行产生的数据信息。
表4.1车辆记录表
序号 |
列名 |
数据类型 |
说明 |
允许空 |
1 |
Id |
Int |
id |
否 |
2 |
chepai_number |
String |
车牌号 |
是 |
3 |
chewei_id |
Integer |
车位id |
是 |
4 |
insert_time |
Date |
泊车时间 |
是 |
5 |
update_time |
Date |
取车时间 |
是 |
6 |
xiaoshi |
Integer |
停车小时 |
是 |
7 |
monery |
Integer |
金额 |
是 |
表4.2车位表
序号 |
列名 |
数据类型 |
说明 |
允许空 |
1 |
Id |
Int |
id |
否 |
8 |
chewei_name |
String |
车位名字 |
是 |
9 |
chewei_types |
Integer |
状态 |
是 |
10 |
chezhu_id |
Integer |
车主 |
是 |
11 |
chepai_number |
Integer |
车牌号 |
是 |
表4.3车主表
序号 |
列名 |
数据类型 |
说明 |
允许空 |
1 |
Id |
Int |
id |
否 |
12 |
chezhu_name |
String |
姓名 |
是 |
13 |
sex_types |
Integer |
性别 |
是 |
14 |
chezhu_id_number |
String |
身份证号 |
是 |
15 |
chezhu_phone |
String |
手机号 |
是 |
16 |
chezhu_chepai_number |
String |
车牌号 |
是 |
17 |
chezhu_photo |
String |
照片 |
是 |
表4.4字典表表
序号 |
列名 |
数据类型 |
说明 |
允许空 |
1 |
Id |
Int |
id |
否 |
18 |
dic_code |
String |
字段 |
是 |
19 |
dic_name |
String |
字段名 |
是 |
20 |
code_index |
Integer |
编码 |
是 |
21 |
index_name |
String |
编码名字 |
是 |
22 |
super_id |
Integer |
父字段id |
是 |
表4.5系统公告表
序号 |
列名 |
数据类型 |
说明 |
允许空 |
1 |
Id |
Int |
id |
否 |
23 |
addtime |
Date |
创建时间 |
是 |
24 |
biaoti |
String |
标题 |
是 |
25 |
leixing |
String |
类型 |
是 |
26 |
neirong |
longtext |
内容 |
是 |
27 |
riqi |
datetime |
日期 |
是 |
表4.6员工表
序号 |
列名 |
数据类型 |
说明 |
允许空 |
1 |
Id |
Int |
id |
否 |
28 |
username |
String |
账户 |
是 |
29 |
password |
String |
密码 |
是 |
30 |
name |
String |
姓名 |
是 |
31 |
sex_types |
Integer |
性别 |
是 |
32 |
id_number |
String |
身份证号 |
是 |
33 |
phone |
String |
手机号 |
是 |
34 |
yonghu_photo |
String |
照片 |
是 |
35 |
nation |
String |
民族 |
是 |
36 |
politics_types |
Integer |
政治面貌 |
是 |
37 |
address |
String |
家庭住址 |
是 |
表4.7管理员表
序号 |
列名 |
数据类型 |
说明 |
允许空 |
1 |
Id |
Int |
id |
否 |
38 |
username |
String |
用户名 |
是 |
39 |
password |
String |
密码 |
是 |
40 |
role |
String |
角色 |
是 |
41 |
addtime |
Date |
新增时间 |
是 |