基于python的中医药材数据分析与可视化
2026/8/9 2:25:03 网站建设 项目流程

基于Python的中医药材数据分析与可视化 — 功能点说明

编号基于python的中医药材数据分析与可视化2026080620

系统概述

本系统是一个基于 Python(Django REST Framework 后端 + Vue 3 + ECharts 前端)的中医药材数据分析与可视化平台。系统对中药材数据进行采集、存储、管理和多维度可视化分析,提供完整的用户认证、角色权限管理、药材数据CRUD、数据大屏可视化展示等功能。


功能点列表

1. 用户注册

项目说明
功能名称用户注册
功能描述用户通过填写用户名、邮箱、密码等信息完成注册,注册后需管理员审核激活方可登录系统。支持用户名唯一性校验和邮箱唯一性校验。
输入/输出输入:用户名(必填)、邮箱(可选)、密码(必填)等字段。输出:注册成功返回用户信息,失败返回具体错误提示(如"用户名已被注册")。
涉及代码文件BackEnd/usercenter/views.pyUserRegisterView)、BackEnd/usercenter/serializers.pyUserSerializer)、Frontbackend/src/views/login/register/index.vueFrontbackend/src/api/apis/login_register.js

2. 用户登录

项目说明
功能名称用户登录
功能描述用户通过用户名+密码进行登录认证。登录成功后服务端生成 JWT Access Token 和 Refresh Token,Refresh Token 存储在 HTTP-only Cookie 中以保证安全性。支持自动 Token 刷新机制。
输入/输出输入:用户名、密码。输出:登录成功返回用户基本信息(id、username、type、is_staff等)和访问令牌。
涉及代码文件BackEnd/usercenter/views.pyUserLoginView)、BackEnd/ProjectCenter/urls.py(token路由)、Frontbackend/src/views/login/index.vueFrontbackend/src/stores/user.js

3. JWT Token 管理

项目说明
功能名称JWT Token 刷新与验证
功能描述提供 Token 刷新接口(通过 Refresh Token 获取新的 Access Token)、Token 验证接口和 Token 黑名单(注销)接口。前端 axios 拦截器自动处理 Token 过期并尝试刷新。
输入/输出刷新输入:refresh token。输出:新的 access token。验证输入:任意 token。输出:验证结果。黑名单输入:refresh token。输出:注销确认。
涉及代码文件BackEnd/ProjectCenter/urls.py/token/refresh//token/verify//token/blacklist/)、BackEnd/usercenter/views.pyCookieTokenRefreshView)、Frontbackend/src/api/https.js

4. 用户信息管理(CRUD)

项目说明
功能名称用户信息增删改查
功能描述管理员可对所有用户进行完整的CRUD操作(创建、查询、更新、删除),支持多字段模糊查询、精确ID查询、注册时间范围筛选、用户状态筛选。普通用户仅可查看和修改自己的信息。支持头像上传和管理。
输入/输出输入:用户信息字段(用户名、邮箱、姓名、电话、地址、性别、生日、头像等)。输出:用户列表或单个用户详情。
涉及代码文件BackEnd/usercenter/views.pyUserViewSet)、BackEnd/usercenter/models.pyUser模型)、BackEnd/usercenter/serializers.pyBackEnd/usercenter/filters.pyFrontbackend/src/views/managers/User/

5. 角色权限管理

项目说明
功能名称角色管理
功能描述管理员可创建、查询、更新、删除角色。支持角色名称模糊查询、精确ID查询。角色与用户关联,通过用户type字段区分权限类型(type='1’为管理员,type='2’为普通用户)。
输入/输出输入:角色名称。输出:角色列表或操作结果。
涉及代码文件BackEnd/usercenter/views.pyRolesViewSet)、BackEnd/usercenter/models.pyRoles模型)、BackEnd/usercenter/filters.pyFrontbackend/src/views/managers/Roles/

6. 中医药材数据管理(CRUD)

项目说明
功能名称中医药材信息增删改查
功能描述对中药材数据进行完整的CRUD操作。药材字段包括:中文名称、药材成分、适应症、使用方法、参考文献。支持多字段模糊搜索(综合搜索)、精确查询、分页。管理员可增删改,普通用户仅可查看。支持批量删除。
输入/输出输入:药材信息(chinese_name、composition、indication、use_method、references)。输出:药材列表(分页)或单个药材详情。
涉及代码文件BackEnd/appcenter/views.pyChinese_medicine_herbsViewSet)、BackEnd/appcenter/models.pyChinese_medicine_herbs模型)、BackEnd/appcenter/serializers.pyBackEnd/appcenter/filters.pyFrontbackend/src/api/apis/Chinese_medicine_herbsapi.jsFrontbackend/src/views/managers/Chinese_medicine_herbs/

7. 中医药材数据大屏可视化

