《JavaEE高级程序设计(Spring MVC)》期末项目考核要求
项目主题: 健身俱乐部销售管理系统
使用SpringMVC开发健身俱乐部销售管理系统。该系统的主要作用是帮助健身俱乐部管理者进行客户信息维护、销售情况管理、课程整合,并提供简单的销售账目记录和统计功能
要求
1、 基础信息管理功能(20分)
(1) 管理员账号的登录、退出和密码修改(2分)
(2) 客户管理——查看客户信息、新增客户和更改客户状态,(3分)客户信息包括客户信息和客户卡类型信息两部分,但不限于如下内容:
客户信息部分
a) 客户账号
b) 客户手机号
c) 客户卡类型
d) 客户姓名
e) 余额
f) 客户卡有效期截止日期
注:不能删除客户信息
客户卡类型信息部分
a) 客户卡卡类型名称
b) 折扣系数
c) 有效期限
d) 价格
客户卡类型包括但不限于如下几种:
次卡——只限当次消费
月卡——从办卡日期开始计算,一月内进行消费
季卡——从办卡日期开始计算,一个季度内进行消费
年卡——从办卡日期开始计算,一个年度内进行消费
需求描述:每个客户加入俱乐部时会登记客户基本信息并预存一笔钱,而客户如果需要参加健身活动需要先用预存的金额购买客户卡(注:客户卡只是用于界定客户的消费类型,没有专门的客户卡发给用户,例如客户账号是101101的客户本次购买了一张季卡,系统只会将客户卡类型编号修改为季卡类型,而无需生成一张具体的季卡),客户预定健身课程也是用预存金额进行扣款
(3) 客户档案管理——管理客户档案信息,(3分)客户档案信息包括基本信息和详细记录两部分,包括但不限于如下内容:
基本信息部分
a) 客户账号
b) 性别
c) 职业
d) 出生年月
e) 健身目标
f) 健身频率
g) 伤病史
h) 生活习惯
详细信息部分
a) 身高
b) 体重
c) BMI值
d) 体脂率
e) 心肺功能状况
f) 记录时间
注:客户的档案信息可以在客户管理的详情页面浏览
(4) 教练管理——对具体的教练进行管理(3分),教练信息包括但不限于如下内容:
java和jsp
a) 工号
b) 姓名
c) 性别
d) 靓照
e) 可授课程(多选)
f) 专业和职级(多选)
g) 底薪
(5) 专业和职级管理——对专业和职级进行管理(2分),专业和职级信息包括但不限于如下内容:
a) 专业职级编号
b) 专业名称
c) 职级名称
d) 团课课时费
e) 私教课时费
f) 私教课时费提成比例
专业职级举例:
瑜伽教练初级
瑜伽教练中级
瑜伽教练高级
初级健身教练
中级健身教练
高级健身教练
健身指导师
注:团课课时费是该职级的教练教授团课时的应付课时费,私教课按私教课时费*提成比例计算教练的提成
(6) 课程管理——对课程进行管理(3分)课程信息包括但不限于如下内容:
a) 课程编号
b) 课程名称
c) 授课资格的专业职级编号
d) 课程所需房间类型编号
e) 单次授课时间
f) 单次授课费用
g) 可免费的客户类型(多选)
h) 是否为私教课程
可选进阶功能:课程所需房间类型可多选;授课资格的专业职级可以多选,在计算教练工资时,若该教练有的多个职级都符合本课程要求,则选择课时费或提成最高的职级进行计算
(7) 房间类型管理——对健身房类型进行管理(2分),房间类型信息包括但不限于如下内容:
a) 类型编号
b) 类型名称
(8) 房间管理——对健身房进行管理(2分),房间信息包括但不限于如下内容:
a) 房间编号
b) 房间类型编号
c) 人员容量
2、 基本业务功能(50分)
(1) 排课管理——为健身教练排课(20分),排课信息包括但不限于如下内容:
a) 课程编号
b) 授课教练工号
c) 授课房间号
d) 授课开始时间
e) 授课结束时间
f) 已报名学员列表
g) 课程状态(已完成/正在报名/报名截止/正在上课)
注:排课时根据所选课程查询可以上该课程的房间和教练供选择,选择上课时间后系统自动根据课程的单次授课时间计算授课结束时间;在保存排课信息前需要保证新排的课程与之前已排的课程不存在房间和教练的冲突。每节课之间必须预留至少十分钟的间隔时间
(2) 客户充值和客户卡购买(2分)
(3) 课程预定(15分)
可以根据客户的有效截止日期和所选择的选择起止日期查看所有能够选的排课情况,并对其中的课程进行预定,注:课程开始前一小时停止预定,该课程处于报名截止状态;也可以在该功能预定私教课程。预定私教课程时需要选择预定时间、房间、私教、授课节数,系统需要根据用户选择保证所预定的私教课程不会产生时间、房间、私教等的冲突
(4) 充值和消费记录查询:(3分)   
可以根据客户账号和起止日期查询该客户所有的充值和消费记录
(5) 工资计算:(10分)
每月最后一天统计每个教练当月应付工资,教练工资按如下公式计算:
教练当月工资=底薪+团课课时费+私教课时提成
3、    统计分析功能(15分)
(1) 统计分析功能,具体要求如下(15分):
a) 可以根据所选择的起始月份和结束月份,按月统计每月的收入变化,以柱状图显示
注:月收入以当月充值金额为准
b) 可以根据所选择的起始月份、结束月份和某一课程,按月统计该课程的排课节数变化,以折线图显示
c) 可以根据所选择的起始月份、结束月份和某一课程,按月统计该课程的预定人次变化,以折线图显示
d) 可以根据所选择的起始月份、结束月份和某一教练,按月统计该教练各课程的预定人次变化,以折线图显示。
e) 可以根据所选择的起始月份、结束月份和某一教练,统计该教练各课程的预定人次比例,以饼图显示
项目的其他要求
1、 对程序结构的要求(不符合要求的程序,在最终成绩基础上乘以0.8的系数):
a) 项目要包含控制器层、Service层、Dao层
b) Service层和Dao层必须写接口和实现类,其他类引用Service或Dao时只能引用接口,不能直接引用实现类
c) 除特殊情况外,Jsp页面不能含有java代码
d) 数据库使用MySql
2、 编写程序相关文档(15分)
(1) 需求分析文档(5分)
(2) 详细设计文档(6分)
(3) 数据库设计文档(4分)
(4) 项目成员工作绩效表(列出小组成员所完成的具体工作内容和在整个项目评分中的分值,该文件由小组长撰写,有此文档,小组长额外+5分,没有此文档,小组长额外-10分,注:文档的书写只能由一个人完成,若小组中有多人书写文档,则该小组的文档成绩为0)
3、 考核标准:
a) 项目组人数为5人,由于班级人数问题,个别小组有老师指定为6人组
b) 考核公式:个人成绩=项目成绩*个人工作权重
c) 个人权重的计算方式:
个人工作量<12分:0.8
个人工作量为12分(含)~16分(不含):0.9
个人工作量为16分(含)~21分(含):1.0
个人工作量为21分(不含)~27分(含):1.1
个人工作量>27分:1.2
    注:个人成绩还会根据答辩情况作小幅上下浮动
