# ItcastHealth **Repository Path**: cndi_653201/ItcastHealth ## Basic Information - **Project Name**: ItcastHealth - **Description**: 传智健康小组项目 - **Primary Language**: Java - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2020-08-07 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # ItcastHealth #### 介绍 传智健康小组项目 #### 软件架构 传智健康项目实战说明 1、实战时间4个半天,按照班级已有分组进行分组实战,每组完成实战全部内容,具体分工由组长进行任务分配 2、实战实施之前,由授课讲师和各个小组长开会,简单说明各个功能需求,由各个组长根据实际小组情况,选择1-12个业 务功能模块,可以选择全部,也可以选择部分完成。 要求各个小组实战内容要有差异化。 3、分组实战过程需要使用Git进行代码管理,组长负责创建Git远程仓库并将基础工程推送至远程仓库,其他组员直接从 Git远程仓库克隆到本地进行开发 4、组员每天下课前需要向组长汇报开发进度 5、实战最后一天晚上,要求组长对各个小组代码进行整合,整理测试完成代码,项目演示。 #### 需求 1. 用户、菜单、权限、角色管理 说明:设计用户管理页面,学员需要完成: 权限数据动态维护(增删改查) 菜单数据动态维护(增删改查) 角色数据动态维护(增删改查) 后台录入用户,完成用户授权,用户可以进行角色更改,用户名注意不能重复 2. 动态展示系统菜单 说明:目前我们的系统菜单是在页面固定写死的,现在需要改为用户认证通过后,在系统首页根据当前登录人动态展 示菜单 当用户管理模块开发完成之后,根据用户不同的角色认证通过之后,可以实现系统菜单的动态展示 3. 会员数量报表指定时间段展示 说明:目前我们项目中的会员数量折线图是固定展示的过去一年的会员数量, 现在需要改为在页面中通过两个日历控件来选择时间段,根据所选的时间段来动态展示此时间段内的每个月会员数量 根据不同的日期控件来完成不同的会员报表数据 4. 会员数量组成饼形图(按照性别分、按照年龄段分) 1、实战时间4个半天,按照班级已有分组进行分组实战,每组完成实战全部内容,具体分工由组长进行任务分配 2、实战实施之前,由授课讲师和各个小组长开会,简单说明各个功能需求,由各个组长根据实际小组情况,选择1-12个业 务功能模块,可以选择全部,也可以选择部分完成。 要求各个小组实战内容要有差异化。 3、分组实战过程需要使用Git进行代码管理,组长负责创建Git远程仓库并将基础工程推送至远程仓库,其他组员直接从 Git远程仓库克隆到本地进行开发 4、组员每天下课前需要向组长汇报开发进度 5、实战最后一天晚上,要求组长对各个小组代码进行整合,整理测试完成代码,项目演示。 说明:需要实现如下两个饼形图: 按照会员的性别来展示男女会员的占比,通过饼形图来展示 按照会员的年龄段(可以指定几个年龄段,例如0-18、 18-30、30-45、45以上)来展示各个年龄段的占比,通过饼形图来展示 5. 移动端页面使用redis缓存套餐数据 说明:目前移动端的套餐列表页面和套餐详情页面每次展示都需要查询数据库,现在需要将这些套餐信息放入redis 缓存来提高查询性能,使用Spring data redis 实现 6. 定时清理预约设置历史数据 说明: 使用quartz框架,完成定时任务功能 预约设置(OrderSetting)数据是用来设置未来每天的可预约人数, 随着时间的推移预约设置表的数据会越来越多,而对于已经过去的历史数据可以定时来进行清理, 例如每月最后一天凌晨2点执行一次清理任务 7. 移动端短信接口防止被刷加上了图形验证码 为了防止被恶意刷验证码(每刷一次验证码公司的短信服务就会被扣一次钱),在发送验证码后面添加一个图形验证 码,每次发送验证码之前先使用图形验证码校验,校验通过才允许发送验证码到手机。 校验可以采用图形验证码,也可以通过滑块验证码,或者图片逻辑验证码。 8. 基础数据之检查组优化 说明: 后台管理系统在添加检查组与检查项,套餐与检查组关系时将原来的循环执行多条sql改为一次性批量插入, 更贴合企业开发 9. 移动端预约下单添加支付功能(微信或支付宝 二维码) 说明: 在客户预约下单成功之后,学员自定义设计支付页面, 二维码支付页面 通过微信扫描,完成下单支付功能,在支付成功之后,给用户发送短信。 10. 移动端订单15分之内没有支付使用定时任务取消 说明: 当客户下单没有在指定时间完成支付 ,超时订单进行定时取消,给用户发送短信告知。 要求学员,完成相关页面和订单表的修改。 11. 用户认证和授权 使用RedisTemplate缓存用户账号、密码和 权限信息 1. 说明:用户认证,第一次访问数据库获取用户账号和权限信息,后续认证 从redis中获取 而不是从db中查询 2. 说明:第一次登录成功之后,后续每次登录 都无需输入账号和密码,回显账号和密码信息,不用再输入账号和 密码信息 3. main.html 获取用户信息 localStorage 对象 客户端存储用户账号和密码 后续登录不需要账号和密码 不用cookie 实现! 12. 移动端访问量降级策略 当微信客户量下单骤增,对用户访问量服务器响应延迟1.5s进行降级处理 客户端编写降级业务 #### 参与贡献 1. Fork 本仓库 2. 新建 Feat_xxx 分支 3. 提交代码 4. 新建 Pull Request #### 码云特技 1. 使用 Readme\_XXX.md 来支持不同的语言,例如 Readme\_en.md, Readme\_zh.md 2. 码云官方博客 [blog.gitee.com](https://blog.gitee.com) 3. 你可以 [https://gitee.com/explore](https://gitee.com/explore) 这个地址来了解码云上的优秀开源项目 4. [GVP](https://gitee.com/gvp) 全称是码云最有价值开源项目,是码云综合评定出的优秀开源项目 5. 码云官方提供的使用手册 [https://gitee.com/help](https://gitee.com/help) 6. 码云封面人物是一档用来展示码云会员风采的栏目 [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/)