随着健康意识的不断提升和移动互联网技术的飞速发展,健康管理成为了人们日常生活中不可或缺的一部分。微信小程序作为一种轻量级、易部署的移动应用解决方案,为用户提供了便捷的健康管理服务入口。同时,Spring Boot作为一种快速构建企业级应用的框架,为系统的后端开发提供了强大的支持。本文旨在介绍一种基于Spring Boot的微信小程序健康管理系统的设计与实现。
本系统以Spring Boot为后端框架,结合微信小程序的前端界面,构建了一个功能丰富、操作便捷的健康管理平台。系统主要包括用户信息管理、健康数据录入、健康数据分析、健康建议推送等功能模块。用户可以通过微信小程序随时随地录入个人的健康数据,系统则通过后端服务对数据进行存储、处理和分析,为用户提供个性化的健康指导。
在设计与实现过程中,我们充分考虑了用户体验和系统性能。前端界面设计简洁明了,操作流畅,为用户提供良好的交互体验。后端服务则采用了高效的数据处理算法和安全的加密措施,确保用户数据的安全性和隐私性。同时,我们还通过优化系统架构和代码结构,提高了系统的稳定性和可扩展性。
本系统的成功设计与实现,不仅为用户提供了一个方便、高效的健康管理工具,也为健康管理领域的发展注入了新的活力。未来,我们将继续深化系统的功能开发,提升用户体验,推动健康管理服务的普及和优化。
关键字:Spring Boot;微信小程序;健康管理;系统设计;
Abstract
With the continuous improvement of health awareness and the rapid development of mobile Internet technology, health managements has become an indispensable part of People's Daily life. As a lightweight and easy to deploy mobile application solution, wechat applet provides users with a convenient health management service entrance. At the same time, Spring Boot, as a framework for quickly building enterprise-level applications, provides strong support for the back-end development of the system. This paper aims to introduce the design and implementation of a WeChat applet health management system based on Spring Boot.
With Spring Boot as the back-end framework and combined with the front-end interface of wechat small program, this system builds a health management platform with rich functions and convenient operation. The system mainly includes user information management, health data entry, health data analysis, health advice push and other functional modules. Users can input their personal health data anytime and anywhere through the wechat mini-program, and the system can store, process and analyze the data through the back-end service, so as to provide users with personalized health guidance.
In the design and implementation process, we fully consider the user experience and system performance. The front-end interface design is simple and clear, and the operation is smooth, providing users with a good interactive experience. The back-end service adopts efficient data processing algorithms and secure encryption measures to ensure the security and privacy of user data. At the same time, we also improve the stability and scalability of the system by optimizing the system architecture and code structure.
The successful design and implementation of this system not only provides users with a convenient and efficient health management tool, but also injects new vitality into the development of the health management field. In the future, we will continue to deepen the function development of the system, improve the user experience, and promote the popularization and optimization of health management services.
Keywords: Spring Boot; WeChat applet; health management; system design;.
随着信息技术的飞速发展,人们的生活方式正在发生深刻的变化。健康管理作为人们追求高品质生活的重要组成部分,已经逐渐受到了广泛的关注。传统的健康管理方式往往受到时间、地域和人力资源的限制,难以满足现代人对于便捷、高效健康管理服务的需求。因此,利用现代信息技术手段,设计和实现一种新型的健康管理系统,具有重要的现实意义和应用价值。
微信小程序作为一种轻量级的应用形态,自推出以来便受到了广大用户的青睐。它无需下载安装,即可在微信平台上直接使用,具有即用即走的特点。这种便捷性使得微信小程序在健康管理领域具有广阔的应用前景。用户可以通过微信小程序随时随地记录自己的健康数据,获取个性化的健康建议,实现健康管理的智能化和个性化。
Spring Boot作为一种快速构建企业级应用的框架,具有开发效率高、易于维护、扩展性强等优点。它提供了丰富的功能和组件,使得开发人员可以更加专注于业务逻辑的实现,而非底层技术的搭建。基于Spring Boot构建的健康管理系统可以更加稳定、高效地运行,为用户提供更加优质的服务。
因此,基于Spring Boot的微信小程序健康管理系统的设计与实现,不仅是对传统健康管理方式的创新,也是对现代信息技术与医疗健康领域深度融合的探索。这一课题的研究将有助于推动健康管理服务的智能化、个性化发展,提升人们的生活质量和健康水平。同时,也为相关产业的发展提供了新的思路和方向,具有重要的理论意义和实践价值。
1.2 国内外研究现状
在国内,基于Spring Boot的微信小程序健康管理系统的设计与实现正逐渐受到关注。越来越多的研究机构和企业开始投入到这一领域的研究和实践中。这些系统通常结合了中国用户的实际需求和文化背景,注重用户体验和数据的本地化处理。一些医院、健康管理机构和科技公司纷纷推出了基于微信小程序的健康管理平台,用户可以通过这些平台方便地记录健康数据、接收健康建议,并与医生或健康管理师进行在线交流。同时,学术界也对这一领域展开了广泛的研究,包括系统的架构设计、数据安全性、隐私保护以及健康数据的分析与应用等方面。
国外研究现状:
在国外,尤其是在欧美等发达国家,健康管理系统的研究与应用已经相对成熟。基于Spring Boot或其他技术的健康管理系统已经广泛应用于医疗、健康保险、运动健身等多个领域。这些系统通常具有高度的集成性和智能化特点,能够为用户提供个性化的健康管理方案。同时,国外的研究还更加关注于健康数据的深度挖掘和分析,通过大数据和人工智能技术来预测疾病风险、制定预防策略等。此外,一些国外的研究还涉及到了跨平台的健康管理服务,旨在为用户提供更加全面和便捷的健康管理服务。
综上所述,国内外在基于Spring Boot的微信小程序健康管理系统的设计与实现方面都已经取得了一定的进展。然而,由于不同国家和地区的医疗体系、文化背景和用户需求的差异,这些系统在功能和特点上也有所不同。未来,随着技术的不断进步和人们健康意识的提高,这一领域的研究和实践还将继续深入发展。
1.3系统开发技术的特色
(1)系统采用前后端分离的开发模式,使得前端和后端可以独立开发和维护,提高了开发效率和系统的可维护性。
(2)系统采用微服务架构,将系统拆分成多个独立的服务,每个服务可以独立部署和扩展,提高了系统的灵活性和可扩展性。
(3)系统采用 Docker 容器化部署技术,使得系统可以快速部署和迁移,提高了系统的可靠性和可移植性。
(4)系统采用自动化测试技术,包括单元测试、接口测试和性能测试等,提高了系统的稳定性和可靠性。
(5)系统采用安全保障技术,包括用户认证、授权、数据加密等,保障了系统的安全性和用户的隐私。
这些技术特色使得基于微信小程序的健康管理系统具有高效、稳定、可靠、安全等优点,能够满足用户的需求和提高用户的体验。
2 基于微信小程序的健康管理系统分析
基于微信小程序的健康管理系统可在微信端实现登录注册、首页,健康食谱,BMI记录,饮食记录,运动记录,健康论坛,健康资讯,我的(基本信息,收藏,统计图)等功能,相对于传统健康管理方式,基于微信小程序的健康管理系统提高了效率和便利性。在后台可对系统用户,健康食谱管理,食谱定制管理,食谱类型管理,BMI记录,饮食记录管理,运动计划管理,系统管理,健康公告管理,资源管理,交流管理进行管理,针对用户对健康管理的需求,充分了解用户的需求,更有针对性的服务用户。
2.1可行性分析
2.1.1技术可行性分析
基于微信小程序的健康管理系统存储所使用的mysql数据库以及开发中所使用的IDEA、Tomcat这些开发工具的使用,能够给我们的编写工作带来许多的便利。系统使用Springboot框架进行开发,使系统的可扩展性和维护性更佳,减少java配置代码,简化编程代码,目前Springboot框架也是很多企业选择的框架之一。
2.1.2经济可行性分析
在开发基于微信小程序的健康管理系统中所使用的开发软件像IDEA开发工具、Tomcat8.0服务器、MySQL5.7数据库、Photoshop图片处理软件等,这些都是开源免费的,并且基于微信小程序的健康管理系统是自己设计并编码实现的,数据库是使用流行mysql进行数据的存储,开源的mysql等技术的使用,减少系统开发费用。
2.1.3操作可行性分析
在日常生活中,随着小程序的快速推广和使用,越来越多人掌握小程序的使用方法,基于微信小程序的健康管理系统在这种条件背景下是很容易被人们所接受和熟悉的,所以在操作上没任何问题。
2.2功能需求分析
基于微信小程序的健康管理系统中的web后台管理端采用了IntelliJ IDEA 2019.3.4 开发工具,配合了java开发语言中Springboot开发框架以及tomcat8.0服务器、jdk1.8,微信端采用了微信开发者工具稳定版1.05.2111300,页面使用wxss和wxml进行布局,微信端和web后台管理端采用json接口通信。
1. 注册用户功能:
登录注册: 提供用户注册和登录功能,确保用户身份安全。
首页: 展示系统的主要功能入口、最新的网站公告和健康食谱,引导用户浏览健康管理服务。
健康食谱:根据用户的身体状况、营养需求和口味偏好,系统推荐合适的食谱,帮助用户制定科学的饮食计划。
BMI记录:用户可以在此输入身高和体重信息,系统自动计算BMI值,并给出相应的健康评价和建议。
饮食记录:用户记录每日饮食详情,包括食物种类、摄入量等。
运动记录:用户在此记录每日运动情况,包括运动类型、时长、消耗热量等。
健康论坛:用户可以在论坛中发表健康心得、提问或回答他人问题,与其他用户交流健康经验。
健康资讯:系统定期更新健康资讯,包括健康知识、疾病预防、健康生活方式等内容。
我的:
基本信息:用户可以查看和编辑个人信息,
收藏:用户可以收藏喜欢的食谱、资讯等内容。
统计图:展示了用户的健康数据变化趋势,帮助用户直观了解自身的健康状况。
2. 管理员功能:
后台首页: 提供管理员登录后的管理主页,展示系统的重要信息和功能入口。
系统用户: 管理系统内的用户信息,包括注册用户和管理员的账户信息和权限设置。
健康食谱管理:查看、编辑、删除已发布的健康食谱。
食谱定制管理:监督和管理用户的个性化食谱定制请求。
食谱类型管理:添加、修改、删除食谱类型,满足不同用户的需求。
BMI记录管理:查看用户的BMI记录数据,分析用户群体的体重分布情况。
饮食记录管理:监控和分析用户的饮食记录数据,了解用户的饮食习惯和营养摄入情况。
运动计划管理:审核和发布运动计划,确保计划的科学性和有效性。
系统管理:配置系统参数,包括数据备份、日志记录等。
健康公告管理:发布和编辑健康公告,提醒用户关注健康问题和注意事项。
资源管理:管理系统的各类资源,包括图片、视频、文档等。
交流管理:监督和管理用户之间的交流活动,包括论坛、私信等。
以上是基于微信小程序、Spring Boot的健康管理系统的功能需求分析,涵盖了注册用户和管理员两个角色的功能设计与实现要求。
基于微信小程序的健康管理系统的完整UML用例图分别是图2-1,图2-2。在参与者上包括注册用户、管理员。
注册用户角色的用例包括登录注册、首页,健康食谱,BMI记录,饮食记录,运动记录,健康论坛,健康资讯,我的(基本信息,收藏,统计图)。
图2-1 基于微信小程序的健康管理系统注册用户角色用例图
管理员角色的用例包括后台首页、系统用户、健康食谱管理、出行分类管理、健康资讯管理、系统管理、通知公告管理、资源管理(新闻资讯、资讯分类)、交流管理(健康论坛、论坛分类)。
图2-2 基于微信小程序的健康管理系统管理员角色用例图
3基于微信小程序的健康管理系统总体设计
在上一章节中分析了基于微信小程序的健康管理系统的功能性需求,并且根据需求分析了基于微信小程序的健康管理系统中的用例。那么接下来就要开始对基于微信小程序的健康管理系统架构、主要功能和数据库开始进行设计。
3.1系统功能模块设计
通过对基于微信小程序的健康管理系统的功能需求分析以及用例分析,得出了基于微信小程序的健康管理系统的功能模块图如图3-1所示。
3.3数据库设计
3.3.1 数据库E-R模型
下面是整个基于微信小程序的健康管理系统的数据库表的E-R实体关系图,如图3-2所示:
3.3.2 数据库表设计
通过上一小节中基于微信小程序的健康管理系统中总E-R关系图上得出一共需要创建很多个数据表。在此我主要罗列几个主要的数据库表结构设计。
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | token_id | int | 10 | 0 | N | Y | 临时访问牌ID | |
2 | token | varchar | 64 | 0 | Y | N | 临时访问牌 | |
3 | info | text | 65535 | 0 | Y | N | ||
4 | maxage | int | 10 | 0 | N | N | 2 | 最大寿命:默认2小时 |
5 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
6 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
7 | user_id | int | 10 | 0 | N | N | 0 | 用户编号: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | article_id | mediumint | 8 | 0 | N | Y | 文章id:[0,8388607] | |
2 | title | varchar | 125 | 0 | N | Y | 标题:[0,125]用于文章和html的title标签中 | |
3 | type | varchar | 64 | 0 | N | N | 0 | 文章分类:[0,1000]用来搜索指定类型的文章 |
4 | hits | int | 10 | 0 | N | N | 0 | 点击数:[0,1000000000]访问这篇文章的人次 |
5 | praise_len | int | 10 | 0 | N | N | 0 | 点赞数 |
6 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
7 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
8 | source | varchar | 255 | 0 | Y | N | 来源:[0,255]文章的出处 | |
9 | url | varchar | 255 | 0 | Y | N | 来源地址:[0,255]用于跳转到发布该文章的网站 | |
10 | tag | varchar | 255 | 0 | Y | N | 标签:[0,255]用于标注文章所属相关内容,多个标签用空格隔开 | |
11 | content | longtext | 2147483647 | 0 | Y | N | 正文:文章的主体内容 | |
12 | img | varchar | 255 | 0 | Y | N | 封面图 | |
13 | description | text | 65535 | 0 | Y | N | 文章描述 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | type_id | smallint | 5 | 0 | N | Y | 分类ID:[0,10000] | |
2 | display | smallint | 5 | 0 | N | N | 100 | 显示顺序:[0,1000]决定分类显示的先后顺序 |
3 | name | varchar | 16 | 0 | N | N | 分类名称:[2,16] | |
4 | father_id | smallint | 5 | 0 | N | N | 0 | 上级分类ID:[0,32767] |
5 | description | varchar | 255 | 0 | Y | N | 描述:[0,255]描述该分类的作用 | |
6 | icon | text | 65535 | 0 | Y | N | 分类图标: | |
7 | url | varchar | 255 | 0 | Y | N | 外链地址:[0,255]如果该分类是跳转到其他网站的情况下,就在该URL上设置 | |
8 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
9 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | auth_id | int | 10 | 0 | N | Y | 授权ID: | |
2 | user_group | varchar | 64 | 0 | Y | N | 用户组: | |
3 | mod_name | varchar | 64 | 0 | Y | N | 模块名: | |
4 | table_name | varchar | 64 | 0 | Y | N | 表名: | |
5 | page_title | varchar | 255 | 0 | Y | N | 页面标题: | |
6 | path | varchar | 255 | 0 | Y | N | 路由路径: | |
7 | position | varchar | 32 | 0 | Y | N | 位置: | |
8 | mode | varchar | 32 | 0 | N | N | _blank | 跳转方式: |
9 | add | tinyint | 3 | 0 | N | N | 1 | 是否可增加: |
10 | del | tinyint | 3 | 0 | N | N | 1 | 是否可删除: |
11 | set | tinyint | 3 | 0 | N | N | 1 | 是否可修改: |
12 | get | tinyint | 3 | 0 | N | N | 1 | 是否可查看: |
13 | field_add | text | 65535 | 0 | Y | N | 添加字段: | |
14 | field_set | text | 65535 | 0 | Y | N | 修改字段: | |
15 | field_get | text | 65535 | 0 | Y | N | 查询字段: | |
16 | table_nav_name | varchar | 500 | 0 | Y | N | 跨表导航名称: | |
17 | table_nav | varchar | 500 | 0 | Y | N | 跨表导航: | |
18 | option | text | 65535 | 0 | Y | N | 配置: | |
19 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
20 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | bmi_records_id | int | 10 | 0 | N | Y | BMI记录ID | |
2 | record_users | int | 10 | 0 | Y | N | 0 | 记录用户 |
3 | user_name | varchar | 64 | 0 | Y | N | 用户姓名 | |
4 | record_date | date | 10 | 0 | Y | N | 记录日期 | |
5 | weight | varchar | 64 | 0 | Y | N | 体重 | |
6 | height | varchar | 64 | 0 | Y | N | 身高 | |
7 | bmi_value | varchar | 64 | 0 | Y | N | BMI值 | |
8 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
9 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | collect_id | int | 10 | 0 | N | Y | 收藏ID: | |
2 | user_id | int | 10 | 0 | N | N | 0 | 收藏人ID: |
3 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
4 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
5 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
6 | title | varchar | 255 | 0 | Y | N | 标题: | |
7 | img | varchar | 255 | 0 | Y | N | 封面: | |
8 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
9 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | comment_id | int | 10 | 0 | N | Y | 评论ID: | |
2 | user_id | int | 10 | 0 | N | N | 0 | 评论人ID: |
3 | reply_to_id | int | 10 | 0 | N | N | 0 | 回复评论ID:空为0 |
4 | content | longtext | 2147483647 | 0 | Y | N | 内容: | |
5 | nickname | varchar | 255 | 0 | Y | N | 昵称: | |
6 | avatar | varchar | 255 | 0 | Y | N | 头像地址:[0,255] | |
7 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
8 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
9 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
10 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
11 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | dietary_records_id | int | 10 | 0 | N | Y | 饮食记录ID | |
2 | record_users | int | 10 | 0 | Y | N | 0 | 记录用户 |
3 | user_name | varchar | 64 | 0 | Y | N | 用户姓名 | |
4 | record_date | date | 10 | 0 | Y | N | 记录日期 | |
5 | type_of_diet | varchar | 64 | 0 | Y | N | 饮食类型 | |
6 | screenshot | varchar | 255 | 0 | Y | N | 截图 | |
7 | dietary_content | text | 65535 | 0 | Y | N | 饮食内容 | |
8 | dietary_advice | text | 65535 | 0 | Y | N | 饮食建议 | |
9 | examine_state | varchar | 16 | 0 | N | N | 未审核 | 审核状态 |
10 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
11 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | exercise_plan_id | int | 10 | 0 | N | Y | 运动计划ID | |
2 | plan_title | varchar | 64 | 0 | Y | N | 计划标题 | |
3 | registered_person | int | 10 | 0 | Y | N | 0 | 登记人 |
4 | user_name | varchar | 64 | 0 | Y | N | 用户姓名 | |
5 | registration_date | date | 10 | 0 | Y | N | 登记日期 | |
6 | plan_content | text | 65535 | 0 | Y | N | 计划内容 | |
7 | sports_advice | text | 65535 | 0 | Y | N | 运动建议 | |
8 | examine_state | varchar | 16 | 0 | N | N | 未审核 | 审核状态 |
9 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
10 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | forum_id | mediumint | 8 | 0 | N | Y | 论坛id | |
2 | display | smallint | 5 | 0 | N | N | 100 | 排序 |
3 | user_id | mediumint | 8 | 0 | N | N | 0 | 用户ID |
4 | nickname | varchar | 16 | 0 | Y | N | 昵称:[0,16] | |
5 | praise_len | int | 10 | 0 | Y | N | 0 | 点赞数 |
6 | hits | int | 10 | 0 | N | N | 0 | 访问数 |
7 | title | varchar | 125 | 0 | N | N | 标题 | |
8 | keywords | varchar | 125 | 0 | Y | N | 关键词 | |
9 | description | varchar | 255 | 0 | Y | N | 描述 | |
10 | url | varchar | 255 | 0 | Y | N | 来源地址 | |
11 | tag | varchar | 255 | 0 | Y | N | 标签 | |
12 | img | text | 65535 | 0 | Y | N | 封面图 | |
13 | content | longtext | 2147483647 | 0 | Y | N | 正文 | |
14 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
15 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
16 | avatar | varchar | 255 | 0 | Y | N | 发帖人头像: | |
17 | type | varchar | 64 | 0 | N | N | 0 | 论坛分类:[0,1000]用来搜索指定类型的论坛帖 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | type_id | smallint | 5 | 0 | N | Y | 分类ID:[0,10000] | |
2 | name | varchar | 16 | 0 | N | N | 分类名称:[2,16] | |
3 | description | varchar | 255 | 0 | Y | N | 描述:[0,255]描述该分类的作用 | |
4 | url | varchar | 255 | 0 | Y | N | 外链地址:[0,255]如果该分类是跳转到其他网站的情况下,就在该URL上设置 | |
5 | father_id | smallint | 5 | 0 | N | N | 0 | 上级分类ID:[0,32767] |
6 | icon | varchar | 255 | 0 | Y | N | 分类图标: | |
7 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
8 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | healthy_recipes_id | int | 10 | 0 | N | Y | 健康食谱ID | |
2 | recipe_name | varchar | 64 | 0 | Y | N | 食谱名称 | |
3 | recipe_images | varchar | 255 | 0 | Y | N | 食谱图片 | |
4 | recipe_types | varchar | 64 | 0 | Y | N | 食谱类型 | |
5 | heat_specification | varchar | 64 | 0 | Y | N | 热量规格 | |
6 | recipe_materials | text | 65535 | 0 | Y | N | 食谱材料 | |
7 | recipe_introduction | text | 65535 | 0 | Y | N | 食谱介绍 | |
8 | hits | int | 10 | 0 | N | N | 0 | 点击数 |
9 | praise_len | int | 10 | 0 | N | N | 0 | 点赞数 |
10 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
11 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
12 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | hits_id | int | 10 | 0 | N | Y | 点赞ID: | |
2 | user_id | int | 10 | 0 | N | N | 0 | 点赞人: |
3 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
4 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
5 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
6 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
7 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | notice_id | mediumint | 8 | 0 | N | Y | 公告id: | |
2 | title | varchar | 125 | 0 | N | N | 标题: | |
3 | content | longtext | 2147483647 | 0 | Y | N | 正文: | |
4 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
5 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | praise_id | int | 10 | 0 | N | Y | 点赞ID: | |
2 | user_id | int | 10 | 0 | N | N | 0 | 点赞人: |
3 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
4 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
5 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
6 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
7 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
8 | status | bit | 1 | 0 | N | N | 1 | 点赞状态:1为点赞,0已取消 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | recipe_customization_id | int | 10 | 0 | N | Y | 食谱定制ID | |
2 | recipe_name | varchar | 64 | 0 | Y | N | 食谱名称 | |
3 | recipe_images | varchar | 255 | 0 | Y | N | 食谱图片 | |
4 | recipe_types | varchar | 64 | 0 | Y | N | 食谱类型 | |
5 | heat_specification | varchar | 64 | 0 | Y | N | 热量规格 | |
6 | recipe_materials | text | 65535 | 0 | Y | N | 食谱材料 | |
7 | customized_date | date | 10 | 0 | Y | N | 定制日期 | |
8 | customized_users | int | 10 | 0 | Y | N | 0 | 定制用户 |
9 | user_name | varchar | 64 | 0 | Y | N | 用户姓名 | |
10 | customized_content | text | 65535 | 0 | Y | N | 定制内容 | |
11 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
12 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | recipe_types_id | int | 10 | 0 | N | Y | 食谱类型ID | |
2 | recipe_types | varchar | 64 | 0 | Y | N | 食谱类型 | |
3 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
4 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | registered_users_id | int | 10 | 0 | N | Y | 注册用户ID | |
2 | user_name | varchar | 64 | 0 | Y | N | 用户姓名 | |
3 | contact_phone_number | varchar | 16 | 0 | Y | N | 联系电话 | |
4 | examine_state | varchar | 16 | 0 | N | N | 已通过 | 审核状态 |
5 | user_id | int | 10 | 0 | N | N | 0 | 用户ID |
6 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
7 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | slides_id | int | 10 | 0 | N | Y | 轮播图ID: | |
2 | title | varchar | 64 | 0 | Y | N | 标题: | |
3 | content | varchar | 255 | 0 | Y | N | 内容: | |
4 | url | varchar | 255 | 0 | Y | N | 链接: | |
5 | img | varchar | 255 | 0 | Y | N | 轮播图: | |
6 | hits | int | 10 | 0 | N | N | 0 | 点击量: |
7 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
8 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | upload_id | int | 10 | 0 | N | Y | 上传ID | |
2 | name | varchar | 64 | 0 | Y | N | 文件名 | |
3 | path | varchar | 255 | 0 | Y | N | 访问路径 | |
4 | file | varchar | 255 | 0 | Y | N | 文件路径 | |
5 | display | varchar | 255 | 0 | Y | N | 显示顺序 | |
6 | father_id | int | 10 | 0 | Y | N | 0 | 父级ID |
7 | dir | varchar | 255 | 0 | Y | N | 文件夹 | |
8 | type | varchar | 32 | 0 | Y | N | 文件类型 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | user_id | mediumint | 8 | 0 | N | Y | 用户ID:[0,8388607]用户获取其他与用户相关的数据 | |
2 | state | smallint | 5 | 0 | N | N | 1 | 账户状态:[0,10](1可用|2异常|3已冻结|4已注销) |
3 | user_group | varchar | 32 | 0 | Y | N | 所在用户组:[0,32767]决定用户身份和权限 | |
4 | login_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 上次登录时间: |
5 | phone | varchar | 11 | 0 | Y | N | 手机号码:[0,11]用户的手机号码,用于找回密码时或登录时 | |
6 | phone_state | smallint | 5 | 0 | N | N | 0 | 手机认证:[0,1](0未认证|1审核中|2已认证) |
7 | username | varchar | 16 | 0 | N | N | 用户名:[0,16]用户登录时所用的账户名称 | |
8 | nickname | varchar | 16 | 0 | Y | N | 昵称:[0,16] | |
9 | password | varchar | 64 | 0 | N | N | 密码:[0,32]用户登录所需的密码,由6-16位数字或英文组成 | |
10 | | varchar | 64 | 0 | Y | N | 邮箱:[0,64]用户的邮箱,用于找回密码时或登录时 | |
11 | email_state | smallint | 5 | 0 | N | N | 0 | 邮箱认证:[0,1](0未认证|1审核中|2已认证) |
12 | avatar | varchar | 255 | 0 | Y | N | 头像地址:[0,255] | |
13 | open_id | varchar | 255 | 0 | Y | N | 针对获取用户信息字段 | |
14 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
15 | vip_level | varchar | 255 | 0 | Y | N | 会员等级 | |
16 | vip_discount | double | 11 | 2 | Y | N | 0.00 | 会员折扣 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | group_id | mediumint | 8 | 0 | N | Y | 用户组ID:[0,8388607] | |
2 | display | smallint | 5 | 0 | N | N | 100 | 显示顺序:[0,1000] |
3 | name | varchar | 16 | 0 | N | N | 名称:[0,16] | |
4 | description | varchar | 255 | 0 | Y | N | 描述:[0,255]描述该用户组的特点或权限范围 | |
5 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
6 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
7 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
8 | register | smallint | 5 | 0 | Y | N | 0 | 注册位置: |
9 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
10 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
4 基于微信小程序的健康管理系统实现
基于微信小程序的健康管理系统划分了微信小程序用户端和web后台管理员端,微信端实现登录注册、首页,健康食谱,BMI记录,饮食记录,运动记录,健康论坛,健康资讯,我的(基本信息,收藏,统计图)等功能,web端是为后台管理员提供系统用户管理、健康食谱管理、出行分类管理、健康资讯管理、系统管理、通知公告管理、资源管理(新闻资讯、资讯分类)、交流管理(健康论坛、论坛分类)的平台。
4.1 前台微信端
4.1.1 用户注册界面
不是基于微信小程序的健康管理系统的用户可以通过微信小程序在线进行注册,填写上自己的账号、密码、重复密码、昵称、邮箱登信息后点击“提交”按钮后将会验证是否有非空数据,再验证密码和重复密码是否一样,最后验证是否账号重复,都验证没问题后即可注册成功。注册实现了用户注册和发布者注册两部分,其用户注册界面展示如下图4-1所示。
图4-1用户注册界面图
4.1.2 用户登录界面
微信小程序上注册后的用户可以通过自己的用户名和密码进行登录,在用户填写好自己的用户名和密码信息并点击“登录”按钮后,将会先验证是否有非空数据,再验证填写的用户信息和数据库中保存的是否一致,一致后将会登录成功,登录成功后将会在左上角上显示用户信息;否则将会提示相应错误信息,用户登录界面如下图4-2所示。
图4-2用户登录界面图
输入有效的用户名和密码信息,点击“登录”按钮,自动跳转到“首页”页面,首页界面如下图4-3所示。
图4-3首页界面图
4.1.3 健康食谱界面
点击“健康食谱”,注册用户可以根据用户的身体状况、营养需求和口味偏好,系统推荐合适的食谱,帮助用户制定科学的饮食计划等。界面如下图4-4所示。
图4-4健康食谱详情界面图
4.1.4 健康资讯界面
用户点击“健康资讯”,用户可以通过阅读资讯,提升健康意识,掌握更多健康知识。如下图4-5所示。
图4-5健康资讯界面图
4.1.5 健康论坛界面
用户点击“健康论坛”,用户可以在论坛中发表健康心得、提问或回答他人问题,与其他用户交流健康经验。界面如下图4-6所示。
图4-6健康论坛界面图
4.2后台管理员端
4.2.1 系统用户界面
管理员点击“系统用户”这一菜单会显示管理员、注册用户这两个子菜单,管理员可以对这两个角色的信息进行增删改查操作。界面如下图4-7所示。
图4-7注册用户管理界面图
4.2.2健康食谱管理界面
管理员点击后台左边的“健康食谱管理”菜单后查看、编辑、删除已发布的健康食谱。健康食谱管理界面如下图4-8所示。
图4-8健康食谱列表界面图
4.2.3系统管理界面
管理员点击“系统管理”这一菜单会显示轮播图这一个子菜单,管理员可以对前台展示的轮播图进行设置,界面如下图所示。
4.2.4通知公告管理界面
点击“通知公告管理”这个菜单,可以查看到系统中所有添加的通知公告,支持通过标题对通知公告进行查询,添加、删除等操作。通知公告管理界面如下图所示。
图4-10通知公告界面图
4.2.5运动计划管理界面
管理员点击“运动计划管理”审核和发布运动计划,确保计划的科学性和有效性。界面如下图所示。
5 基于微信小程序的健康管理系统测试
基于微信小程序的健康管理系统测试是为了检验软件是否达到设计要求,是否存在错误,通过测试的方法来检查基于微信小程序的健康管理系统,以便发现基于微信小程序的健康管理系统中的错误。测试工作是保证基于微信小程序的健康管理系统质量的关键。
微信端上用户查看新闻资讯功能测试:
表5-1微信端上用户查看新闻资讯功能测试用例表
测试名称 | 测试功能 | 操作 | 操作过程 | 预期结果 | 测试结果 |
查看新闻资讯功能模块测试 | 新闻资讯信息正常的显示 | 浏览新闻资讯详情信息 | 在小程序端上选择一个新闻资讯信息将会进入该新闻资讯的详情界面,同时可以评论、收藏、点赞。 | 进入该新闻资讯的详情信息界面 | 正确 |
微信端上评论功能测试:
表5-2微信端上评论功能测试用例表
测试名称 | 测试功能 | 操作 | 操作过程 | 预期结果 | 测试结果 |
评论功能模块测试 | 评论信息正常的显示 | 浏览健康食谱 | 点击健康食谱底部“评论”按钮后点击填写评论内容点击提交即可。 | 评论内容提交成功 | 正确 |
web后台端上管理员发布新闻资讯功能测试:
表5-3web后台端上管理员发布新闻资讯功能测试用例表
测试名称 | 测试功能 | 操作 | 操作过程 | 预期结果 | 测试结果 |
管理员发布新闻资讯功能测试 | 添加新闻资讯的情况 | 输入新新闻资讯信息的基本信息 | 后台选择“资源管理”菜单后,点击“新闻资讯”,点击添加,填写新新闻资讯信息后点击“提交”按钮 | 新新闻资讯发布成功 | 正确 |
5.2测试结果
通过编写了基于微信小程序的健康管理系统的测试用例,已经检测完毕了5.1章节中的3大模块,它为基于微信小程序的健康管理系统系统的后期推广运营提供了强力的技术支撑。
本次基于微信小程序的健康管理系统的设计与实现,功能方面,通过功能模块图区分该程序的用户端与管理端各自的功能权限;数据库方面,数据库使用口碑较好的mysql进行数据的存储,开源的mysql等技术的使用,相对来说体积较小,服务稳定,减少系统开发成本费用,通过数据库表的E-R实体关系图建立了表单与表单之间的连接,区分不同的表单之间的关系,更好的完善数据库的内容;测试方面,通过测试用例检查基于微信小程序的健康管理系统的设计缺陷和程序存在的错误,在系统测试阶段的过程中,出现了一些问题,例如,注册信息,没有规范用户在注册页面填写信息时输入两次密码,而导致后期登录错误,最后通过多次修改程序和测试解决了问题。最终经过不断的检测、修改,实现项目的稳定,达到了预期的设计效果。
系统整体的功能到达预期的效果,但页面的美化方面还是存在一些不足,例如:小程序中的图标过于简洁;wxss页面的渲染布局方面不够完善,人们在使用软件过程中,对某些功能不易找寻,针对此次项目产生的问题,日后将不断改进,使该项目更加完善。
[1]陈鸿胜,宛楠,袁雨豪.糖尿病患者健康管理系统的设计与实现[J].福建电脑,2024,40(02):105-108.DOI:10.16707/j.cnki.fjpc.2024.02.022.
[2]Khan S ,Yairi T ,Tsutsumi S , et al.A review of physics-based learning for system health management[J].Annual Reviews in Control,2024,57100932-.
[3]梁煜琪,欧文辉.基于大数据健康管理系统的研究[J].电脑编程技巧与维护,2023,(11):113-116.DOI:10.16184/j.cnki.comprg.2023.11.008.
[4]高方欣.基于大数据的电铲健康管理系统设计分析[J].中国设备工程,2023,(21):103-105.
[5]Preethichandra G M D ,Suntharavadivel G T ,Kalutara P , et al.Influence of Smart Sensors on Structural Health Monitoring Systems and Future Asset Management Practices[J].Sensors,2023,23(19):
[6]徐小红.大数据分析在智能人体健康管理系统中的应用[J].冰雪体育创新研究,2023,(18):171-173.
[7]王晓丽,俞博,姜皓,等.大型区域智能随访管理系统的探索与实践[J].中国数字医学,2023,18(09):29-33.
[8]朱奕臣,薛浩磊,王红洋,等.基于用户协同过滤算法的智慧健康管理系统设计与实现[J].无线互联科技,2023,20(16):34-36.
[9]朱彦.高龄者智慧健康管理服务系统设计研究[J].设计,2023,36(13):62-65.DOI:10.20055/j.cnki.1003-0069.000884.
[10]何磊.面向社区的脑卒中健康管理服务系统APP设计研究[D].青岛大学,2023.DOI:10.27262/d.cnki.gqdau.2023.000266.
[11]He L ,Cheng W ,Bo S , et al.Adaptive robustness evaluation for complex system prognostics and health management software platform[J].The Journal of Systems Software,2023,204
[12]余泓,周强.基于微信小程序设计和实现疫情社区健康管理系统[J].滁州学院学报,2023,25(02):18-22.
[13]王海强.多参数检测及健康管理系统的设计与实现[D].长春理工大学,2023.DOI:10.26977/d.cnki.gccgc.2023.000112.
[14]崔乔.基于Android的个人健康管理系统的客户端设计开发[J].黑龙江科学,2023,14(04):90-92.
[15]王春慧.SEI员工健康信息管理系统的设计及开发[J].石油化工设计,2023,40(01):37-40+5-6.
[16]付国华,裴梓彤,刘凯,等.儿童生长发育健康管理系统的设计与应用[J].中国卫生信息管理杂志,2022,19(05):718-723.
[17]沈欢,朱剑锋,杨波.“互联网+”儿童青少年视觉健康管理系统的设计与应用[J].中国数字医学,2022,17(10):88-92.
[18]王新康,倪枫,刘姜,等.基于扩展BPMN的“家园互动”式儿童健康管理系统架构[J].智能计算机与应用,2022,12(10):189-199+202.
[19]宋勇燕.基于微信小程序的云看护健康管理系统的设计与实现[D].北京邮电大学,2020.DOI:10.26969/d.cnki.gbydu.2020.001000.
[20]张学敏.基于微信小程序的体质健康管理系统设计与实现[J].电脑知识与技术,2020,15(22):103-106.DOI:10.14004/j.cnki.ckt.2020.2709.
至此论文结束,感谢您的阅读。首先,我要感谢我的父母对我的支持与理解,在两年的本科学习生活中,倾其所能的爱护我,使我能够心无旁骛,全心全意的投入到学习中;不断鼓励我,让我能够拥有不断前进的动力。其次还要感谢我的导师,感谢在这段时间给予我有效的建议,以至于我的毕设有了整体的设计思路,尽管我在实习期间很忙,论文撰写总是停停改改,但是导师依然十分负责,时不时的询问我的任务进展情况,跟进我的论文进度。在老师的帮助下,我逐步完成了自己的论文和程序,从导师身上也学习到很多知识,和经验,这些知识和经验令我受益匪浅。
此外,还要感谢我的同学,热心的解答了我在程序上遇到的问题,是他们在我编写程序过程中给了我很多的启发和感想,也帮助了我对于程序的调试和检测,让我受益良多。在这两年的时间里,我学会了许多专业的知识,还有老师们的谆谆教诲和同学们的帮助使我不断进步,能够做得更好;我也会不断给自己充电,不断突破,成为更好的自己。
最后向所有关心我、帮助我的老师及同学们表示衷心的感谢!
免费领取项目源码,请关注❥点赞收藏并私信博主,谢谢~