Comsys学生比赛管理系统设计报告
hjh hsb 日期:2019年6月30日
- 项目背景及需求分析
背景
学校为了迎头赶上粤港澳大湾区的发展潮流,为珠海市发展添加大量的人才储备,打算在学校范围内兴办比赛,使得学生们依靠比赛的锻炼,能够更好地提升自己。各大学院纷纷响应号召,但是如何有效地管理比赛是各个比赛负责人头痛的问题。目前比赛的举办学院主要通过微信群发布消息,通过邮箱接收比赛资料,但是如何进行评审及向学生公开透明化成为主要问题。甚至某次比赛还出现了接收比赛资料的负责人邮箱被盗的情况,造成了十分严重的后果。因此,学校委托我方加紧开发出一个比赛管理系统,以管理目前混乱的比赛举办过程。
项目介绍
该竞赛系统项目使用maven进行jar包管理,使用mybatis-generator插件生成model类会通用的Mapper接口(.java文件)及SQL语句(.xml)的文件,前端采用bookstrap样式库+js,后台使用Mybatis+sprinMVC框架进行开发,系统没有商用需求,仅提供学校进行日常比赛管理使用
项目功能
使用java语言编写后台,html,jsp,js编写前端,MySQL作为数据库完成竞赛系统,该系统使用B/S结构,并完成对主办方和参赛者提供对于竞赛的组织以及实现提供帮助和服务。
用户特征:该系统提供注册,登录,注销功能;它的用户分为学生、评委和管理员,学生可以通过该系统查看存在的比赛,对正在发布的比赛进行报名,报名后可以添加组员,申请比赛,(管理员批准后)管理比赛,包括发布比赛,公布结果,统计比赛信息等。其他学生进行比赛报名,通过后后可提交作品和查看作品。评委可以查看学生提交的作品进行评审。管理员能够批准比赛,并重置学生的密码。
需求
(1)注册、登录:所有都可以进行注册登录,后台可以重置密码;
(2)申请/发布比赛:用户登陆后,可以申请比赛;管理员通过后,申请者即成员该比赛的管理员;比赛管理员正式发布比赛,则该比赛的基本信息、主要时间节点及要求等,所有人员均可以查看;
(3)比赛报名:以小组为单位进行报名,报名者即为组长,可以添加组员进行报名,小组成员可以查看;
(4)提交作品:组长按要求提交参加比赛的作品及相关资料,小组成员可以查看;
(5)在线评分:可以邀请评委对作品进行评分,并填写评语;
(6)计算得分:可以按照指定规则(规则可选)根据多个评委的评分计算作品得分;
(7)发布结果:比赛管理员发布结果后,组长及组员均可查看评分结果及评语;
(8)统计汇总:可以统计每次比赛的作品数量、类型、参赛者年级、专业等信息;
页面设计
登录模块
1登录页面 (会由登录控制器,判断你是管理员还是用户,如果是用户查看用户的等级,并跳转到相应的页面,会显示相应的数据) Login.jsp
2注册页面(注册页面会对你输入为空,或两次填写的密码不一致做出提示,注册失败会有弹窗告诉你注册失败,已有此账号注册,注册成功,会显示注册成功,并跳转到登录页面) register.jsp
普通用户模块
1比赛系统首页(显示所有的比赛,不管有无参加)所有用户都有查看查看发布,或已截止,或未发布的比赛;还有点击申请比赛的按钮,点击进入FillReleaseInfo.jsp 。如果用户是某个比赛管理员,在该比赛中有一个按钮,以进入比赛管理员界面。如果点击比赛列表中的报名按钮,会跳转到SignUpAppointMatch.jsp页面 ReleaseMatch.jsp
2用户申请比赛页面(填写比赛信息) FillReleaseInfo.jsp
3用户比赛报名页面,显示比赛详细信息及各报名小组,点击添加小组会有弹窗弹出,让你写添加你想添加的小组名及介绍。点击报名小组中的添加组员,也会有弹窗显示,让显示你这个小组的组员,你可以通过在下面输入框填写想新添加的组员信息,点击添加会判断此成员是否已在数据库中,或已在此小组中,如果是,则弹出弹框告诉你添加失败,如果否,则添加成功。 SignUpAppointMatch.jsp
2提交作品页面(组长) userSubmitWorks.jsp
3查看作品页面,如果已经有评委评分评论,加上显示 userWorksInfo.jsp
评委模块
1显示所有比赛页面 JudgesMain.jsp
2列出所有要打分的作品 JudgesScoringMain.jsp
3查看,对某个作品打分 JudgesScoringWorks.jsp
比赛管理员模块
1显示和发布比赛页面 ComAdminMain.jsp
2查看所有已提交作品页面并统计总分
查看评委的评分表 ComAdminTotalScore-Show.jsp
统计计算总分 ComAdminTotalScore-Calculation.jsp
3统计页面
统计参赛作品 ComAdminStatistics-Works.jsp
统计参赛学生 ComAdminStatistics-Users.jsp
统计参赛评委 ComAdminStatistics-Judges.jsp
超级管理员模块
1重置用户密码功能页面 AdminRePassword.jsp
2通过和查看用户申请的比赛页面 AdminApprovalCom.jsp
数据库管理软件:mysql
管理软件:MySQL Workbench
数据库名称:comsys
根据需求及e-r图,本项目一共设计了7张表,分别是用户表,比赛信息表,参赛小组信息表,参赛成员所属小组信息表,参赛小组提交作品信息表,参赛小组作品评分表,管理员。
用户表(userinfo)
字段 |
中文名称 |
数据类型 |
说明 |