4、 需要提交的文件
(1) 本次项目的Web工程
(2) 本项目的MySql数据库转储文件(*.sql)文件
(3) 程序相关文档
5、 其他要求
(1) 每个项目组要取一个中文组名(名字不能重复)
(2) 本项目的Web工程包名必须以“com.项目组中文名的声母.”开始,例如:
项目组名为“测试小组”则工程中的包名都以“com.csxz.”开头
(3) 注释的书写:每个类必须写明其实现的功能,每个方法必须写明其作用及方法中参数的意义,如果没有,酌情减0~10分。
(4) 若使用了EasyUi或BootStrap等前端框架进行开发,或使用了SpringBoot技术,则项目组总成绩额外加5分
(5) 本系统默认只有一个管理员角,不另设置其他角操作;但鼓励将系统分为管理员、教练和客户三个角,其中个角的操作权限如下:
a) 管理员可以操作所有功能
b) 教练可以在排课管理功能中查看自己所有的排课信息和排课的报名情况;在工资计算功能中查看自己的详细信息、当月工资及明细和历史工资及明细;
c) 客户可在客户充值和客户卡购买功能自助充值和购买客户卡;在课程预定功能进行课程预定和查看自己已预订的所有课程;在消费记录查询功能查看自己的消费记录。同时,客户都能在上述各功能中查看自己的详细档案信息
若本系统按照如上要求分了角,则项目总成绩额外加10分
6、 本次期末项目的效果展示时间为第十五、十六周。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。