中药推荐系统的设计与实现-计算机毕业设计源码92825
随着人们对健康的关注度日益提高,中医药作为传统医学的重要组成部分,受到越来越多人的青睐。为了方便用户获得个性化的中药推荐、用药咨询和健康管理服务,本文设计并实现了一个基于Flask框架的中药推荐系统。在实现过程中,通过对用户需求的调研分析,明确了用户角色及其对应功能。该系统基于Python的Flask框架构建后端服务,使用MySQL数据库进行数据存储。前端部分使用HTML、CSS与PythonSc
随着人们对健康的关注度日益提高,中医药作为传统医学的重要组成部分,受到越来越多人的青睐。为了方便用户获得个性化的中药推荐、用药咨询和健康管理服务,本文设计并实现了一个基于Flask框架的中药推荐系统。在实现过程中,通过对用户需求的调研分析,明确了用户角色及其对应功能。该系统基于Python的Flask框架构建后端服务,使用MySQL数据库进行数据存储。前端部分使用HTML、CSS与PythonScript开发,确保用户界面简洁友好,提升用户体验。采用了敏捷开发方法,通过多轮迭代逐步完善系统功能,主要面向普通用户、医师用户和管理员等对象,实现了包括注册登录、健康病例管理、中药配方管理、医师信息管理、在线咨询、体质测试、系统管理、网站公告管理及资源管理等核心功能。经过测试,系统运行稳定,能够有效支持用户之间的交互和指导用户合理用药,提升中药推荐的准确性和用户满意度,为用户提供更好的中药指导和咨询服务,避免患者用药错延误治疗或伤害身体。研究表明,该系统不仅提高了中药推荐的智能化水平,也助力了中医药的普及与发展,具有重要的实际应用价值和推广前景。
关键词:中药推荐系统;Flask;Python;中药信息;个性化推荐
With the increasing attention to health, traditional Chinese medicine, as an important component of traditional medicine, is favored by more and more people. In order to facilitate users to obtain personalized Chinese medicine recommendations, medication consultations, and health management services, this article designs and implements a Chinese medicine recommendation system based on the Flask framework. During the implementation process, user roles and their corresponding functions were clarified through research and analysis of user needs. The system is built on the Flask framework of Python to provide backend services and uses MySQL database for data storage. The front-end is developed using HTML, CSS, and PythonScript to ensure a clean and user-friendly interface and enhance the user experience. Adopting agile development methods and gradually improving system functions through multiple iterations, it mainly targets ordinary users, physician users, and administrators, and realizes core functions including registration and login, health case management, traditional Chinese medicine formula management, physician information management, online consultation, physical fitness testing, system management, website announcement management, and resource management. After testing, the system runs stably and can effectively support user interaction and guide users to use drugs reasonably, improve the accuracy of traditional Chinese medicine recommendations and user satisfaction, provide better traditional Chinese medicine guidance and consulting services for users, and avoid patients making medication mistakes, delaying treatment or harming the body. Research has shown that this system not only improves the intelligence level of traditional Chinese medicine recommendation, but also contributes to the popularization and development of traditional Chinese medicine, with important practical application value and promotion prospects.
Keywords:Traditional Chinese Medicine Recommendation System; Flask; Python; Traditional Chinese Medicine Information; Personalized recommendations
第1章
绪 论
1.1研究背景及意义
1.1.1研究背景
中医药作为中国传统文化的重要组成部分,拥有几千年的发展历史,其独特的理论体系和丰富的治疗经验在现代医学中仍然具有重要的价值。近年来,随着人们健康意识的提升和对传统文化的关注,中医药的应用逐渐走向国际化,中药的应用日益广泛,越来越多人开始寻求中医药的健康管理方式。然而,尽管中药在临床应用中效果显著,但因中药材种类繁多、功效各异,用户往往缺乏相应的专业指导,无法根据自身的健康状况合理选择中药。因此,如何高效、准确地为用户提供中药推荐,已成为解决这一问题的关键。信息技术的迅速发展为中医药现代化提供了契机,还可以通过构建中药推荐系统,将用户的健康状况与中药配方数据库相结合,为用户提供个性化的中药治疗方案。因此,基于信息技术的中药推荐系统应运而生,以期通过科学的手段为用户提供个性化的中药推荐,从而提升中医药的使用效果,避免用户用药错误导致延误治疗时机或对身体造成不可逆的伤害。
1.1.2研究意义
基于Flask框架设计与实现一套高效智能的中药推荐系统具有重要的理论和实际意义。从理论层面来看,通过构建中药推荐系统,本研究将传统中医理论与现代信息技术相结合,推动中医药信息化的深入发展,为相关学科的研究提供新的视角和方法。同时,基于Flask框架开发的中药推荐系统,不仅体现了Web应用在健康管理领域的潜力,也为相关技术在传统医学中的应用提供了宝贵的实践经验和技术参考。此外,通过对中药配方、体质测试、健康状况等多维度数据进行分析和处理,有助于深化对个体差异及其对中药反应机制的理解,从而丰富和完善中医理论体系。
在实际应用方面,该中药推荐系统的研发也具有多方面的积极实践意义和应用前景。对于普通用户而言,系统提供了一个便捷的渠道来获取个性化的健康管理建议和中医服务,特别是针对中药的选择和使用提供了科学指导和咨询,减少了自行用药存在的误用或滥用的风险。同时,借助系统还能够促进公众对中医药文化的了解和认识,提高用户对中医药的认知和重视,增强自我保健意识。对于医师来说,系统有效地提升了中医信息管理的效率和质量,使得体质测试、病例记录、咨询管理和中药配方管理等日常工作更加规范和高效,有利于提高诊疗水平和服务质量。而对于整个中医药行业而言,这样一个综合性的中药平台不仅有助于标准化和规范化中药的应用流程,也便于中医药知识的传播和推广,促进中医药事业的可持续发展。此外,系统还具备良好的扩展性和维护性,能够随着中医药理论的发展和技术的进步不断更新和完善,进一步推动中医药现代化和信息化进程。总之,该研究的成功实现无论是在提升中医药服务水平,还是促进传统中医药与现代科技融合方面都具有重要意义。
1.2国内外研究现状
1.2.1国内研究现状
随着科技的进步和中医药发展的需求,国内研究者开始关注中药推荐系统的构建。国内研究积极推动中药相关数据的标准化,包括中药材的性状、功效、用法等信息的整理,以便于后续系统的构建。例如,国家药典等机构通过对中药材的标准化研究,为中药推荐系统提供了可靠的数据基础。同时,国内各大科研团队和企业开发了基于互联网的个性化健康管理平台,这些平台不仅包括西医的健康管理模块,也开始融入中医理论,如体质辨识、中药推荐等功能,并推出了在线中医诊疗服务,用户可以通过上传症状描述获得个性化的中药处方建议。随着大数据和人工智能技术的发展,国内学者积极探索如何利用这些先进技术优化中药推荐系统的准确性和效率。通过分析大量的临床数据和文献资料,构建中药知识图谱,并结合机器学习算法实现精准的中药配方推荐。此外,国内研究还尝试结合中医诊断与健康数据,以提升中医药学诊疗和服务水平。如通过将针灸、推拿等中医诊疗手段,与用户的健康数据相结合,通过分析用户的健康状况,为用户提供全面的中药和非药物治疗方案。近年来,随着互联网的普及,各种在线中医平台和移动应用相继推出,提供便捷的中药查询、健康管理等功能,并逐渐加入中药推荐的功能,为用户提供更为便捷的健康管理工具。
1.2.2国外研究现状
相比之下,国外在中药推荐系统方面的研究起步较晚,但随着全球范围内对传统医学兴趣的增长,这一领域的研究也逐渐增多。在国外,特别是西方国家,中药作为替代医学的一部分,受到部分人群的喜爱。因此,国外研究更关注于如何根据不同的文化背景和个人体质特点进行中药推荐,以适应非华语使用者的需求。这些研究通常结合了东方的传统医学理念与西方的循证医学方法,旨在提供更科学合理的中药使用指南。国外的IT公司和技术团队也在探索如何运用最新的科技成果,如云计算、区块链等等新兴技术,来构建更加安全高效的中药管理平台。比如,利用区块链技术确保药品供应链的透明度和安全性,或通过云服务平台提高中药信息管理的便捷性。同时国外的健康管理平台逐渐将中医药纳入其服务体系,例如“HealthKit”和“Headspace”等健康管理应用,通过用户的健康数据分析,结合中医药的原则提供全面的健康建议和中药推荐。这一尝试使得中药的应用在国际舞台上得到了一定认可。鉴于中药在全球范围内的影响力日益增强,国际间的合作与交流变得更加频繁。不同国家的研究机构和医疗机构之间开展了多种形式的合作项目,共同探讨中药的有效成分、作用机制及其合理应用等问题,这为中药推荐系统的国际化发展奠定了基础。
综上所述,国内外在中药推荐系统方面的研究各有侧重,国内更多地聚焦于利用本土丰富的中医药资源和技术手段推动系统开发,而国外则倾向于从跨文化和技术创新的角度出发,探索中药学的新模式。
1.3主要研究内容
本研究主要围绕如何引入信息化技术研发一套高效智能的中药推荐系统展开。在设计与实现中药推荐系统时,通过调研与访谈,收集用户和医师及管理员的需求,以明确系统功能模块,设计出符合用户需求的系统架构和界面。该系统后端采用了Python作为编程语言,并利用了Flask框架,使得复杂的业务逻辑和数据操作得以高效完成。与此同时,系统的数据存储和管理通过MySQL数据库实现。结合PythonScript等技术作为前端框架,具有响应式数据绑定和组件化的特点,能够有效地提升用户体验和开发效率。在开发工具的选取上,使用了PyCharm,它的强大功能和易用性使得编程工作更为高效;而Navicat作为数据库管理工具,使得数据库操作更为方便和快捷。这样的技术选择,确保了管理系统的开发流程既高效又稳定。本系统主要面对普通用户、医师用户、管理员等对象,实现了包括注册登录、健康病例管理、中药配方管理、体质类型管理、功效类型管理、医师信息管理、咨询记录管理、系统管理、网站公告管理、资源管理(健康资讯、资讯分类、体质测试)等多个关键功能模块,并开发了个性化的中药推荐算法,基于用户的体质类型和健康状况提供合适的中药推荐。最后通过功能测试和用户反馈,进行系统性能和用户体验的优化,确保系统的稳定性和可用性。本项目的成功实现不仅解决了当前中药推荐系统稀缺的问题,还为用户提供了一个便捷、高效的综合性中医药学平台,推动了中医药知识的普及和应用,促进了传统医学与现代科技的深度融合。
第2章
相关技术介绍
2.1Flask框架介绍
Flask是一个使用Python编写的轻量级Web应用框架。它被设计成易于扩展且非常灵活,允许开发者根据需要添加额外的功能[1]。Flask的核心非常简单,但通过其众多的扩展程序可以实现数据库处理、表单验证、上传处理等复杂功能。对于想要快速构建原型或小型Web应用的人来说,Flask提供了一个很好的起点[2]。在本中药推荐系统中,Flask主要用于实现后端服务,包括数据存储、交互界面、用户认证和管理等功能。
2.2Python语言
Python是一种广泛应用的高级编程语言,因其简洁的语法和强大的功能库,成为 Web 开发、数据分析、人工智能等领域的首选语言[3]。Python的开源特性和跨平台能力也使得它能够在多种操作系统上运行。Python支持面向对象编程、函数式编程等多种编程范式,因此适合开发灵活、可扩展的系统。Python是本系统的主要开发语言,具有简洁的语法和强大的库支持,能够高效地进行中药推荐系统的开发[4]。同时,Python提供了丰富的第三方库,如数据处理、人工智能、机器学习等,这些都能为中药推荐系统提供智能化和数据驱动的支持。
2.3MySQL数据库
MySQL是最流行的关系型数据库管理系统之一,它使用结构化查询语言(SQL)进行数据管理[5]。MySQL具有高性能、高可靠性和易于使用的特点,并且作为一个开源软件,具有跨平台支持[6]。在中药推荐系统中,MySQL用于存储各类用户信息、系统数据等相关信息,为系统提供稳定的数据存储解决方案,支持大量并发访问,并实现高效数据录入、查询和更新等操作。
2.4B/S模式
B/S架构是一种基于Web的分布式系统架构,其核心理念是“客户端—浏览器”和“服务器—Web”之间的通信[7]。B/S架构的优点是客户端不需要安装专门的应用程序,只需要一个浏览器即可访问系统,极大提高了系统的普适性和便捷性[8]。在中药推荐系统中,采用 B/S架构能够使系统不依赖特定的客户端,实现跨平台访问,方便用户通过任何设备上的浏览器快速访问和管理系统各类信息。
2.5PyCharm
PyCharm是一款功能强大的Python集成开发环境,提供了许多开发所需的工具和功能,支持Python、Django等Web框架的开发。PyCharm提供了代码补全、调试、单元测试、版本控制、数据库管理等功能,能够有效提高开发者的工作效率。对于开发中药推荐系统,PyCharm是一种非常适合的开发工具,它能够帮助开发者实现高效的编码和调试工作。
第3章
系统分析
3.1可行性分析
3.1.1技术可行性
基于Flask框架开发中药推荐系统具有显著优势。Flask作为一个轻量级的Web应用框架,易于学习和使用,能够快速构建出功能丰富的后端服务。结合MySQL数据库的高效存储与检索能力,以及Python语言的广泛应用与成熟生态,系统能够实现复杂的数据处理与业务逻辑[9]。此外,现代浏览器的支持使得B/S架构的应用程序可以无缝地运行在各种设备上,确保了用户访问的便捷性,技术实现路径清晰可行。
3.1.2经济可行性
该系统的实现成本相对较低且性价比高。开发系统所选用的Python、Flask、MySQL等技术栈均为开源软件,无需支付高额的许可费用,大大降低了初始开发成本。同时由于采用了B/S架构,用户无需安装额外的客户端软件,可以减少部署和维护成本,便于长期运营与迭代升级。后期系统上线后,可通过广告、增值服务等方式实现盈利,以支撑系统运维成本。
3.1.3操作可行性
系统界面简洁友好,操作流程简单,用户无需复杂培训即可上手。系统功能模块化设计操作简便,便于用户快速完成操作。且系统支持多角色协同操作,管理员和用户登录系统后均可根据权限进行相应操作,有效提升管理效率和用户体验。
3.2系统功能需求
本中药推荐系统根据使用者划分,主要包含普通用户、医师用户和管理员等三大角色,每个角色对应的主要功能说明如下所示:
3.2.1普通用户主要功能
- 注册登录:提供注册和登录系统的功能,普通用户可以通过注册拥有系统账户,注册信息经管理员审核通过后才可登录系统前台。
- 首页:提供系统搜索功能和系统功能导航栏,展示平台的轮播图、最新动态、热门信息、推荐信息(使用标签推荐算法,根据用户的体质类型优先推荐中药配方)等内容。
- 体质测试:提供体质测试功能,普通用户可以搜索选择试题进行答题,完成测试提交后可查看分数和医师评语,确认自己的体质。
- 网站公告:提供系统相关的网站公告信息,保证普通用户及时了解平台动态。
- 健康资讯:提供健康资讯的相关新闻、文章展示和热门资讯推荐,让普通用户快速获取最新资讯,支持点赞、收藏、评论健康资讯。
- 健康病例:提供健康病例记录功能,普通用户可以输入记录自己的健康病例数据,提交的健康病例可在自己的个人中心进行管理。
- 中药配方:提供中药配方展示,支持关键字、排序搜索,普通用户可以浏览中药配方的详细内容,并可点赞、收藏和评论中药配方。
- 医师信息:提供医师信息展示,支持关键字、排序搜索,普通用户可以浏览中药配方,并可点赞、收藏和评论医师信息,实现评分、在线咨询功能。
- 我的账户:提供管理个人资料功能,普通用户可修改自己的账户信息和密码信息。
- 个人中心:提供个人首页、健康病例、咨询记录、收藏、评论管理等子菜单功能链接,普通用户可根据需求对其进行管理。具体包括,普通用户可增改删查自己的健康病例;可查阅咨询回复情况;可查看和删除已收藏的系统信息;可跟踪和查看已发表的评论内容。
3.2.2医师用户主要功能
- 注册登录:医师用户可直接使用账号密码登录系统后台,实现权限内管理操作,支持更新个人资料和修改密码。
- 后台首页:医师用户登录后台的起始界面,该界面主要展示系统重要信息概览。
- 系统用户:医师用户可搜索和浏览普通用户信息,了解普通用户基本信息。
- 健康病例管理:医师用户可搜索和浏览普通用户提交的健康病例信息,并根据健康病例情况,更新和给出医生建议内容。
- 中药配方管理:医师用户可管理自己的中药配方信息的发布、下架、更新等操作,提供搜索功能,支持查看和管控其评论内容。
- 体质类型管理:医师用户可管理体质类型信息,包括新增、更新和查询体质类型。
- 功效类型管理:医师用户可管理功效类型信息,包括新增、更新和查询功效类型。
- 医师信息管理:医师用户可管理自己的医师信息的发布、删除、更新等操作,提供搜索功能,支持查看和管控其评论内容。
- 咨询记录管理:医师用户可搜索和浏览提交自己的咨询记录信息,负责审核回复咨询记录。
- 资源管理:医师用户可管理自己的健康资讯、资讯分类以及体质测试等信息,支持发布健康资讯,对其进行分类管理;支持批量导入试题到题库,更新试题库,创建试卷(点击生成由系统自动进行组卷),并发布体质测试,负责对试卷的主观题进行评分,并编辑评语内容。
3.2.3管理员主要功能
- 登录:管理员可直接使用账号密码登录系统后台,实现权限内管理操作,支持更新个人资料和修改密码。
- 后台首页:管理员登录后台的起始界面,该界面主要展示系统重要信息概览。
- 系统用户:管理员可管理包括普通用户、医师用户、管理员等所有系统用户信息,支持用户权限管理和角色设置,可增改删查和审核封禁系统用户信息。
- 健康病例管理:管理员可管理所有健康病例信息,包括新增、编辑、删除和查询健康病例。
- 中药配方管理:管理员可管理所有中药配方信息的发布、下架、更新等操作,提供搜索功能,支持查看和管控其评论内容。
- 体质类型管理:管理员可管理所有体质类型信息,包括新增、编辑、删除和查询体质类型。
- 功效类型管理:管理员可管理所有功效类型信息,包括新增、编辑、删除和查询功效类型。
- 医师信息管理:管理员可管理所有医师信息的发布、删除、更新等操作,提供搜索功能,支持查看和管控其评论内容。
- 咨询记录管理:管理员可管理所有咨询记录信息,包括查询、删除咨询记录,提供审核操作,支持更新审核状态及审核回复。
- 系统管理:管理员可管理系统的轮播图信息,包括新增、编辑、删除轮播图,提供搜索功能,支持图片附带链接。
- 网站公告管理:管理员可管理平台发布的网站公告信息,包括新增、编辑、删除网站公告,提供搜索功能。
- 资源管理:管理员可管理所有健康资讯、资讯分类以及体质测试的新增、编辑、删除等操作,提供搜索功能,支持对健康资讯的评论管控和查看;体质测试还提供题库、答题、评分等操作。
3.3非功能性需求分析
在基于Flask的中药推荐系统的设计中,非功能性需求分析是也是很重要的。它主要关注系统除了基本功能外的其他特性,如性能、安全性、易用性、可维护性等,这些特性对于确保系统的稳定运行和用户满意度至关重要。
性能:系统需要能够处理高并发请求,确保在多个用户同时操作时仍能保持稳定运行。
安全性:系统必须采取严格的措施来保护敏感数据,如用户信息、病例数据等,防止数据泄露和非法访问。
易用性:系界面友好直观,操作流程简化,提升用户体验。
可维护性:代码结构清晰,文档完备,便于后续开发与问题排查。
3.4系统用户用例分析
3.4.1普通用户用例图
在中药推荐系统中普通用户包含注册登录、首页、体质测试、网站公告、健康资讯、健康病例、中药配方、医师信息、我的账户、个人中心等功能。普通用户用例图如下所示。

