2026-03-03 15:33:50 +08:00
# MSH System( 慢生活智能营养专家)
面向 C 端的**商城 + 营养/工具**一体化平台, 包含移动端多端应用( UniApp) 与基于 CRMEB 的 Java 后端服务。在 CRMEB Java 版 v2.2 基础上做了业务定制,并接入了 AI( Coze、KieAI、腾讯云 ASR 等)与文章/工具类能力,形成「慢生活营养专家」产品形态。
---
## 整体架构
系统采用**前后端分离 + 多端一体**架构:
```mermaid
flowchart TB
subgraph client [客户端多端]
Wechat[微信小程序]
H5[H5商城]
App[App_iOS_Android]
Other[支付宝头条等小程序]
end
UniApp[msh_single_uniapp_Vue2_UniApp]
client --> UniApp
UniApp -->|"HTTPS / REST API"| Backend
subgraph backend [后端服务_Spring_Boot]
Front[crmeb_front_C端API_20822]
Admin[crmeb_admin_管理端API]
Service[crmeb_service_业务逻辑]
Common[crmeb_common_工具实体配置]
Front --> Service
Admin --> Service
Service --> Common
end
Backend --> Front
Backend --> Admin
Front --> MySQL
Front --> Redis
Front --> OSS
Admin --> MySQL
Admin --> Redis
MySQL[(MySQL_8.x_Druid)]
Redis[(Redis_缓存会话Token)]
OSS[对象存储_OSS_COS_七牛]
```
- **前端**:一套 UniApp 源码, 通过条件编译发布到微信小程序、H5、App、支付宝/头条等小程序。
- **后端**:多模块 Maven 工程, C 端入口为 `crmeb-front` ,管理端为 `crmeb-admin` ,共用 `crmeb-service` 与 `crmeb-common` 。
- **AI 集成**:独立服务 [models-integration ](models-integration/readme.md ) 提供 Coze、KieAI、腾讯 ASR、Nano Banana 等能力,与主后端通过 HTTP 协作。
---
## 目录结构
**本地位置:** /Users/apple/scott2026/msh-system
```
msh-system/
├── docs/ # 项目文档: PRD、架构分析、DB 设计、SQL 迁移脚本
├── models-integration/ # AI/API 集成服务( Spring Boot 2.7.5,独立部署),**已经迁移代码到Java后端项目中, 目前只是备用**。
├── msh_crmeb_22/ # CRMEB Java 后端( Spring Boot 2.2.6,多模块 Maven)
├── msh_single_uniapp/ # UniApp 前端( Vue 2, 微信/H5/App 多端)
└── upload/ # 文件存储(用户上传、打卡图片等)
```
| 目录 | 说明 |
|------|------|
| [docs/ ](docs/ ) | 产品需求、技术栈与架构分析、打卡/社区设计、食谱计算器接口、用户界面交互设计、数据库设计与 SQL |
| [models-integration/ ](models-integration/readme.md ) | 与 Coze、KieAI、腾讯 ASR、Nano Banana 等模型集成的独立 Spring Boot 服务,**已经迁移代码到Java后端项目中, 目前只是备用** |
| [msh_crmeb_22/ ](msh_crmeb_22/README.md ) | 商城与业务主后端: crmeb-common、crmeb-service、crmeb-admin、crmeb-front |
| [msh_single_uniapp/ ](msh_single_uniapp/README.md ) | 移动端应用: AI 营养师、计算器、打卡、饮食记录、食物百科、食谱详情、商城与订单等 |
| upload/ | 运行时上传文件存储目录(如 crmebimage/public) |
---
2026-03-30 12:46:24 +08:00
## 运行环境
- 云服务器mysql数据库, 数据库名: shop-msh
IP&端口: 49.235.131.69:3306
username: root
password: mogu2018
---
2026-03-03 15:33:50 +08:00
## 技术栈概览
| 层次 | 技术项 | 说明 |
|------|--------|------|
| 前端框架 | Vue 2 + UniApp | 多端统一(微信小程序 / H5 / App) |
| 状态管理 | Vuex | 登录态、购物车、全局配置等 |
| 请求 | uni.request 封装 | 统一 domain、Token、错误与登录跳转 |
| 后端框架 | Spring Boot 2.2 / 2.7 | msh_crmeb_22 多模块; models-integration 独立服务 |
| 数据访问 | MyBatis-Plus + MySQL | Druid 连接池、PageHelper 分页 |
| 缓存 | Redis (Jedis) | 会话、Token、验证码、配置缓存 |
| 认证 | JWT + 行为验证码 | 前端 Header 传 Token |
| 文档 | Swagger 2 + Bootstrap UI / SpringDoc | 后端 API 文档 |
| 构建 | Maven / npm | 后端 Maven; 前端 Vue CLI / HBuilderX |
| 对象存储 | 阿里云 OSS / 腾讯云 COS / 七牛 | 图片与文件 |
| 支付 | 微信支付、支付宝 | 通过后端封装 |
| AI/能力 | Coze、KieAI、腾讯云 ASR、Nano Banana 等 | 在 crmeb-service 与 models-integration 中封装 |
---
## 子项目说明
### msh_single_uniapp( 前端)
- **技术**: Vue 2、UniApp、Vuex、mp-html。
- **功能**: 首页、工具主入口( 慢生活营养专家) 、AI 营养师、食谱计算器、打卡、饮食记录、食物百科、食谱详情、商品列表/详情/搜索、订单、用户中心、营销活动等。
- **配置**: `config/app.js` 中配置 API 基地址( domain) ; `manifest.json` 配置应用名、版本、各端 appid。
- **详细说明**: [msh_single_uniapp/README.md ](msh_single_uniapp/README.md )
### msh_crmeb_22( 主后端)
- **模块**: crmeb-common( 公共实体与工具) 、crmeb-service( 业务逻辑) 、crmeb-admin( 管理端 API、Quartz 定时任务) 、crmeb-front( C 端 API) 。
- **端口**: crmeb-front 默认 20822( sophia profile) , crmeb-admin 默认 20000。
- **接口前缀**: C 端 `/api/front/*` 、`/api/public/*` 。
- **详细说明**: [msh_crmeb_22/README.md ](msh_crmeb_22/README.md )
### models-integration( AI 集成服务),**已经迁移代码到Java后端项目中, 目前只是备用**
- **定位**:独立 Maven 工程,与主系统无直接模块依赖,可单独部署,通过 HTTP 与 front 协作。
- **能力**: Coze、KieAI 文生图/视频、腾讯 ASR、文章/任务记录、打卡回调等。
- **详细说明**: [models-integration/readme.md ](models-integration/readme.md )
---
## 环境要求
| 依赖 | 版本/说明 |
|------|-----------|
| JDK | 1.8 |
| Maven | 3.6+ |
| MySQL | 5.7+ / 8.x |
| Redis | 5+ |
| Node.js | 用于 UniApp 构建 |
| HBuilderX | 推荐用于 UniApp 开发与运行 |
---
## 快速开始
### 后端( msh_crmeb_22)
```bash
cd msh_crmeb_22
mvn clean package
# C 端 API
./shell/startFront.sh # 默认端口 20822( sophia)
# 管理端 API
./shell/startAdmin.sh # 默认端口 20000
```
需在对应 profile 的 `application-*.yml` 中配置 MySQL、Redis 等。
### AI 集成服务( models-integration) , **已经迁移代码到Java后端项目中, 目前只是备用**
```bash
cd models-integration
mvn clean package
./start.sh mysql # 或 postgresql, 按实际数据源选择
```
### 前端( msh_single_uniapp)
1. 使用 [HBuilderX ](https://www.dcloud.io/ ) 打开 `msh_single_uniapp` 目录。
2. 在 `config/app.js` 中配置 `domain` 为实际后端 API 地址。
3. 运行到对应端:运行 → 运行到浏览器( H5) 或运行到小程序模拟器( 微信等) 。
4. 微信小程序需在 `manifest.json` 中配置已具备权限的 appid。
详见 [msh_single_uniapp/README.md ](msh_single_uniapp/README.md )。
---
## 部署说明
- **后端**:将各模块打好的 JAR 上传至服务器,在 JAR 同级目录执行对应 `shell/startFront.sh` 、`shell/startAdmin.sh` ( msh_crmeb_22) 或 `start.sh` ( models-integration) 。注意 Web 端口勿与 20000 冲突;反向代理可指向 `http://127.0.0.1:20000` ( admin) 或 C 端实际端口(如 20822) 。
- **前端**: H5 可将构建产物部署到任意静态服务器;微信小程序/App 在各自平台上传代码并配置域名白名单。
---
2026-03-30 12:46:24 +08:00
## 参考网站
1. https://www.ishen365.com/sfsn
---
2026-03-03 15:33:50 +08:00
## 文档索引
| 文档 | 路径 |
|------|------|
| 项目技术栈与架构分析 | [docs/项目技术栈与架构分析.md ](docs/项目技术栈与架构分析.md ) |
| PRD 慢生活智能营养专家 v2.0 | [docs/PRD_慢生活智能营养专家_v2.0.md ](docs/PRD_慢生活智能营养专家_v2.0.md ) |
| 用户界面交互设计 | [docs/用户界面交互设计.md ](docs/用户界面交互设计.md ) |
| 打卡社区功能设计方案 | [docs/打卡社区功能设计方案.md ](docs/打卡社区功能设计方案.md ) |
| 打卡详情页一键打卡入口设计 | [docs/打卡详情页_一键打卡入口设计.md ](docs/打卡详情页_一键打卡入口设计.md ) |
| 食谱计算器后端接口开发文档 | [docs/食谱计算器后端接口开发文档.md ](docs/食谱计算器后端接口开发文档.md ) |
| 数据库设计 | [docs/db/db_design.md ](docs/db/db_design.md ) |
| SQL 脚本 | [docs/sql/ ](docs/sql/ )、[msh_crmeb_22/sql/ ](msh_crmeb_22/sql/ ) |
| 测试与 API 文档 | [docs/Testing/ ](docs/Testing/ )、各子项目 Swagger/SpringDoc 文档 |
---
*文档基于当前仓库目录与配置文件整理,用于技术评审、新人上手与架构演进参考。具体版本以各模块 `pom.xml` 、`package.json` 及运行环境为准。*