# sleep **Repository Path**: chenwr/sleep ## Basic Information - **Project Name**: sleep - **Description**: 枕畔好眠——基于 Spring Boot(RuoYi 若依框架)开发的中医睡眠健康管理平台后端,为 App 与微信小程序提供完整业务支撑。核心功能包括中医体质测评(8 大体质 + 证候诊断)、AI 智能问答(RAG 检索增强生成,回答有依据可追溯)、睡眠报告生成、熬夜修复管理、个性化调理方案(膳食/茶饮/按摩/作息)、健康商城、打卡签到积分及意见反馈。 - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 2 - **Created**: 2026-09-04 - **Last Updated**: 2026-09-04 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 🐑 枕畔好眠 · 中医睡眠健康管理平台(后端) 基于 **Spring Boot 2.7 + RuoYi 若依框架** 开发的中医睡眠健康管理平台后端,为"枕畔好眠"App / 微信小程序提供完整业务支撑,集**中医体质测评、AI 智能问答、睡眠管理、个性化调理**于一体,已稳定部署上线。 --- ## 📌 项目简介 本项目围绕"中医理论指导的个性化睡眠健康管理"展开,构建了从**健康数据采集 → 体质分析 → AI 问答 → 方案生成**的完整闭环: - **前端**:Web 多页面(H5)+ 微信小程序双端,通过统一 RESTful API 对接本后端 - **后端**:Spring Boot 微服务式多模块工程,业务模块完整,接口规范统一 - **AI 能力**:RAG 检索增强生成,让 AI 回答有专业中医知识依据、可追溯 - **生产部署**:Linux + Nginx + HTTPS,已正式上线运行 --- ## ✨ 核心功能 | 模块 | 说明 | |---|---| | 🧬 **中医体质测评** | 基本信息采集(性别/生辰等)→ 体质问卷 → 证候鉴定,输出 **8 大体质**(平和/气虚/阳虚/阴虚/痰湿/湿热/血瘀/气郁等)+ **中医证型诊断**(含兼夹证型),附"大白话"通俗解释 | | 🤖 **AI 智能问答** | 基于 **RAG 检索增强生成**:构建 1500+ 条中医睡眠知识向量库,支持 Dense + BM25 混合检索与多意图分解,回答有依据、可追溯;双通道路由(本地 RAG / 云端大模型) | | 📖 **睡眠报告** | 手动/自动记录睡眠,质量评分、入睡/醒来时间、多维度报告生成与历史查询 | | 🌙 **熬夜修复** | 三段式熬夜管理(即将熬夜 / 正在熬夜 / 熬夜结束),配套熬夜问卷与修复建议 | | 📋 **个性化调理方案** | 根据测评结果自动生成**膳食、茶饮、按摩、作息**等个性化调理方案 | | 🛒 **健康商城** | 商品展示、下单、订单管理、商品评价 | | 📅 **打卡签到积分** | 每日签到、积分奖励、积分收支明细 | | 💬 **意见反馈** | 用户反馈提交、后台回复管理 | | 👤 **用户体系** | 手机号验证码登录、微信登录、个人信息、头像上传、手机号绑定 | --- ## 🛠️ 技术栈 | 分类 | 技术 | |---|---| | 后端框架 | Spring Boot 2.7(RuoYi-Vue 若依 3.9.1) | | 开发语言 | Java 8 | | 数据库 | MySQL / MariaDB(**81 张业务表**) | | 缓存 | Redis(登录会话、验证码、热点数据) | | 认证 | JWT Token(30 分钟有效,多端认证) | | 短信验证码 | Spug 推送平台 | | AI / 大模型 | 腾讯元器 API、阿里云 DashScope(RAG 检索增强) | | 向量检索 | ChromaDB + BGE 嵌入模型(1500+ 中医知识库) | | 对象存储 | 阿里云 OSS(图片上传、文件存储) | | 部署运维 | Linux(Alibaba Cloud Linux 3)、Nginx、systemd、HTTPS | --- ## 📦 模块结构 ``` sleep ├── sleep-admin # 启动模块(Controller、业务实现、核心配置) │ ├── ai # AI 对话 / RAG 问答 │ ├── mall # 商城(商品、订单、评价) │ ├── medicine # 中医体质测评 / 证候鉴定 │ ├── sleep # 睡眠报告 / 调理方案 / 手动记录 │ ├── sign # 签到 / 积分 │ ├── user # 用户登录 / 微信登录 / 短信验证码 │ └── system # 系统管理(反馈、配置等) ├── sleep-common # 公共工具类、常量、通用组件 ├── sleep-framework # 框架层(安全认证、日志、Redis 配置、CORS) ├── sleep-system # 系统管理模块(用户、角色、菜单、字典) ├── sleep-quartz # 定时任务模块 ├── sleep-generator # 代码生成器 └── sleep-ui # 前端工程(RuoYi-Vue) ``` --- ## 🚀 快速启动 ### 环境要求 - JDK 1.8+ - Maven 3.6+ - MySQL 5.7+ / MariaDB 10.5+ - Redis 5.0+ ### 启动步骤 1. **初始化数据库**:执行 `sql/` 目录下的建库脚本,创建 `sleep` 库(81 张表),并导入基础数据 2. **修改配置**: - `application-druid.yml`:数据库连接(localhost:3306/sleep) - `application-prod.yml`:生产环境密钥(OSS、AI、短信等,建议用环境变量注入) 3. **启动 Redis**:`redis-server` 4. **启动应用**:运行 `sleep-admin` 模块的 `RuoYiApplication` 主类 5. **访问文档**:`http://localhost:8080/doc.html`(Knife4j 接口文档) ### 生产部署 ``` systemctl start sleep-backend # systemd 托管,开机自启 ``` - Web 服务:Nginx(静态资源 + 反向代理 + HTTPS) - 数据库:MariaDB + Redis - 短信:Spug 推送平台(需配置 IP 白名单) --- ## 📝 接口说明 - **认证方式**:登录获取 token,请求头携带 `Authorization: Bearer ` - **登录接口**:`POST /mini/user/phoneLogin`(手机号 + 验证码,测试万能码 123456) - **短信验证码**:`POST /mini/user/sendSmsCode`(60 秒防重发,5 分钟有效) - **接口文档**:Knife4j `/doc.html`、Swagger `/swagger-ui/index.html` - **AI 对话**:`POST /aichat/aichat`(返回 `data.answer` 直接取回答) --- ## 📜 开源说明 本项目基于 [RuoYi-Vue](https://gitee.com/y_project/RuoYi-Vue)(MIT 协议)二次开发,在保留框架能力的基础上扩展了中医睡眠健康管理相关业务模块。