图3.1 普通用户用例图
3.4.2医师用户用例图
中药推荐系统中医师用户涵盖了注册登录、后台首页、系统用户、健康病例管理、中药配方管理、体质类型管理、功效类型管理、医师信息管理、咨询记录管理、资源管理等功能。医师用户用例图如下所示。

图3.2 医师用户用例图
3.4.3管理员用例图
中药推荐系统中管理员则集成了登录、后台首页、系统用户、健康病例管理、中药配方管理、体质类型管理、功效类型管理、医师信息管理、咨询记录管理、系统管理、网站公告管理、资源管理等功能。管理员用例图如下所示。

图3.3 管理员用例图
3.5系统业务流程分析
3.5.1系统操作流程图
用户打开浏览器,输入系统的网址,访问应用程序的系统界面。用户在首页可选择进行注册或登录。如果用户已注册,可直接进入登录页面;如果未注册,则可选择注册。登录后,用户可进入系统功能界面,根据提示可实现各项操作。系统操作流程图如下图所示。

图3.4 系统操作流程图
3.5.2中药配方发布流程图
管理员和医师用户登录系统后台后,可进入中药配方管理界面,发布新的中药配方,点击“中药配方添加”页面会自动跳转到中药配方添加界面,可输入中药配方,点击提交后,系统会验证信息是否合规,验证通过后,系统界面将会显示新的中药配方。中药配方发布流程图如下图所示。中药配方发布流程图如下图所示。