项目说明
功能名称数据大屏可视化展示
功能描述基于 ECharts 构建的数据大屏,展示中药材数据的多维度可视化分析,包括:(1) 药材使用分布环形图/饼图/玫瑰图(可切换);(2) 药材成分TOP10柱状图(可选TOP5/10/15);(3) 药材多维属性雷达图(可选择药材);(4) 药材-成分-适应症关系桑基图;(5) 药材数据增长趋势折线图/面积图/柱状图;(6) 数据质量实时监测仪表盘;(7) 药材数据详情表格(支持搜索、排序、分页)。
输入/输出输入:从后端API获取的药材数据。输出:6种ECharts图表 + 数据表格 + 药材详情弹窗。
涉及代码文件Frontbackend/src/views/bi/bi.vue(完整大屏组件,含7个ECharts图表初始化与交互逻辑)

8. 药材数据综合搜索与过滤

项目说明
功能名称多维度数据搜索与过滤
功能描述支持对中药材数据的多维度搜索:按药材名称搜索、按成分搜索、按适应症搜索、按使用方法搜索、按参考文献搜索,以及综合搜索(同时匹配所有字段)。后端通过 Django Filter 实现,前端通过 POST 请求提交过滤条件。
输入/输出输入:搜索关键词或过滤条件(chinese_name、composition、indication等)。输出:过滤后的药材列表。
涉及代码文件BackEnd/appcenter/filters.pyChinese_medicine_herbsFilter)、BackEnd/utils/utils.pyfilter_by_post方法)、Frontbackend/src/views/bi/bi.vue(搜索/过滤UI)

9. 系统监控 WebSocket 服务

项目说明
功能名称系统性能实时监控
功能描述基于 WebSocket 的系统监控服务,实时采集并推送服务器性能数据,包括:CPU使用率(整体及每核)、内存使用率、磁盘使用率及IO速度、网络速度及流量、网络包数统计、磁盘队列长度、上下文切换次数、系统功耗估算、系统温度、平均负载等。支持流式推送和快照获取两种模式。
输入/输出输入:WebSocket命令(start_monitoring、get_snapshot、ping)。输出:实时监控数据JSON(cpu、memory、disk、network等指标)。
涉及代码文件BackEnd/systembi.pyCompleteSystemMonitorServer类,WebSocket服务器完整实现)

10. 前端路由与权限控制

项目说明
功能名称前端路由管理与权限守卫
功能描述基于 Vue Router 的前端路由系统,支持动态路由加载。管理员(type=‘1’)可访问全部功能菜单(仪表盘、用户管理、角色管理、数据大屏、中药材管理、API文档),普通用户(type=‘2’)仅可访问用户列表、数据大屏和中药材查看。路由守卫自动拦截未登录访问。
输入/输出输入:用户登录状态和权限类型。输出:动态菜单和页面访问控制。
涉及代码文件Frontbackend/src/router/asyncRouters.js(管理员路由 + 普通用户路由)、Frontbackend/src/router/beforeEach.js(路由守卫)、Frontbackend/src/stores/user.js

11. 用户密码修改

项目说明
功能名称修改登录密码
功能描述已登录用户可修改自己的登录密码,需提供旧密码进行验证,新密码需满足安全要求。
输入/输出输入:旧密码、新密码。输出:修改成功/失败提示。
涉及代码文件BackEnd/usercenter/views.pyPasswordChangeView)、BackEnd/usercenter/urls.py/User/me/change-password/

12. 药材数据详情查看与导出

项目说明
功能名称药材详情弹窗与数据导出
功能描述在数据大屏中点击药材行可弹出详情弹窗,展示药材的完整信息(成分标签、适应症标签、参考文献),包含基本信息和统计分析两个标签页。统计分析页显示成分数量、适应症数量、使用频率评分及迷你图表。支持将药材数据导出。
输入/输出输入:点击的药材ID。输出:药材详情弹窗内容。
涉及代码文件Frontbackend/src/views/bi/bi.vuedetailDialogVisibleselectedHerbhandleRowClickexportHerbData

13. 数据完整性评估

项目说明
功能名称数据质量评估
功能描述系统自动评估每条药材数据的完整性评分(基于各字段是否为空),在数据大屏和详情弹窗中以进度条形式展示数据完整度,并在实时监测仪表盘中显示整体数据质量评分。
输入/输出输入:药材数据对象。输出:0-100的完整度百分比值。
涉及代码文件Frontbackend/src/views/bi/bi.vuecalculateDataCompleteness函数)

14. 数据库初始化与迁移

项目说明
功能名称数据库一键初始化
功能描述提供批处理脚本一键完成数据库迁移和超级管理员创建。SQL文件包含完整的中药材数据库初始化数据(data.csv导入数据 + SQL建表语句)。
输入/输出输入:执行批处理脚本。输出:数据库表结构和初始数据创建完成。
涉及代码文件BackEnd/1安装包.batBackEnd/2迁移数据库.batBackEnd/3创建超级管理员.batjiyupythondezhongyiyaocaishujufe.sqldata.csv

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询