• 【计算机毕业设计】基于SpringBoot+Vue大学生心理健康管理系统的开发与实现


    博主主页:一季春秋
    博主简介:专注Java技术领域和毕业设计项目实战、Java、微信小程序、安卓等技术开发,远程调试部署、代码讲解、文档指导、ppt制作等技术指导。
    主要内容:毕业设计(Java项目、小程序等)、简历模板、学习资料、面试题库、技术咨询。

    精彩专栏推荐订阅👇🏻👇🏻 不然下次找不到哟

    SpringBoot+Vue项目《1000套》持续更新中

    http://t.csdn.cn/1mgm8

    🍅文末获取联系🍅

    目录

    一、项目介绍 

    二、项目主要技术 

    三、系统功能描述

    3.1 系统UML用例

    3.2 系统功能结构

    四、系统实现

    4.1 系统前台功能实现 

    4.2 后台管理员模块实现

    4.3 后台心理师模块实现

    4.4 后台用户模块实现

    五、实现代码


    一、项目介绍 

    本系统采用的数据库是Mysql,本系统前端框架采用Vue.js,后端部分:采用springboot作为开发框架,同时集成MyBatis、Redis等相关技术。IDEA是本系统的开发平台。

    大学生心理健康管理系统,主要的模块包括管理员;系统首页、个人中心、用户管理、心理师管理、心理预约管理、心理咨询管理、咨询类别管理、心里档案管理、通知消息管理、心理测试管理、试题管理、系统管理,用户;系统首页、个人中心、心理预约管理、心理咨询管理、心理档案管理、通知消息,心理师;系统首页、个人中心、心理预约管理、心理咨询管理、心里档案管理,前台系统首页;首页、心理师、心理测试、公告信息、后台管理、个人中心等功能。

    二、项目主要技术 

    1. 开发语言:Java
    2. 使用框架:spring boot
    3. 前端技术:JavaScript、Vue 、css3
    4. 开发工具:IDEA/MyEclipse/Eclipse、Visual Studio Code
    5. 数据库:MySQL 5.7/8.0
    6. 数据库管理工具:phpstudy/Navicat
    7. JDK版本:jdk1.8
    8. Maven: apache-maven 3.8.1-bin

    三、系统功能描述

    使用大学生心理健康管理系统分为管理员、用户和心理师三个角色的权限子模块。

    (1)管理员所能使用的功能主要有:系统首页、个人中心、用户管理、心理师管理、心理预约管理、心理咨询管理、咨询类别管理、心里档案管理、通知消息管理、心理测试管理、试题管理、系统管理等。

    (2)用户可以实现系统首页、个人中心、心理预约管理、心理咨询管理、心理档案管理、通知消息等。

    (3)心理师可以实现系统首页、个人中心、心理预约管理、心理咨询管理、心里档案管理等。

    3.1 系统UML用例

    (1)管理员用例

    管理员登录后可进行系统首页、个人中心、用户管理、心理师管理、心理预约管理、心理咨询管理、咨询类别管理、心里档案管理、通知消息管理、心理测试管理、试题管理、系统管理,管理员的用例如图所示。

    (2)用户用例

    用户注册登录后可进行系统首页、个人中心、心理预约管理、心理咨询管理、心理档案管理、通知消息,用户用例如图所示。

    3.2 系统功能结构

    这些功能可以充分满足大学生心理健康管理系统的需求。此系统功能较为全面如下图系统功能结构如图所示。 

    四、系统实现

    4.1 系统前台功能实现 

    心理师

    心理测试

    个人中心

    4.2 后台管理员模块实现

    登录页面

    用户管理 

    心理预约管理

    心里档案管理

    试题管理

    4.3 后台心理师模块实现

    心理预约管理

    心理咨询管理

    4.4 后台用户模块实现

    心理预约管理

    通知消息管理

    五、实现代码

    心理预约

    1. **
    2. * 心理预约
    3. * 后端接口
    4. * @author
    5. * @email
    6. * @date 2023-04-18 17:20:54
    7. */
    8. @RestController
    9. @RequestMapping("/xinliyuyue")
    10. public class XinliyuyueController {
    11. @Autowired
    12. private XinliyuyueService xinliyuyueService;
    13. /**
    14. * 后端列表
    15. */
    16. @RequestMapping("/page")
    17. public R page(@RequestParam Map params,XinliyuyueEntity xinliyuyue,
    18. HttpServletRequest request){
    19. String tableName = request.getSession().getAttribute("tableName").toString();
    20. if(tableName.equals("xinlishi")) {
    21. xinliyuyue.setXinlishibianhao((String)request.getSession().getAttribute("username"));
    22. }
    23. if(tableName.equals("yonghu")) {
    24. xinliyuyue.setZhanghao((String)request.getSession().getAttribute("username"));
    25. }
    26. EntityWrapper ew = new EntityWrapper();
    27. PageUtils page = xinliyuyueService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, xinliyuyue), params), params));
    28. return R.ok().put("data", page);
    29. }
    30. /**
    31. * 前端列表
    32. */
    33. @IgnoreAuth
    34. @RequestMapping("/list")
    35. public R list(@RequestParam Map params,XinliyuyueEntity xinliyuyue,
    36. HttpServletRequest request){
    37. EntityWrapper ew = new EntityWrapper();
    38. PageUtils page = xinliyuyueService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, xinliyuyue), params), params));
    39. return R.ok().put("data", page);
    40. }
    41. /**
    42. * 列表
    43. */
    44. @RequestMapping("/lists")
    45. public R list( XinliyuyueEntity xinliyuyue){
    46. EntityWrapper ew = new EntityWrapper();
    47. ew.allEq(MPUtil.allEQMapPre( xinliyuyue, "xinliyuyue"));
    48. return R.ok().put("data", xinliyuyueService.selectListView(ew));
    49. }
    50. /**
    51. * 查询
    52. */
    53. @RequestMapping("/query")
    54. public R query(XinliyuyueEntity xinliyuyue){
    55. EntityWrapper< XinliyuyueEntity> ew = new EntityWrapper< XinliyuyueEntity>();
    56. ew.allEq(MPUtil.allEQMapPre( xinliyuyue, "xinliyuyue"));
    57. XinliyuyueView xinliyuyueView = xinliyuyueService.selectView(ew);
    58. return R.ok("查询心理预约成功").put("data", xinliyuyueView);
    59. }
    60. /**
    61. * 后端详情
    62. */
    63. @RequestMapping("/info/{id}")
    64. public R info(@PathVariable("id") Long id){
    65. XinliyuyueEntity xinliyuyue = xinliyuyueService.selectById(id);
    66. return R.ok().put("data", xinliyuyue);
    67. }
    68. /**
    69. * 前端详情
    70. */
    71. @IgnoreAuth
    72. @RequestMapping("/detail/{id}")
    73. public R detail(@PathVariable("id") Long id){
    74. XinliyuyueEntity xinliyuyue = xinliyuyueService.selectById(id);
    75. return R.ok().put("data", xinliyuyue);
    76. }
    77. /**
    78. * 后端保存
    79. */
    80. @RequestMapping("/save")
    81. public R save(@RequestBody XinliyuyueEntity xinliyuyue, HttpServletRequest request){
    82. xinliyuyue.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());
    83. //ValidatorUtils.validateEntity(xinliyuyue);
    84. xinliyuyueService.insert(xinliyuyue);
    85. return R.ok();
    86. }
    87. /**
    88. * 前端保存
    89. */
    90. @RequestMapping("/add")
    91. public R add(@RequestBody XinliyuyueEntity xinliyuyue, HttpServletRequest request){
    92. xinliyuyue.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());
    93. //ValidatorUtils.validateEntity(xinliyuyue);
    94. xinliyuyueService.insert(xinliyuyue);
    95. return R.ok();
    96. }
    97. /**
    98. * 修改
    99. */
    100. @RequestMapping("/update")
    101. @Transactional
    102. public R update(@RequestBody XinliyuyueEntity xinliyuyue, HttpServletRequest request){
    103. //ValidatorUtils.validateEntity(xinliyuyue);
    104. xinliyuyueService.updateById(xinliyuyue);//全部更新
    105. return R.ok();
    106. }
    107. /**
    108. * 删除
    109. */
    110. @RequestMapping("/delete")
    111. public R delete(@RequestBody Long[] ids){
    112. xinliyuyueService.deleteBatchIds(Arrays.asList(ids));
    113. return R.ok();
    114. }
    115. /**
    116. * 提醒接口
    117. */
    118. @RequestMapping("/remind/{columnName}/{type}")
    119. public R remindCount(@PathVariable("columnName") String columnName, HttpServletRequest request,
    120. @PathVariable("type") String type,@RequestParam Map map) {
    121. map.put("column", columnName);
    122. map.put("type", type);
    123. if(type.equals("2")) {
    124. SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
    125. Calendar c = Calendar.getInstance();
    126. Date remindStartDate = null;
    127. Date remindEndDate = null;
    128. if(map.get("remindstart")!=null) {
    129. Integer remindStart = Integer.parseInt(map.get("remindstart").toString());
    130. c.setTime(new Date());
    131. c.add(Calendar.DAY_OF_MONTH,remindStart);
    132. remindStartDate = c.getTime();
    133. map.put("remindstart", sdf.format(remindStartDate));
    134. }
    135. if(map.get("remindend")!=null) {
    136. Integer remindEnd = Integer.parseInt(map.get("remindend").toString());
    137. c.setTime(new Date());
    138. c.add(Calendar.DAY_OF_MONTH,remindEnd);
    139. remindEndDate = c.getTime();
    140. map.put("remindend", sdf.format(remindEndDate));
    141. }
    142. }
    143. Wrapper wrapper = new EntityWrapper();
    144. if(map.get("remindstart")!=null) {
    145. wrapper.ge(columnName, map.get("remindstart"));
    146. }
    147. if(map.get("remindend")!=null) {
    148. wrapper.le(columnName, map.get("remindend"));
    149. }
    150. String tableName = request.getSession().getAttribute("tableName").toString();
    151. if(tableName.equals("xinlishi")) {
    152. wrapper.eq("xinlishibianhao", (String)request.getSession().getAttribute("username"));
    153. }
    154. if(tableName.equals("yonghu")) {
    155. wrapper.eq("zhanghao", (String)request.getSession().getAttribute("username"));
    156. }
    157. int count = xinliyuyueService.selectCount(wrapper);
    158. return R.ok().put("count", count);
    159. }
    160. }
  • 相关阅读:
    【ZLM】花屏现象记录
    交易猫链接源码搭建/带教程
    Java基础面向对象介绍
    Python:自动化处理PDF文档集合,提取文献标题、合并文献PDF并生成目录和页码
    Java ~ Executor
    Tomcat 正确安装并启动后,浏览器访问localhost8080显示404
    Qt之QSS基础
    原生input输入框实现上传文件
    谈谈对跨域(跨源)的一些理解
    【Python数据分析 - 8】:Numpy数组间的运算
  • 原文地址:https://blog.csdn.net/m0_49113107/article/details/133198789