图3.5 中药配方发布流程图
3.5.3医师信息添加流程图
管理员和医师用户登录系统后台后,可进入医师信息管理界面,发布新的医师信息,点击“医师信息添加”页面会自动跳转到医师信息添加界面,可输入医师信息,点击提交后,系统会验证信息是否合规,验证通过后,系统界面将会显示新的医师信息。医师信息发布流程图如下图所示。医师信息添加流程图如下图所示。

图3.6 医师信息添加流程图
3.5.4在线咨询流程图
用户确认登录成功以后,可进入医师信息展示界面,进行申请岗位操作,点击“在线咨询”按钮,页面会自动跳转到在线咨询界面,可输入并提交咨询信息,提交的申请信息由医师用户负责审核回复。在线流程图如下图所示。

图3.7 在线咨询流程图
第4章
系统设计
4.1系统设计原则
在设计基于Flask的中药推荐系统时,主要遵循以下系统设计原则:
单一职责原则(SRP):每个模块或组件应只负责单一的功能,减少模块之间的耦合,方便后期的维护和扩展。
分层架构:系统采用分层架构设计,将表现层、业务逻辑层和数据访问层分开,实现功能模块的分离与复用。
可扩展性:设计时考虑未来可能的功能扩展,确保系统结构能够灵活应对需求的变化。
用户体验优先:系统设计考虑用户的使用习惯与操作便利性,通过简洁明了的界面和流畅的交互,提高用户体验。
4.2功能模块设计
整个中药推荐系统是由多个功能模块组合而成的,根据用户需求分析,本系统主要可以划分为普通用户模块、医师用户模块和管理员模块等三大部分。各模块又可细分为不同的子功能设计,实现多角色协作,负责不同的职能,每个角色对应的功能模块如图所示。

