基于SpringBoot的学生社团管理系统(源码+L文+说明文档)
目录
4 系统设计
不管是好用还是不好用的系统,在如今的互联网时代都会被广而告之,但是能留存下来的,必然是好用的,并且好看的系统,不好用并且不好看的系统用户会逐渐抛弃的。所以,开发的系统必须是有主题的,要打开系统就明白这个系统主要的作用和功能,所以设计这方面需要下苦功夫的。
4.1界面设计原则
一般都是图片,文字以及各种输入框和按钮等组成的界面,每个界面的内容都大不相同,如何设计成页面的统一,操作的统一,这是下面需要讨论的问题。
第一点:界面设计必须符合人体工程学。人体工程学是一门入微级别的学问,主要考虑人类在各种工作状态下如何提高生产效率。所以说,界面设计的首要目的,就是为了提升效率。
第二点:有效导航是必须的。导航的目的,就是帮助操作人员的记忆能力,提高操作效率而生的,所以导航一定要设置的符合模块的功能,让用户一看到导航就会知道是哪个模块,需要哪些操作,这些步骤是必不可少的,如果把所有功能放到一个页面呈现平面化布局,肯定不合适,所以合适的导航能够帮助工作。
第三点:界面设计的统一性。统一性不是说背景图片是同一个图片或者背景是同一个色系,而是说让操作系统统一。比如导航就统一用树状结构,有模块有层次,理解容易。多项搜索如果一行放不下,就收起,可以选择多项也可以模糊查询,这些都要符合人类正常认知才可以。
所以说,系统设计的核心就是界面设计,主要的业务处理逻辑只要能处理,需要下大力气的还是页面设计。
4.2功能模块设计
本小节运用功能结构图来描述管理员具备的详细的功能,对管理员的功能结构图绘制结果如图4.1所示。管理员管理论坛,管理团长以及学生,管理社团成员,社团活动,社团等信息。
图4.1 管理员功能结构图
本小节运用功能结构图来描述团长具备的详细的功能,对团长的功能结构图绘制结果如图4.2所示。团长管理社团,社团活动,审核社团申请以及社团活动申请信息,管理社团成员等。
图4.2 团长功能结构图
本小节运用功能结构图来描述学生具备的详细的功能,对学生的功能结构图绘制结果如图4.3所示。学生申请加入社团,申请参加社团活动,在论坛模块发帖,评论帖子等。
图4.3 学生功能结构图
4.3数据库设计
在系统后台选择数据库的时候,首先第一条就是要满足使用需要,只要满足使用需要,再对数据库的使用友好度和性能上进行分析。选择当前分布最广发的关系型数据库是完全能满足需要的,并且在数据的设计上也有完美的设计顺序,最重要的是符合人们的直观要求。
4.3.1数据库E-R图
下面主要是描述E-R图模型的。对于用户的需求,要具体化,比如有个角色需要有登录,那么最基本的设定必须有账号和密码,那么像姓名,性别其他的对象关系,其实是有从属关系的,通过这样具体化分析,可以得到数据的格式要求,并且能得到数据之间的直接关系。然后可以通过专业的Visio工具来进行E-R图的创建,遵守约定的E-R图表达方式,就可以对数据进行图标形式的描述,并且之间的关系更容易理解。
(1)图4.4即为学生这个实体所拥有的属性值。
图4.4 学生实体属性图
(2)图4.5即为团长这个实体所拥有的属性值。
图4.5 团长实体属性图
(3)图4.6即为社团活动这个实体所拥有的属性值。
图4.6 社团活动实体属性图
(4)图4.7即为社团这个实体所拥有的属性值。
图4.7 社团实体属性图
(5)图4.8即为上面介绍的实体中存在的联系。
图4.8 实体间关系E-R图
4.3.2 数据库表结构
在程序开发的过程中,系统设计里面包含有数据库的设计,一般都在功能设计的后面进行数据设计,为什么有这样的顺序呢?那是有原因的。数据库设计不能凭空想象,必须符合数据的定义,而数据只是在使用过程之中产生,其实并没有具体化的表现,所以要把数据进行结构的整理,字段的规划。比如用户账号可能是中文或者英文,以及数字形式存在,更或者可能包含一些符号,那么账号字段的设计就只能是文本形式存在,不能是数据形式或者是时间形式存在,以此类推,数据表结构的设计就是在对系统的具体实现数据进行描述规划的一种行为。所以在这个环节尤其要注意,否则可能使用过程中会发现很多不可预料的问题。
对本系统的数据库的要求就是,要严格遵循数据实现原则,符合数据定义范式。对每个表都要进行具体分析,并且表之间的关系更应该有逻辑性,如果违反前面的要求,那么数据很有可能出现问题,所以要把数据之间的关系用E-R图形式画出来,这样理解起来更直观,更不容易出错,效率也更高。
表4.1 论坛表
字段 | 注释 | 类型 | 空 |
id (主键) | 主键 | int(11) | 否 |
forum_name | 帖子标题 | varchar(200) | 是 |
xuesheng_id | 学生 | int(11) | 是 |
tuanzhang_id | 团长 | int(11) | 是 |
users_id | 管理员 | int(11) | 是 |
forum_content | 发布内容 | text | 是 |
super_ids | 父id | int(11) | 是 |
forum_state_types | 帖子状态 | int(11) | 是 |
insert_time | 发帖时间 | timestamp | 是 |
update_time | 修改时间 | timestamp | 是 |
create_time | 创建时间 | timestamp | 是 |
表4.2 社团表
字段 | 注释 | 类型 | 空 |
id (主键) | 主键 | int(11) | 否 |
tuanzhang_id | 团长 | int(11) | 是 |
shetuan_name | 社团名称 | varchar(200) | 是 |
shetuan_photo | 社团照片 | varchar(200) | 是 |
shetuan_types | 社团类型 | int(11) | 是 |
shetuan_renshu | 社团人数 | int(11) | 是 |
shetuan_clicknum | 点击次数 | int(11) | 是 |
shetuan_content | 社团详情 | text | 是 |
shetuan_delete | 逻辑删除 | int(11) | 是 |
create_time | 创建时间 | timestamp | 是 |
表4.3 社团活动表
字段 | 注释 | 类型 | 空 |
id (主键) | 主键 | int(11) | 否 |
shetuan_id | 团长 | int(11) | 是 |
shetuanhuodong_name | 社团活动名称 | varchar(200) | 是 |
shetuanhuodong_photo | 社团活动照片 | varchar(200) | 是 |
shetuanhuodong_types | 社团活动类型 | int(11) | 是 |
shetuanhuodong_zuida | 最大活动人数 | int(11) | 是 |
shetuanhuodong_content | 社团活动介绍 | text | 是 |
shetuanhuodong_delete | 逻辑删除 | int(11) | 是 |
create_time | 创建时间 | timestamp | 是 |
表4.4 社团活动收藏表
字段 | 注释 | 类型 | 空 |
id (主键) | 主键 | int(11) | 否 |
shetuanhuodong_id | 社团活动 | int(11) | 是 |
xuesheng_id | 学生 | int(11) | 是 |
shetuanhuodong_collection_types | 类型 | int(11) | 是 |
insert_time | 收藏时间 | timestamp | 是 |
create_time | 创建时间 | timestamp | 是 |
表4.5 社团活动留言表
字段 | 注释 | 类型 | 空 |
id (主键) | 主键 | int(11) | 否 |
shetuanhuodong_id | 社团活动 | int(11) | 是 |
xuesheng_id | 学生 | int(11) | 是 |
shetuanhuodong_liuyan_text | 留言内容 | text | 是 |
insert_time | 留言时间 | timestamp | 是 |
reply_text | 回复内容 | text | 是 |
update_time | 回复时间 | timestamp | 是 |
create_time | 创建时间 | timestamp | 是 |
表4.6 社团活动申请表
字段 | 注释 | 类型 | 空 |
id (主键) | 主键 | int(11) | 否 |
shetuanhuodong_order_uuid_number | 订单号 | varchar(200) | 是 |
shetuanhuodong_id | 社团活动 | int(11) | 是 |
xuesheng_id | 学生 | int(11) | 是 |
shetuanhuodong_order_yesno_types | 审核状态 | int(11) | 是 |
shetuanhuodong_order_yesno_text | 审核意见 | text | 是 |
insert_time | 预约时间 | timestamp | 是 |
create_time | 创建时间 | timestamp | 是 |
表4.7 社团成员表
字段 | 注释 | 类型 | 空 |
id (主键) | 主键 | int(11) | 否 |
xuesheng_id | 学生 | int(11) | 是 |
shetuan_id | 社团 | int(11) | 是 |
insert_time | 加入时间 | timestamp | 是 |
create_time | 创建时间 | timestamp | 是 |
表4.8 社团收藏表
字段 | 注释 | 类型 | 空 |
id (主键) | 主键 | int(11) | 否 |
shetuan_id | 社团 | int(11) | 是 |
xuesheng_id | 学生 | int(11) | 是 |
shetuan_collection_types | 类型 | int(11) | 是 |
insert_time | 收藏时间 | timestamp | 是 |
create_time | 创建时间 | timestamp | 是 |
表4.9 社团留言表
字段 | 注释 | 类型 | 空 |
id (主键) | 主键 | int(11) | 否 |
shetuan_id | 社团 | int(11) | 是 |
xuesheng_id | 学生 | int(11) | 是 |
shetuan_liuyan_text | 留言内容 | text | 是 |
insert_time | 留言时间 | timestamp | 是 |
reply_text | 回复内容 | text | 是 |
update_time | 回复时间 | timestamp | 是 |
create_time | 创建时间 | timestamp | 是 |
表4.10 社团申请表
字段 | 注释 | 类型 | 空 |
id (主键) | 主键 | int(11) | 否 |
shetuan_order_uuid_number | 订单号 | varchar(200) | 是 |
shetuan_id | 社团 | int(11) | 是 |
xuesheng_id | 学生 | int(11) | 是 |
shetuan_order_yesno_types | 审核状态 | int(11) | 是 |
shetuan_order_yesno_text | 审核意见 | text | 是 |
insert_time | 预约时间 | timestamp | 是 |
create_time | 创建时间 | timestamp | 是 |
表4.11 团长表
字段 | 注释 | 类型 | 空 |
id (主键) | 主键 | int(11) | 否 |
username | 账户 | varchar(200) | 是 |
password | 密码 | varchar(200) | 是 |
tuanzhang_name | 团长姓名 | varchar(200) | 是 |
tuanzhang_phone | 团长手机号 | varchar(200) | 是 |
tuanzhang_id_number | 团长身份证号 | varchar(200) | 是 |
tuanzhang_photo | 团长头像 | varchar(200) | 是 |
sex_types | 性别 | int(11) | 是 |
tuanzhang_email | 电子邮箱 | varchar(200) | 是 |
create_time | 创建时间 | timestamp | 是 |
表4.12 管理员表
字段 | 注释 | 类型 | 空 |
id (主键) | 主键 | bigint(20) | 否 |
username | 用户名 | varchar(100) | 否 |
password | 密码 | varchar(100) | 否 |
role | 角色 | varchar(100) | 是 |
addtime | 新增时间 | timestamp | 否 |
表4.13 学生表
字段 | 注释 | 类型 | 空 |
id (主键) | 主键 | int(11) | 否 |
username | 账户 | varchar(200) | 是 |
password | 密码 | varchar(200) | 是 |
xuesheng_name | 学生姓名 | varchar(200) | 是 |
xuesheng_phone | 学生手机号 | varchar(200) | 是 |
xuesheng_id_number | 学生身份证号 | varchar(200) | 是 |
xuesheng_photo | 学生头像 | varchar(200) | 是 |
sex_types | 性别 | int(11) | 是 |
xuesheng_email | 电子邮箱 | varchar(200) | 是 |
create_time | 创建时间 | timestamp | 是 |
第五章 系统实现
程序开发人员对功能具体实现后,都要描述自己编写的功能实现,一般都通过文字描述功能,实现用图片截图的形式出现,通过这样的设定,可以让更多得人明白系统的实现结果,达到更容易理解程序操作的目的。
5.1 管理员功能实现
5.1.1 团长管理
管理员点击导航栏的团长管理链接就进入团长管理界面。团长管理界面如图5.1所示。本功能允许管理员对团长的基本资料进行修改,添加,查询,删除。
图5.1 团长管理界面
5.1.2 学生管理
管理员点击导航栏的学生管理链接就进入学生管理界面。学生管理界面如图5.2所示。本功能允许管理员对学生基础资料进行修改,查询,添加,删除。
图5.2 学生管理界面
5.1.3 论坛管理
管理员点击导航栏的论坛管理链接就进入论坛管理界面。论坛管理界面如图5.3所示。本功能允许管理员查看论坛的帖子回复,修改论坛信息,查询论坛的帖子。
图5.3 论坛管理界面
5.2 团长功能实现
5.2.1 社团管理
团长在社团管理界面可以对社团的信息进行管理。社团管理界面如图5.4所示。团长需要添加社团,查询社团,修改社团等操作。
图5.4 社团管理界面
5.2.2 社团申请管理
团长点击导航栏的社团申请管理链接就进入社团申请管理界面。社团申请管理界面如图5.5所示。本功能允许团长审核学生申请加入社团的信息,查询,删除社团申请信息。
图5.5 社团申请管理界面
5.2.3 社团活动管理
团长点击导航栏的社团活动管理链接就进入社团活动管理界面。社团活动管理界面如图5.6所示。本功能允许团长对社团的活动信息进行添加,删除,修改,查询等。
图5.6 社团活动管理界面
5.3 学生功能实现
5.3.1 社团信息
学生点击导航栏的社团信息链接就进入社团信息界面。社团信息界面如图5.7所示。本功能允许学生收藏社团,申请加入社团,发布社团的留言等。
图5.7 社团信息界面
5.3.2 社团活动
学生点击导航栏的社团活动链接就进入社团活动界面。社团活动界面如图5.8所示。本功能允许学生收藏社团活动,对社团活动发布留言,申请参加社团活动等。
图5.8 社团活动界面
5.3.3 在线论坛
学生点击导航栏的在线论坛链接就进入在线论坛界面。在线论坛界面如图5.9所示。本功能允许学生添加帖子,发布帖子评论。
图5.9 在线论坛界面
源码获取https://mp.weixin.qq.com/s/ZydSc2GtLQDjdUplc6EEmw
标签:11,SpringBoot,管理系统,int,主键,源码,社团活动,社团,id From: https://blog.csdn.net/love3512986643/article/details/143245069