4.2 功能模块设计
对管理员具体功能的设计结果将以图4.1所示的管理员功能结构图来进行体现。管理员对于家政公司服务平台操作的功能包括管理员工,管理基础数据,管理用户,管理家政服务,回复家政服务留言,管理家政服务订单,管理家政服务收藏等。
图4.1 管理员功能结构图
对员工具体功能的设计结果将以图4.2所示的员工功能结构图来进行体现。员工对于家政公司服务平台操作的功能包括更改密码和个人信息,管理家政服务信息等。
图4.2 员工功能结构图
对用户具体功能的设计结果将以图4.3所示的用户功能结构图来进行体现。用户对于家政公司服务平台操作的功能包括预约家政服务,管理家政服务订单,收藏家政服务,对家政服务留言等。
图4.3 用户功能结构图
4.3 数据库设计
用户通过系统的功能操作来进行数据交互,包括数据的添加,数据的更新,数据的删除,数据的查询等基本功能操作,表面上虽然是操作系统界面提供的功能,但是实际上系统的这些数据是在数据库当中进行访问与操作的。目前市场上可供选择的存储数据的数据库有很多,除了简单版的Access之外,还有SQL Server,DB2,Informix,MySQL等关系型数据库可供选择,由于关系型数据库具有固定的表结构,以及对数据一致性要求比较强,所以相比没有固定表结构以及具有灵活的数据格式的非关系型数据库而言,在程序配套数据库的选择中,关系型数据库的使用率更高。本系统选择MySQL来存放数据,其相关理论以及技术在经过了很长时间的发展之后,变得非常成熟,各大网络平台都公开分享其开发源码,而且其对计算机的配置要求很低,不需要过多内存进行安装,很符合本系统对于数据库的选择要求。
4.3.1 数据库E-R图
本节需要对系统中存放在数据库中的数据进行充分分析,对数据的实体,实体特征,联系等进行确定,然后通过概念模型的表示方法即E-R图进行表达,在E-R图绘制工具中,选择椭圆,菱形框,矩形等形状表达实体属性,实体间联系,实体这些信息,使用实线段将这些形状进行连接即可。初步完成E-R图之后,需要进行检查,及时进行有误数据的更改,删除实体间存在的冗余联系,删除E-R图中冗余的数据,最终要展示一个内容准确的E-R图。
(1)家政服务包括的属性有服务名称,服务介绍等。其属性图如下。
图4.4 家政服务实体属性图
(2)家政服务订单包括的属性有服务地址,订单类型,订单号等。其属性图如下。
图4.5 家政服务订单实体属性图
(3)管理员包括的属性有密码,用户名等。其属性图如下。
图4.6 管理员实体属性图
(4)用户包括的属性有用户头像,性别,手机号等。其属性图如下。
图4.7 用户实体属性图
(5)设计的各实体间关系E-R图如下。
图4.8 实体间关系E-R图
4.3.2 数据库表结构
在指定的数据库里面对数据表进行创建命名,然后设计各个数据表的存储结构,需要对该数据库的操作非常熟悉,并且还需要学习并掌握一定的数据表设计方面的知识,比如数据命名,作为系统的开发人员,为了避免程序运行产生乱码现象以及为了确保系统的正常运行,在对数据表进行命名时,一般都是采用英文名称,同时在对数据表的字段进行编辑时,也是采用英文的方式进行,为了方便今后对数据表的设计内容进行更改或查看,对一些比较重要的字段都会进行中文备注,或者是使用中文进行字段描述。设计期间,也需要对各个字段选择合适的数据类型以及设置匹配的取值范围,当一张数据表设计完成之后,还要对该表的主键进行标注,就是为了确保该数据表的唯一性与独立性。
表4.1 家政服务表
字段 注释 类型 空
id (主键) 主键 int(11) 否
jiazhengfuwu_name 服务名称 varchar(200) 是
jiazhengfuwu_photo 服务照片 varchar(200) 是
jiazhengfuwu_types 家政服务类型 int(11) 是
jiazhengfuwu_old_money 服务原价/小时 decimal(10,2) 是
jiazhengfuwu_new_money 现价/小时 decimal(10,2) 是
jiazhengfuwu_clicknum 点击次数 int(11) 是
jiazhengfuwu_content 服务介绍 text 是
shangxia_types 是否上架 int(11) 是
jiazhengfuwu_delete 逻辑删除 int(11) 是
create_time 创建时间 timestamp 是
表4.2 家政服务收藏表
字段 注释 类型 空
id (主键) 主键 int(11) 否
jiazhengfuwu_id 家政服务 int(11) 是
yonghu_id 用户 int(11) 是
jiazhengfuwu_collection_types 类型 int(11) 是
insert_time 收藏时间 timestamp 是
create_time 创建时间 timestamp 是
表4.3 家政服务评价表
字段 注释 类型 空
id (主键) 主键 int(11) 否
jiazhengfuwu_id 家政服务 int(11) 是
yonghu_id 用户 int(11) 是
jiazhengfuwu_commentback_text 评价内容 text 是
insert_time 评价时间 timestamp 是
reply_text 回复内容 text 是
update_time 回复时间 timestamp 是
create_time 创建时间 timestamp 是
表4.4 家政服务留言表
字段 注释 类型 空
id (主键) 主键 int(11) 否
jiazhengfuwu_id 家政服务 int(11) 是
yonghu_id 用户 int(11) 是
jiazhengfuwu_liuyan_text 留言内容 text 是
insert_time 留言时间 timestamp 是
reply_text 回复内容 text 是
update_time 回复时间 timestamp 是
create_time 创建时间 timestamp 是
表4.5 家政服务订单表
字段 注释 类型 空
id (主键) 主键 int(11) 否
jiazhengfuwu_order_uuid_number 订单号 varchar(200) 是
jiazhengfuwu_lianxiren_name 联系人 varchar(200) 是
jiazhengfuwu_lianxiren_phone 联系人电话 varchar(200) 是
jiazhengfuwu_lianxiren_address 服务地址 varchar(200) 是
jiazhengfuwu_id 家政服务 int(11) 是
yonghu_id 用户 int(11) 是
yuangong_id 员工 int(11) 是
buy_number 小时 int(11) 是
jiazhengfuwu_order_true_price 实付价格 decimal(10,2) 是
jiazhengfuwu_order_types 订单类型 int(11) 是
jiazhengfuwu_order_payment_types 支付类型 int(11) 是
yuyue_time 预约时间 timestamp 是
insert_time 订单创建时间 timestamp 是
create_time 创建时间 timestamp 是
表4.6 管理员表
字段 注释 类型 空
id (主键) 主键 bigint(20) 否
username 用户名 varchar(100) 否
password 密码 varchar(100) 否
role 角色 varchar(100) 是
addtime 新增时间 timestamp 否
表4.7 用户表
字段 注释 类型 空
id (主键) 主键 int(11) 否
username 账户 varchar(200) 是
password 密码 varchar(200) 是
yonghu_name 用户姓名 varchar(200) 是
yonghu_phone 用户手机号 varchar(200) 是
yonghu_id_number 用户身份证号 varchar(200) 是
yonghu_photo 用户头像 varchar(200) 是
sex_types 性别 int(11) 是
yonghu_email 电子邮箱 varchar(200) 是
new_money 余额 decimal(10,2) 是
create_time 创建时间 timestamp 是
表4.8 员工表
字段 注释 类型 空
id (主键) 主键 int(11) 否
username 账户 varchar(200) 是
password 密码 varchar(200) 是
yuangong_uuid_number 员工编号 varchar(200) 是
yuangong_name 员工姓名 varchar(200) 是
yuangong_phone 员工手机号 varchar(200) 是
yuangong_photo 员工头像 varchar(200) 是
yuangong_shanchang 擅长 varchar(200) 是
sex_types 性别 int(11) 是
yuangong_email 电子邮箱 varchar(200) 是
yuangong_content 员工介绍 text 是
create_time 创建时间 timestamp 是