图4.1 系统功能结构图
4.3数据库设计
4.3.1概念设计
借助系统总体E-R图可以使其他用户快速轻松地了解系统的功能以及他们之间的关系。在此罗列出来一些主要的实体属性。
普通用户实体包含了普通用户ID、用户姓名、用户电话、用户性别、用户体质、审核状态、用户ID、创建时间、更新时间等属性。普通用户实体属性图如下所示。

图4.2 普通用户实体属性图
医生用户实体包含了医师用户ID、医师姓名、医师电话、医师性别、医师执照、擅长领域、资质信息、审核状态、审核回复、用户ID、创建时间、更新时间等属性。医生用户实体属性图如下所示。

图4.3 医生用户实体属性图
健康病例实体包含了健康病例ID、用户账号、用户姓名、用户电话、用户年龄、记录时间、过敏史记录、过往病例、诊断记录、家族病史、健康状况、医师建议、创建时间等属性。健康病例实体属性图如下所示。

图4.4 健康病例实体属性图
中药配方实体包含了中药配方ID、发布账号、配方名称、封面图片、功效类型、针对体质、针对人群、主治病症、药材名称、配伍比例、配方详情、点击数、点赞数、收藏数、评论数、智能推荐、创建时间、更新时间等属性。中药配方实体属性图如下所示。

图4.5 中药配方实体属性图
医师信息实体包含了医师信息ID、医师账户、医师姓名、封面图片、师承流派、擅长领域、医师简介、点击数、点赞数、收藏数、评论数、在线咨询限制次数、创建时间、更新时间等属性。医师信息实体属性图如下所示。

图4.6 医师信息实体属性图
咨询记录实体包含了咨询记录ID、用户账号、用户姓名、用户电话、医师账户、医师姓名、咨询时间、咨询内容、医师回复、审核状态、审核回复、创建时间、更新时间、来源表、来源ID、来源用户等属性。咨询记录实体属性图如下所示。

图4.7 咨询记录实体属性图
根据中药推荐系统各个实体和属性的分析结果,本中药推荐系统总体E-R实体关系图如下所示。

