学生可以发布新消息、回复已经发布的消息、查看所有消息。其用例图如图所示
管理层领导可以发布新消息、回复已经发布的消息、查看所有消息以及批复已经发布的消息,其用例图如图4.1.2图所示。
图4.1.2
4.2系统流程图
本系统需要对普通用户身份进行验证,验证过后再判断用户是普通用户还是管理层领导,如果是普通用户,可以发布新消息、回复已经发布的消息、查看所有消息;如果是管理层领导则会有一个更高级的功能,那就是批复消息。系统流程图如4.2.1图所示。
图4.2.1
6
第5章数据库设计
5.1数据库分析与设计 5.1.1数据库分析
本系统采用MySQL5.0作为后台数据库,数据库名为db_affairmanage。数据库中一共包含4张表,用来储存不同的信息,详细信息如图5.1.1.1图所示
图5.1.1.1
5.1.2数据库概念设计
本系统一共规划出4个实体,分别是人员信息实体、消息信息实体、消息回复实体以及消息批复实体。
只有校园内部人员才可以使用该系统,因此需要在数据库中建立一个人员信息表,用来储存员工的相关信息。人员信息实体E-R图如下图所示。
图5.1.2.1用户信息实体E-R图
7
图5.1.2.2消息信息实体E-R图
图5.1.2.3消息回复实体E-R图
图5.1.2.消息批复实体E-R图
5.1.3数据库逻辑结构设计
用户信息表 字段名 employeeID employeeName employeeSex employeeBirth
数据类型 Int Varchar Bit Date 是否主键 是 否 否 否 描述 用户编号 用户姓名 用户性别 用户生日 8
employeePhone employeePlace joinTime password isLead 消息信息表: 字段名 messageID messageTitle messageContent employeeID publishTime 消息回复表 字段名 replyID replyContent employeeID replyTime messageID 消息批复表 字段名 criticismID criticismContent employeeID criticismTime messageID Varchar Varchar Date varchar bit 数据类型 Int Varchar Text Int Date 数据类型 Int Text Int Datetime int 数据类型 Int Text Int Datetime Int 否 否 否 否 否 是否主键 是(自动递增) 否 否(外键) 否 外键 是否主键 是(自动递增) 否 否(外键) 否 否(外键) 是否主键 是(自动递增) 否 否(外键) 否 否(外键) 用户电话 用户住址 加入时间 密码 是否领导 描述 消息ID 消息标题 消息内容 发布人 发布时间 描述 消息回复ID 回复内容 回复人 回复时间 消息ID 描述 消息批复ID 批复内容 批复人 批复时间 消息ID 5.2绘制表之间的关系E-R图
表之间的关系E-R图如图5.2.1图所示
9
图5.2.1
5.3用于建表的SQL语句
以下是用MySQL-Front建立好数据库后导出的SQL语句。 # Host: localhost Database: db_affairmanage # ------------------------------------------------------ # Server version 5.1.46-community #
# Source for table tb_criticism #
DROP TABLE IF EXISTS `tb_criticism`; CREATE TABLE `tb_criticism` (
`criticismID` int(11) NOT NULL AUTO_INCREMENT, `criticismContent` text,
`employeeID` int(11) DEFAULT NULL, `criticismTime` datetime DEFAULT NULL, `messageID` int(11) DEFAULT NULL, PRIMARY KEY (`criticismID`),
KEY `employeeID` (`employeeID`), KEY `messageID` (`messageID`)
) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=gb2312 COMMENT='???¢?ú?′±í'; #
# Dumping data for table tb_criticism #
10