本SSM项目适合刚学完SSM,可作为新手练手的项目.

1 项目介绍

传智健康管理系统是一款应用于健康管理机构的业务系统,实现健康管理机构工作内容可视化、会员管理专业化、健康评估数字化、健康干预流程化、知识库集成化,从而提高健康管理师的工作效率,加强与会员间的互动,增强管理者对健康管理机构运营情况的了解。

详见:资料中的传智健康PRD文档.docx

1.1 原型展示

参见资料中的静态原型。

1.2 技术架构

1

1.3 功能架构

2

1.4.相互环境搭建

本项目采用maven分模块开发方式,即对整个项目拆分为几个maven工程,每个maven工程存放特定的一类代码,具体如下:

10

各模块职责定位:

health_parent:父工程,打包方式为pom,统一锁定依赖的版本,同时聚合其他子模块便于统一执行maven命令

health_common:通用模块,打包方式为jar,存放项目中使用到的一些工具类、实体类、返回结果和常量类

health_interface:打包方式为jar,存放服务接口

health_service_provider:Dubbo服务模块,打包方式为war,存放服务实现类、Dao接口、Mapper映射文件等,作为服务提供方,需要部署到tomcat运行

health_backend:传智健康管理后台,打包方式为war,作为Dubbo服务消费方,存放Controller、HTML页面、js、css、spring配置文件等,需要部署到tomcat运行

health_mobile:移动端前台,打包方式为war,作为Dubbo服务消费方,存放Controller、HTML页面、js、css、spring配置文件等,需要部署到tomcat运行

  • 一般父工程采用POM

  • 普通Maven采用Jar包

  • Web工程采用war包,因为要部署在tomcat下.

2.预约管理

2.1检查项管理

主要功能:

  • 检查项的的新建,查询,编辑,删除功能
    在这里插入图片描述
  • 使用Mybatis插件进行分页展示
    在这里插入图片描述

2.2检查组管理

检查组主要用来包含检查项,一个检查组里面包含多个检查项

  • 页面基本展示

在这里插入图片描述

  • 编辑检查组

主要练习页面数据的回显以及向数据库中插入数据

在这里插入图片描述在这里插入图片描述

  • 其他功能:检查组的查询,新建,删除,分页显示

2.3套餐管理

套餐是检查组的集合

  • 页面展示
    在这里插入图片描述

  • 新建套餐

    主要用到了图片存储—七牛云储存, 编辑的其他功能和检查组的编辑处理类似.
    在这里插入图片描述

  • 编辑套餐
    主要练习页面数据的回显以及想数据库中插入数据.
    插入数据是多表进行插入,需要t_setmeal以及t_setmeal_checkgroup两个表都插入数据.

在这里插入图片描述

在这里插入图片描述

  • 定时清理垃圾图片
    由于用户上传图片可能上传多次,但是最后保存到数据库的是最后一次上传的那张,之前的那些都成为了垃圾图片,我们可以利用 Redis+ 定时调度组件 ,来完成每个月/每半年清理用户的垃圾图片.

  • 其他功能:套餐的查询,删除,分页展示.

2.4预约设置

  • 基本展示
    在这里插入图片描述
    在这里插入图片描述

  • 批量导入预约设置
    我们可以利用POI技术,让管理员下载预约人数的模板,填写完预约情况后导入,批量设置每天的预约人数.
    在这里插入图片描述

  • 基于日历实现预约设置
    这个是为某一天进行单独的预约设置
    在这里插入图片描述

3.移动端开发

3.1套餐列表以及套餐详情功能

  • 页面展示
    在这里插入图片描述

  • 套餐列表展示
    在这里插入图片描述

  • 套餐详情页面展示
    由于套餐包括多个检查组,而检查组又包含多个检查项,所以在查询数据库时需要使用到动态Sql+Sql的嵌套查询
    在这里插入图片描述在这里插入图片描述

  • 页面静态化技术改进套餐详情页面.
    因为套餐展示页面+套餐详情页面的内容多,每次需要从数据库查询的数据量大,但是这些静态资源也不经常发生改变,这时我们可以使用页面页面静态化技术—Freemarker,添加套餐详情页面的模板,第一次访问数据库后形成套餐详情的静态页面. 之后当用户访问的时候,直接向用户展示的是详情的静态页面,页面加载速度将大大提高.
    当然我们需要在页面进行增删改操作后重新查询数据库生成新的静态页面.

在这里插入图片描述

在这里插入图片描述
原理:服务器启动后,首先会形成一个m_setmeal.html的静态页面,之后当用户点击对应的套餐时,当时第一次访问时,服务器为用户形成该详情页面的静态页面,之后该静态页面如果不进行增删改查,那么静态页面将保持不变.

在这里插入图片描述

3.2体检预约

这一部分使用到了短信验证码发送功能,本应该使用阿里云的短信发送,但是由于需要备案的网站,网站还未审核下来,就先用邮箱验证码代替了,实际效果一样的.
在这里插入图片描述

在这里插入图片描述

4.手机登录

在这里插入图片描述
在这里插入图片描述

5.后台系统权限控制

权限主要包括:

  • 系统功能权限:权限数据,菜单数据,角色数据,用户数据的增删改查.
  • 健康业务系统权限:检查项,检查组,套餐管理的增删改查权限+统计分析的相关操作.

在实际应用中分为:

  1. admin(系统管理员),可以拥有以上的所有权限操作.
  2. 健康管理师:只能拥有健康业务的相关权限.
  3. 健康治疗师:拥有健康业务的相关权限(除了删除权限)
  4. 健康咨询师:只拥有健康业务权限的查询+统计分析权限.

对于没有权限访问的用户,不能让其进行访问对应的功能. 我们这个项目主要采用Spring Security框架来实现.

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

6.统计分析

  • 会员人数统计分析

主要使用到了图形报表—Echarts
在这里插入图片描述

  • 套餐预约占比统计

在这里插入图片描述

  • 运行数据统计

PDF报表导出使用到了 JasperReports技术,Excel的导出使用到了Apache POI 技术,关于技术基本使用可点击这里.

在这里插入图片描述

本项目来源于B站黑马的传智健康系统

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