图4.8 系统总体ER图
4.3.2逻辑设计
通过上一小节中药推荐系统中总E-R关系图上得出一共需要创建很多个数据表。在此主要罗列几个主要的数据库表结构设计。下面介绍了一些根据各类别主要数据库表的设计结构以及基本功能建立数据库表:
普通用户表主要储存普通用户的基本信息,包含普通用户ID、用户姓名、用户电话、用户性别、用户体质、审核状态、用户ID、创建时间、更新时间等内容。普通用户表如下所示。
表4.1 ordinary_user(普通用户)
|
编号 |
字段名 |
类型 |
长度 |
是否非空 |
是否主键 |
注释 |
|
1 |
ordinary_user_id |
int |
是 |
是 |
普通用户ID |
|
|
2 |
user_name |
varchar |
64 |
否 |
否 |
用户姓名 |
|
3 |
user_phone |
varchar |
16 |
否 |
否 |
用户电话 |
|
4 |
user_gender |
varchar |
64 |
否 |
否 |
用户性别 |
|
5 |
user_physique |
varchar |
64 |
否 |
否 |
用户体质 |
|
6 |
examine_state |
varchar |
16 |
是 |
否 |
审核状态 |
|
7 |
user_id |
int |
是 |
否 |
用户ID |
|
|
8 |
create_time |
datetime |
是 |
否 |
创建时间 |
|
|
9 |
update_time |
timestamp |
是 |
否 |
更新时间 |
医师用户表主要储存医师用户的基本信息,包含医师用户ID、医师姓名、医师电话、医师性别、医师执照、擅长领域、资质信息、审核状态、审核回复、用户ID、创建时间、更新时间等内容。医师用户表如下所示。
表4.2 physician_user(医师用户)
|
编号 |
字段名 |
类型 |
长度 |
是否非空 |
是否主键 |
注释 |
|
1 |
physician_user_id |
int |
是 |
是 |
医师用户ID |
|
|
2 |
doctors_name |
varchar |
64 |
否 |
否 |
医师姓名 |
|
3 |
doctors_phone |
varchar |
16 |
否 |
否 |
医师电话 |
|
4 |
physician_gender |
varchar |
64 |
否 |
否 |
医师性别 |
|
5 |
medical_licence |
varchar |
255 |
否 |
否 |
医师执照 |
|
6 |
areas_of_expertise |
varchar |
64 |
否 |
否 |
擅长领域 |
|
7 |
qualification_information |
text |
65535 |
否 |
否 |
资质信息 |
|
8 |
examine_state |
varchar |
16 |
是 |
否 |
审核状态 |
|
9 |
examine_reply |
varchar |
16 |
否 |
否 |
审核回复 |
|
10 |
user_id |
int |
是 |
否 |
用户ID |
|
|
11 |
create_time |
datetime |
是 |
否 |
创建时间 |
|
|
12 |
update_time |
timestamp |
是 |
否 |
更新时间 |
健康病例表主要储存健康病例的基本信息,包含健康病例ID、用户账号、用户姓名、用户电话、用户年龄、记录时间、过敏史记录、过往病例、诊断记录、家族病史、健康状况、医师建议、创建时间等内容。健康病例表如下所示。
表4.3 health_cases(健康病例)
|
编号 |
字段名 |
类型 |
长度 |
是否非空 |
是否主键 |
注释 |
|
1 |
health_cases_id |
int |
是 |
是 |
健康病例ID |
|
|
2 |
user_account |
int |
否 |
否 |
用户账号 |
|
|
3 |
user_name |
varchar |
64 |
否 |
否 |
用户姓名 |
|
4 |
user_phone |
varchar |
16 |
否 |
否 |
用户电话 |
|
5 |
user_age |
double |
否 |
否 |
用户年龄 |
|
|
6 |
recording_time |
datetime |
否 |
否 |
记录时间 |
|
|
7 |
allergy_history_record |
text |
65535 |
否 |
否 |
过敏史记录 |
|
8 |
past_cases |
text |
65535 |
否 |
否 |
过往病例 |
|
9 |
diagnostic_record |
text |
65535 |
否 |
否 |
诊断记录 |
|
10 |
family_history |
text |
65535 |
否 |
否 |
家族病史 |
|
11 |
health_status |
text |
65535 |
否 |
否 |
健康状况 |
|
12 |
physicians_advice |
longtext |
4294967295 |
否 |
否 |
医师建议 |
|
13 |
create_time |
datetime |
是 |
否 |
创建时间 |
|
|
14 |
update_time |
timestamp |
是 |
否 |
更新时间 |
中药配方表主要储存中药配方的基本信息,包含中药配方ID、发布账号、配方名称、封面图片、功效类型、针对体质、针对人群、主治病症、药材名称、配伍比例、配方详情、点击数、点赞数、收藏数、评论数、智能推荐、创建时间、更新时间等内容。中药配方表如下所示。
表4.4 chinese_medicine_formula(中药配方)
|
编号 |
字段名 |
类型 |
长度 |
是否非空 |
是否主键 |
注释 |
|
1 |
chinese_medicine_formula_id |
int |
是 |
是 |
中药配方ID |
|
|
2 |
publish_account_number |
int |
否 |
否 |
发布账号 |
|
|
3 |
formula_name |
varchar |
64 |
否 |
否 |
配方名称 |
|
4 |
cover_image |
varchar |
255 |
否 |
否 |
封面图片 |
|
5 |
type_of_efficacy |
varchar |
64 |
否 |
否 |
功效类型 |
|
6 |
for_physique |
varchar |
64 |
否 |
否 |
针对体质 |
|
7 |
for_the_crowd |
varchar |
64 |
否 |
否 |
针对人群 |
|
8 |
attending_disease |
varchar |
64 |
否 |
否 |
主治病症 |
|
9 |
name_of_medicinal_herbs |
text |
65535 |
否 |
否 |
药材名称 |
|
10 |
compatibility_ratio |
text |
65535 |
否 |
否 |
配伍比例 |
|
11 |
formula_details |
longtext |
4294967295 |
否 |
否 |
配方详情 |
|
12 |
hits |
int |
是 |
否 |
点击数 |
|
|
13 |
praise_len |
int |
是 |
否 |
点赞数 |
|
|
14 |
collect_len |
int |
是 |
否 |
收藏数 |
|
|
15 |
comment_len |
int |
是 |
否 |
评论数 |
|
|
16 |
recommend |
int |
是 |
否 |
智能推荐 |
|
|
17 |
create_time |
datetime |
是 |
否 |
创建时间 |
|
|
18 |
update_time |
timestamp |
是 |
否 |
更新时间 |
医师信息表主要储存医师信息的基本信息,包含医师信息ID、医师账户、医师姓名、封面图片、师承流派、擅长领域、医师简介、点击数、点赞数、收藏数、评论数、在线咨询限制次数、创建时间、更新时间等内容。医师信息表如下所示。
表4.5 physician_information(医师信息)
|
编号 |
字段名 |
类型 |
长度 |
是否非空 |
是否主键 |
注释 |
|
1 |
physician_information_id |
int |
是 |
是 |
医师信息ID |
|
|
2 |
physician_account |
int |
否 |
否 |
医师账户 |
|
|
3 |
doctors_name |
varchar |
64 |
否 |
否 |
医师姓名 |
|
4 |
cover_image |
varchar |
255 |
否 |
否 |
封面图片 |
|
5 |
teacher_school |
varchar |
64 |
否 |
否 |
师承流派 |
|
6 |
areas_of_expertise |
varchar |
64 |
否 |
否 |
擅长领域 |
|
7 |
physician_profile |
longtext |
4294967295 |
否 |
否 |
医师简介 |
|
8 |
hits |
int |
是 |
否 |
点击数 |
|
|
9 |
praise_len |
int |
是 |
否 |
点赞数 |
|
|
10 |
collect_len |
int |
是 |
否 |
收藏数 |
|
|
11 |
comment_len |
int |
是 |
否 |
评论数 |
|
|
12 |
consulting_records_limit_times |
int |
是 |
否 |
在线咨询限制次数 |
|
|
13 |
create_time |
datetime |
是 |
否 |
创建时间 |
|
|
14 |
update_time |
timestamp |
是 |
否 |
更新时间 |
咨询记录表主要储存咨询记录的基本信息,包含咨询记录ID、用户账号、用户姓名、用户电话、医师账户、医师姓名、咨询时间、咨询内容、医师回复、审核状态、审核回复、创建时间、更新时间、来源表、来源ID、来源用户等内容。咨询记录表如下所示。
表4.6 consulting_records(咨询记录)
|
编号 |
字段名 |
类型 |
长度 |
是否非空 |
是否主键 |
注释 |
|
1 |
consulting_records_id |
int |
是 |
是 |
咨询记录ID |
|
|
2 |
user_account |
int |
否 |
否 |
用户账号 |
|
|
3 |
user_name |
varchar |
64 |
否 |
否 |
用户姓名 |
|
4 |
user_phone |
varchar |
16 |
否 |
否 |
用户电话 |
|
5 |
physician_account |
int |
否 |
否 |
医师账户 |
|
|
6 |
doctors_name |
varchar |
64 |
否 |
否 |
医师姓名 |
|
7 |
consultation_time |
datetime |
否 |
否 |
咨询时间 |
|
|
8 |
consulting_content |
text |
65535 |
否 |
否 |
咨询内容 |
|
9 |
physician_reply |
text |
65535 |
否 |
否 |
医师回复 |
|
10 |
examine_state |
varchar |
16 |
是 |
否 |
审核状态 |
|
11 |
examine_reply |
varchar |
16 |
否 |
否 |
审核回复 |
|
12 |
create_time |
datetime |
是 |
否 |
创建时间 |
|
|
13 |
update_time |
timestamp |
是 |
否 |
更新时间 |
|
|
14 |
source_table |
varchar |
255 |
否 |
否 |
来源表 |
|
15 |
source_id |
int |
否 |
否 |
来源ID |
|
|
16 |
source_user_id |
int |
否 |
否 |
来源用户 |
试题表主要储存试题的基本信息,包含试题ID、类型、题目、选项、参考答案、总分、排序、所属试卷、创建时间、更新时间等内容。试题表如下所示。
表4.7 exam_question(试题)
|
编号 |
字段名 |
类型 |
长度 |
是否非空 |
是否主键 |
注释 |
|
1 |
exam_question_id |
mediumint |
是 |
是 |
试题ID |
|
|
2 |
type |
varchar |
20 |
否 |
否 |
类型 |
|
3 |
title |
varchar |
255 |
否 |
否 |
题目 |
|
4 |
question_item |
varchar |
500 |
否 |
否 |
选项 |
|
5 |
answer |
varchar |
500 |
否 |
否 |
参考答案 |
|
6 |
score |
double |
否 |
否 |
总分 |
|
|
7 |
question_order |
int |
否 |
否 |
排序 |
|
|
8 |
exam_id |
mediumint |
是 |
是 |
所属试卷 |
|
|
9 |
create_time |
timestamp |
是 |
否 |
创建时间 |
|
|
10 |
update_time |
timestamp |
是 |
否 |
更新时间 |
用户答题表主要储存用户答题的用户答题ID、用户ID、考试id、分数、答案、评分详情、客观题得分、主观题得分、评分状态、提交人、创建时间、更新时间、评语等内容。用户答题表如下所示。
表4.8 user_answer(用户答题)
|
编号 |
字段名 |
类型 |
长度 |
是否非空 |
是否主键 |
注释 |
|
1 |
user_answer_id |
mediumint |
是 |
是 |
用户答题ID |
|
|
2 |
user_id |
mediumint |
是 |
否 |
用户ID |
|
|
3 |
exam_id |
mediumint |
是 |
是 |
考试id |
|
|
4 |
score |
double |
否 |
否 |
分数 |
|
|
5 |
answers |
text |
65535 |
否 |
否 |
答案 |
|
6 |
score_detail |
text |
65535 |
否 |
否 |
评分详情 |
|
7 |
objective_score |
double |
否 |
否 |
客观题得分 |
|
|
8 |
subjective_score |
double |
否 |
否 |
主观题得分 |
|
|
9 |
score_state |
tinyint |
否 |
否 |
评分状态 |
|
|
10 |
nickname |
varchar |
255 |
否 |
否 |
提交人 |
|
11 |
create_time |
timestamp |
是 |
否 |
创建时间 |
|
|
12 |
update_time |
timestamp |
是 |
否 |
更新时间 |
|
|
13 |
comment_desc |
varchar |
255 |
否 |
否 |
评语 |
体质类型表主要储存体质类型的基本信息,包含体质类型ID、体质类型、创建时间、更新时间等内容。体质类型表如下所示。
表4.9 type_of_constitution(体质类型)
|
编号 |
字段名 |
类型 |
长度 |
是否非空 |
是否主键 |
注释 |
|
1 |
type_of_constitution_id |
int |
是 |
是 |
体质类型ID |
|
|
2 |
type_of_constitution |
varchar |
64 |
否 |
否 |
体质类型 |
|
3 |
create_time |
datetime |
是 |
否 |
创建时间 |
|
|
4 |
update_time |
timestamp |
是 |
否 |
更新时间 |
第5章
系统实现
5.1普通用户主要功能实现
5.1.1用户注册模块
普通用户点击注册,进入注册页面,填写好账号、密码、确认密码、昵称、邮箱、身份:普通用户、用户姓名、用户性别、用户电话等字段值,点击下方注册按钮,提示注册成功后,系统将自动跳转回到登录页面。注册界面如下图所示。
图5.1 注册界面
5.1.2用户登录模块
用户点击“登录”按钮,输入用户名、密码、验证码登录系统,登录时前端会自动校验用户名与密码以及该用户是否审核通过,审核通过的用户输入正确登录成功,输入错误会有提示信息。登录界面如下图所示。
图5.2 登录界面
5.1.3首页模块
首页界面主要提供系统搜索功能和系统功能导航栏,展示平台的轮播图、最新动态、热门信息、推荐信息(使用标签推荐算法,根据用户的体质类型优先推荐中药配方)等内容。界面如下图所示。
图5.3 首页界面
5.1.4体质测试模块
体质测试模块主要为用户提供体质测试功能,普通用户可以搜索选择试题进行答题,完成测试提交后可查看分数和医师评语,确认自己的体质。界面如下图所示。
图5.4 体质测试界面
5.1.5健康病例模块
健康病例模块主要为用户提供健康病例记录功能,普通用户可以输入记录自己的健康病例数据,提交的健康病例可在自己的个人中心进行管理。界面如下图所示。
图5.5 健康病例界面
5.1.6中药配方模块
中药配方模块主要为用户提供中药配方展示,支持关键字、排序搜索,普通用户可以浏览中药配方的详细内容,并可点赞、收藏和评论中药配方。界面如下图所示。
图5.6 中药配方界面
5.1.7医师信息模块
医师信息模块主要为用户提供医师信息展示,支持关键字、排序搜索,普通用户可以浏览中药配方,并可点赞、收藏和评论医师信息,实现评分、在线咨询功能。界面如下图所示。
图5.7 医师信息详情页界面
5.2医师用户主要功能实现
5.2.1健康病例管理模块
医师用户可搜索和浏览普通用户提交的健康病例信息,并根据健康病例情况,更新和给出医生建议内容。界面如下图所示。
图5.8 健康病例建议界面
5.2.2中药配方管理模块
医师用户可管理自己的中药配方信息的发布、下架、更新等操作,提供搜索功能,支持查看和管控其评论内容。界面如下图所示。
图5.9 中药配方发布界面
5.2.3医师信息管理模块
医师用户可管理自己的医师信息的发布、删除、更新等操作,提供搜索功能,支持查看和管控其评论内容。界面如下图所示。
图5.10 医师信息管理界面
5.2.4咨询记录管理模块
医师用户可搜索和浏览提交自己的咨询记录信息,负责审核回复咨询记录。面如下图所示。
图5.11 咨询记录回复界面
5.2.5资源管理模块
医师用户可管理自己的健康资讯、资讯分类以及体质测试等信息,支持发布健康资讯,对其进行分类管理;支持批量导入试题到题库,更新试题库,创建试卷(点击生成由系统自动进行组卷),并发布体质测试,负责对试卷的主观题进行评分,并编辑评语内容。面如下图所示。
图5.12 体质测试界面
5.3管理员主要功能实现
5.3.1系统用户模块
管理员可管理包括普通用户、医师用户、管理员等所有系统用户信息,支持用户权限管理和角色设置,可增改删查和审核封禁系统用户信息。界面如下图所示。
图5.13 系统用户界面
5.3.2中药配方管理模块
管理员可管理所有中药配方信息的发布、下架、更新等操作,提供搜索功能,支持查看和管控其评论内容。界面如下图所示。
图5.14 中药配方管理界面
5.3.3系统管理模块
管理员可管理系统的轮播图信息,包括新增、编辑、删除轮播图,提供搜索功能,支持图片附带链接。界面如下图所示。
图5.15 系统管理界面
5.3.4资源管理模块
管理员可管理所有健康资讯、资讯分类以及体质测试的新增、编辑、删除等操作,提供搜索功能,支持对健康资讯的评论管控和查看;体质测试还提供题库、答题、评分等操作。面如下图所示。
图5.16 资源管理界面
第6章
系统测试
6.1测试目的
在这个产品被投入使用前,首先需要进行试用,这是重要的环节。考虑到某个部分的开发没有缺陷情况下,把各种模块拼接,也有一定概率就存在矛盾。这就好比每个人都很独特,但聚在一起就显得杂乱无章,需要保证有默契的配合。对于测试,要看它的各项内容是否契合的原则[10]。若与最初定下的标准有一定程度上的出入,那么就需要做出一些调整,让最终的大方向朝着目标前进。
测试是为了发现在开发的程序中所存在的问题,测试这一工作是非常艰巨的,而又是非常困难的,这一部分在程序的设计中占有很大比例,可以说一个程序的开发工作量要是占据了百分至六十,那么剩下的百分之四十必然是测试这一部分,甚至更高。
6.2测试用例
用户注册功能测试用例如下表所示。
表6.1 用户注册功能测试表
|
测试编号 |
测试描述 |
预期结果 |
测试方法 |
测试结果 |
|
TC_01 |
正常用户注册 |
用户注册成功,跳转至登录页面 |
输入所有必填项并提交 |
符合预期 |
|
TC_02 |
注册时用户名已存在 |
提示“用户名已被注册” |
输入已存在的用户名 |
符合预期 |
|
TC_03 |
注册时邮箱格式错误 |
提示“邮箱格式不正确” |
输入错误格式的邮箱 |
符合预期 |
|
TC_04 |
必填项未填写 |
提示“请填写所有必填信息” |
不填写必要信息 |
符合预期 |
- 用户登录功能测试
用户登录功能测试用例如下表所示。
表6.2 用户登录功能测试表
|
测试编号 |
测试描述 |
预期结果 |
测试方法 |
测试结果 |
|
TC_01 |
正常用户登录 |
用户成功登录,进入用户首页 |
输入有效的用户名和密码 |
符合预期 |
|
TC_02 |
输入错误密码进行登录 |
提示“用户名或密码错误” |
输入有效用户名,错误密码 |
符合预期 |
|
TC_03 |
输入未注册的用户名登录 |
提示“用户不存在” |
输入未注册的用户名 |
符合预期 |
|
TC_04 |
密码为空时登录 |
提示“请填写密码” |
仅输入用户名 |
符合预期 |
健康病例管理功能测试用例如下表所示。
表6.3 健康病例管理功能测试表
|
测试编号 |
测试描述 |
预期结果 |
测试方法 |
测试结果 |
|
TC_01 |
查看健康病例列表 |
成功显示所有健康病例内容 |
进入健康病例管理页面 |
符合预期 |
|
TC_02 |
普通用户添加新健康病例内容 |
成功添加健康病例内容并提示“信息已添加” |
进入健康病例添加界面,输入健康病例并提交 |
符合预期 |
|
TC_03 |
搜索特定健康病例内容 |
成功显示符合条件的健康病例内容 |
输入健康病例名称进行搜索 |
符合预期 |
|
TC_04 |
删除健康病例内容 |
成功删除健康病例,并提示“信息已删除” |
选择健康病例内容并执行删除操作 |
符合预期 |
|
TC_05 |
修改健康病例内容 |
成功编辑健康病例内容并提示“修改成功” |
进入详情页界面,修改某一健康病例内容并提交 |
符合预期 |
|
TC_05 |
医师用户编辑健康病例建议内容 |
成功编辑健康病例内容并提示“修改成功” |
进入详情页界面,编辑填写医师建议内容并提交 |
符合预期 |
- 中药配方管理功能测试
中药配方管理功能测试用例如下表所示。
表6.4 中药配方管理功能测试表
|
测试编号 |
测试描述 |
预期结果 |
测试方法 |
测试结果 |
|
TC_01 |
查看中药配方列表 |
成功显示所有中药配方信息 |
进入中药配方管理页面 |
符合预期 |
|
TC_02 |
医师用户或管理员添加新中药配方信息 |
成功添加中药配方信息并提示“信息已添加” |
进入中药配方添加界面,输入中药配方信息并提交 |
符合预期 |
|
TC_03 |
搜索特定中药配方信息 |
成功显示符合条件的中药配方信息 |
输入中药配方名称进行搜索 |
符合预期 |
|
TC_04 |
删除中药配方信息 |
成功删除中药配方信息,并提示“信息已删除” |
选择中药配方并执行删除操作 |
符合预期 |
|
TC_05 |
编辑中药配方信息 |
成功编辑中药配方并提示“修改成功” |
进入详情页界面,修改某一中药配方信息并提交 |
符合预期 |
- 医师信息管理功能测试
医师信息管理功能测试用例如下表所示。
表6.5 医师信息管理功能测试表
|
测试编号 |
测试描述 |
预期结果 |
测试方法 |
测试结果 |
|
TC_01 |
查看医师信息列表 |
成功显示所有医师信息信息 |
进入医师信息管理页面 |
符合预期 |
|
TC_02 |
医师用户或管理员添加新医师信息 |
成功添加医师信息信息并提示“信息已添加” |
进入医师信息添加界面,输入医师信息信息并提交 |
符合预期 |
|
TC_03 |
搜索特定医师信息 |
成功显示符合条件的医师信息信息 |
输入医师信息名称进行搜索 |
符合预期 |
|
TC_04 |
删除医师信息 |
成功删除医师信息信息,并提示“信息已删除” |
选择医师信息并执行删除操作 |
符合预期 |
|
TC_05 |
编辑医师信息 |
成功编辑医师信息并提示“修改成功” |
进入详情页界面,修改某一医师信息信息并提交 |
符合预期 |
- 咨询记录管理功能测试
咨询记录管理功能测试用例如下表所示。
表6.6 咨询记录管理功能测试表
|
测试编号 |
测试描述 |
预期结果 |
测试方法 |
测试结果 |
|
TC_01 |
查看咨询记录列表 |
成功显示所有咨询记录内容 |
进入咨询记录管理页面 |
符合预期 |
|
TC_02 |
普通用户添加新咨询记录内容 |
成功添加咨询记录内容并提示“信息已添加” |
进入咨询记录添加界面,输入咨询记录并提交 |
符合预期 |
|
TC_03 |
搜索特定咨询记录内容 |
成功显示符合条件的咨询记录内容 |
输入咨询记录名称进行搜索 |
符合预期 |
|
TC_04 |
删除咨询记录内容 |
成功删除咨询记录,并提示“信息已删除” |
选择咨询记录内容并执行删除操作 |
符合预期 |
|
TC_05 |
编辑咨询记录内容 |
成功编辑咨询记录内容并提示“修改成功” |
进入详情页界面,修改某一咨询记录内容并提交 |
符合预期 |
|
TC_06 |
医师用户回复咨询记录内容 |
成功回复咨询记录内容并提示“提交成功” |
进入详情页界面,回复咨询记录内容并提交 |
符合预期 |
|
TC_07 |
医师用户审核咨询记录内容 |
成功审核咨询记录内容并提示“审核成功” |
点击“审核”更新审核状态和审核回复内容 |
符合预期 |
- 体质测试管理功能测试
体质测试管理功能测试用例如下表所示。
表6.7 体质测试管理功能测试表
|
测试编号 |
测试描述 |
预期结果 |
测试方法 |
测试结果 |
|
TC_01 |
查看体质测试列表 |
成功显示所有体质测试信息 |
进入体质测试管理页面 |
符合预期 |
|
TC_02 |
医师用户管理员添加新体质测试信息 |
成功添加体质测试信息并提示“信息已添加” |
进入体质测试添加界面,输入体质测试信息并提交 |
符合预期 |
|
TC_03 |
搜索特定体质测试信息 |
成功显示符合条件的体质测试信息 |
输入体质测试名称进行搜索 |
符合预期 |
|
TC_04 |
删除体质测试信息 |
成功删除体质测试信息,并提示“信息已删除” |
选择体质测试并执行删除操作 |
符合预期 |
|
TC_05 |
编辑体质测试信息 |
成功编辑体质测试并提示“修改成功” |
进入详情页界面,修改某一体质测试信息并提交 |
符合预期 |
|
TC_05 |
普通用户体质测试答题 |
成功进行体质测试答题并提示“修改成功” |
进入体质测试界面,点击“答题”进行答题并提交 |
符合预期 |
6.3测试结果
在本次测试中主要对用户注册、用户登录、健康病例管理、中药配方管理、医师信息管理、咨询记录管理及体质测试管理等模块业务流程操作进行测试分析,并编写测试用例。经过严格的测试,全部测试用例都已通过,并验证所有操作都能够正确无误,因此能够保证本次设计且已实现的功能能够正常运行,操作简单,使用流畅,性能良好,能够满足管理业务需求,同时确保相关数据库的信息也同样正确无误,实现了本论文开始时所作要求和期望。
第7章结 论
本中药推荐系统毕业设计项目已成功落下帷幕,这一成果不仅是对开发者技术实力与业务理解能力的全面展现,也是对传统中医药学行业数字化转型的一次积极探索。
本次毕业设计充分利用了Flask框架的灵活性与高效性,通过模块化设计与微服务架构,实现了中药及医师信息的全面管理、精准搜索与便捷中药推荐、在线咨询及体质测试。系统界面友好直观,操作流程简洁明了,为用户提供了极佳的使用体验。同时,通过深入挖掘用户需求,系统不仅满足了用户的实际需求,还实现个性化推荐功能,为用户提供更为精准的中医服务。通过对数据库索引、缓存机制等精心优化,系统性能得到了显著提升,确保了高并发场景下的稳定运行。而且通过实施严格的数据加密策略、访问控制机制及日志审计功能,系统有效防范了数据泄露与非法访问等安全风险。
总的来说,通过本次研究,成功基于Flask搭建了一套功能齐全且操作简便的中药推荐系统,实现了丰富的功能并取得了一定的成果。在未来的发展中,将继续优化系统功能和用户体验,实现更加个性化的模块,不断提升系统的性能和稳定性,为中药推荐系统的长期发展和用户需求提供更好的服务和支持。
- 王朝辉.基于Flask框架的测试集成系统设计与实现[J].科技创新与应用,2024,14(33):115-118.DOI:10.19981/j.CN23-1581/G3.2024.33.028.
- 肖曼,曾狄仪,袁小语,等.基于Flask框架的“珠游”系统[J].现代计算机,2024,30(17):112-116.
- 杨硕,史亚平.基于Python+Flask的在线考试系统设计与实现[J].电脑知识与技术,2025,21(02):47-49+56.DOI:10.14004/j.cnki.ckt.2025.0046.
- 张杰.基于Python技术的计算机软件开发系统设计[J].电脑编程技巧与维护,2024,(12):31-33.DOI:10.16184/j.cnki.comprg.2024.12.034.
- 童光耀,胡珍,叶垚敏,等.基于MVC与MySQL的畲医药云端数据库开发[J].现代信息科技,2024,8(19):48-52.DOI:10.19850/j.cnki.2096-4706.2024.19.010.
- 庞敏.MySQL数据库的数据安全应用设计技术研究[J].数字通信世界,2024,(09):25-27.
- 张金聪,高晓红,郑艺文.基于Flask和Vue的猕猴桃信息管理系统的设计与开发[J].电脑知识与技术,2024,20(20):47-49.DOI:10.14004/j.cnki.ckt.2024.1063.
- 王玉鑫,陈鹏,郭晗,等.基于Python信息运维管理系统设计与应用[J].电脑编程技巧与维护,2024,(08):94-97+110.DOI:10.16184/j.cnki.comprg.2024.08.026.
- 范路桥,段班祥,高洁,等.基于Python+Flask+MySQL的知宝问答系统[J].现代计算机,2022,28(22):93-98.
- 杨洪涛.基于Python+MySQL的学生成绩管理系统的设计与实现[J].电脑编程技巧与维护,2023,(05):86-89.DOI:10.16184/j.cnki.comprg.2023.05.036.
- 范路桥,高洁,段班祥.基于Python+Flask+ECharts的国内热门旅游景点数据可视化系统[J].现代电子技术,2023,46(09):126-130.DOI:10.16652/j.issn.1004-373x.2023.09.024.
- 陈宇欢,李友山,张锦楠,等.基于Python语言分析《外科正宗》的中医外治的用药规律[J].世界中西医结合杂志,2024,19(12):2357-2361.DOI:10.13935/j.cnki.sjzx.241204.
- 杨文波.基于信息技术的个性化推荐系统设计与实现[C]//中国智慧工程研究会.2024工程技术应用与施工管理交流会论文集(下).杭州善淼科技有限公司;,2024:109-111.DOI:10.26914/c.cnkihy.2024.058697.
- 陈剑峰.基于协同过滤的中药推荐系统研究与应用[D].电子科技大学,2024.
- 陈强,贺丹,邓美玲.基于个性化推荐的高校教学模式探索——以Python程序设计通识课为例[J].电脑知识与技术,2024,20(12):131-133.DOI:10.14004/j.cnki.ckt.2024.0634.
- Zhou J ,Li H .Multi-dimensional Model of Python Resources Based on Portrait Technology: Research on Building and Optimizing Recommendation Services[J].The Frontiers of Society, Science and Technology,2024,6(3):
- 谭世雨,余江维,杜志慧.基于Python的中医医案智能收集系统研究[J].亚太传统医药,2024,20(01):163-167.
- 黄晓莹,李程龙.基于大数据分析的中医药信息个性化推荐系统[J].自动化技术与应用,2023,42(08):74-77.DOI:10.20033/j.1003-7241.(2023)08-0074-04.
- 毛苏皖,龚庆悦,万中华.智能中成药推荐系统设计[J].无线互联科技,2023,20(12):27-29+36.
- Zafar A ,Yi H ,Irfan U , et al.Deep Learning for Medication Recommendation: A Systematic Survey[J].Data Intelligence,2023,5(2):303-354.
- 刘灿.基于知识图谱的药方辅助推荐系统实现[D].西南大学,2023.DOI:10.27684/d.cnki.gxndx.2023.002853.
- Luo K .A Study and Implementation of an Optimized University Library Book Recommendation System Based on Artificial Intelligence and Python Crawler Scraping Technology[J].Journal of Artificial Intelligence Practice,2023,6(2):
- 吴猛华.基于协同过滤的影视推荐系统设计与实现[D].华东师范大学,2022.DOI:10.27149/d.cnki.ghdsu.2022.004571.
- 卢林竹,王智浩,蒋益兰,等.基于Python语言构建名中医医案数据挖掘平台[J].世界科学技术-中医药现代化,2021,23(09):3188-3194.
- 靳远远.基于图神经网络的中医药方推荐技术研究[D].华东师范大学,2022.DOI:10.27149/d.cnki.ghdsu.2022.000311.
- 黄云鹏.面向患者的中成药推荐系统[D].北京邮电大学,2021.DOI:10.26969/d.cnki.gbydu.2021.003183.
- 吴志文.药材种植推荐系统的研究与实现[D].北京林业大学,2020.DOI:10.26949/d.cnki.gblyu.2020.000423.
在完成本次 Flask 中药推荐系统毕业设计的过程中,我收获了诸多宝贵的经验,也感受到了成长的喜悦,也深刻体会到理论与实践相结合的重要性。在这里我特别感谢我毕设的导师。在整个毕设过程中老师不但给我指明方向也给予我专业的指导,给了我很大的帮助也让我在探索中不断突破自我不断提升我的专业能力,更让我学会了如何以科学的方法解决问题。
我也感谢学校为我提供了一个良好的学习环境和丰富的资源支持。让我得以接触到前沿的技术知识和开发工具,为毕业设计的顺利开展奠定了坚实基础。在开发过程中,我遇到了许多技术难题,但通过查阅大量文献资料和反复实践,我逐渐找到了解决方法。这一过程不仅锻炼了我的自主学习能力,也让我深刻体会到知识的力量。
最后我要感谢我的家人和亲朋们。在我为毕业设计忙碌的日子里,他们始终给予我无条件的支持和鼓励。他们的理解让我能够在紧张的学习中保持良好的心态,专注于项目的每一个细节。这份毕业设计是我大普通用户活的完美收官,也是我人生旅程中的一个重要里程碑。我将带着这份成长和感恩,继续在未来的道路上努力前行。
附录1 系统核心代码设计
数据库配置文件 代码如下 在app.py,代码如下图所示。

数据库配置关键代码图
注册关键代码如下图所示。

注册关键代码图
登录关键代码如下图所示。

登录关键代码图
修改密码关键代码如下图所示。

修改密码关键代码图
添加数据关键代码如下图所示。

添加数据关键代码图
删除数据关键代码如下图所示。

删除数据关键代码图
修改数据关键代码如下图所示。

修改数据关键代码图
查询一条数据关键代码如下图所示。

查询一条数据关键代码图
查询多条数据关键代码如下图所示。

查询多条数据关键代码图
免费领取项目源码+数据库,请关注❥点赞收藏并私信博主,谢谢~
更多推荐



所有评论(0)