msh-agent 2facd355ab feat(ai-nutritionist): Coze TTS and streaming robustness
- Add Coze TTS endpoint and service; expose binary MP3 from controller.
- Bypass ResponseFilter for /audio/speech so MP3 bodies are not UTF-8 wrapped.
- UniApp: cozeTextToSpeech, TTS UI and play flow; SSE HTTP errors and diagnostics.
- Document TTS in docs/features.md; extend test-0325-1 with curl verification.

Made-with: Cursor
2026-03-31 07:07:21 +08:00
2026-03-09 15:45:36 +08:00
2026-03-09 15:45:36 +08:00
2026-03-09 18:56:53 +08:00

MSH System慢生活智能营养专家

面向 C 端的商城 + 营养/工具一体化平台包含移动端多端应用UniApp与基于 CRMEB 的 Java 后端服务。在 CRMEB Java 版 v2.2 基础上做了业务定制,并接入了 AICoze、KieAI、腾讯云 ASR 等)与文章/工具类能力,形成「慢生活营养专家」产品形态。


整体架构

系统采用前后端分离 + 多端一体架构:

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-servicecrmeb-common
  • AI 集成:独立服务 models-integration 提供 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/ 产品需求、技术栈与架构分析、打卡/社区设计、食谱计算器接口、用户界面交互设计、数据库设计与 SQL
models-integration/ 与 Coze、KieAI、腾讯 ASR、Nano Banana 等模型集成的独立 Spring Boot 服务,已经迁移代码到Java后端项目中目前只是备用
msh_crmeb_22/ 商城与业务主后端crmeb-common、crmeb-service、crmeb-admin、crmeb-front
msh_single_uniapp/ 移动端应用AI 营养师、计算器、打卡、饮食记录、食物百科、食谱详情、商城与订单等
upload/ 运行时上传文件存储目录(如 crmebimage/public

运行环境

  • 云服务器mysql数据库 数据库名: shop-msh IP&端口49.235.131.69:3306 username: root password: mogu2018

技术栈概览

层次 技术项 说明
前端框架 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 基地址domainmanifest.json 配置应用名、版本、各端 appid。
  • 详细说明msh_single_uniapp/README.md

msh_crmeb_22主后端

  • 模块crmeb-common公共实体与工具、crmeb-service业务逻辑、crmeb-admin管理端 API、Quartz 定时任务、crmeb-frontC 端 API
  • 端口crmeb-front 默认 20822sophia profilecrmeb-admin 默认 20000。
  • 接口前缀C 端 /api/front/*/api/public/*
  • 详细说明msh_crmeb_22/README.md

models-integrationAI 集成服务),已经迁移代码到Java后端项目中目前只是备用

  • 定位:独立 Maven 工程,与主系统无直接模块依赖,可单独部署,通过 HTTP 与 front 协作。
  • 能力Coze、KieAI 文生图/视频、腾讯 ASR、文章/任务记录、打卡回调等。
  • 详细说明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

cd msh_crmeb_22
mvn clean package
# C 端 API
./shell/startFront.sh   # 默认端口 20822sophia
# 管理端 API
./shell/startAdmin.sh   # 默认端口 20000

需在对应 profile 的 application-*.yml 中配置 MySQL、Redis 等。

AI 集成服务models-integration已经迁移代码到Java后端项目中目前只是备用

cd models-integration
mvn clean package
./start.sh mysql   # 或 postgresql按实际数据源选择

前端msh_single_uniapp

  1. 使用 HBuilderX 打开 msh_single_uniapp 目录。
  2. config/app.js 中配置 domain 为实际后端 API 地址。
  3. 运行到对应端:运行 → 运行到浏览器H5或运行到小程序模拟器微信等
  4. 微信小程序需在 manifest.json 中配置已具备权限的 appid。

详见 msh_single_uniapp/README.md


部署说明

  • 后端:将各模块打好的 JAR 上传至服务器,在 JAR 同级目录执行对应 shell/startFront.shshell/startAdmin.shmsh_crmeb_22start.shmodels-integration。注意 Web 端口勿与 20000 冲突;反向代理可指向 http://127.0.0.1:20000admin或 C 端实际端口(如 20822
  • 前端H5 可将构建产物部署到任意静态服务器;微信小程序/App 在各自平台上传代码并配置域名白名单。

参考网站

  1. https://www.ishen365.com/sfsn

文档索引

文档 路径
项目技术栈与架构分析 docs/项目技术栈与架构分析.md
PRD 慢生活智能营养专家 v2.0 docs/PRD_慢生活智能营养专家_v2.0.md
用户界面交互设计 docs/用户界面交互设计.md
打卡社区功能设计方案 docs/打卡社区功能设计方案.md
打卡详情页一键打卡入口设计 docs/打卡详情页_一键打卡入口设计.md
食谱计算器后端接口开发文档 docs/食谱计算器后端接口开发文档.md
数据库设计 docs/db/db_design.md
SQL 脚本 docs/sql/msh_crmeb_22/sql/
测试与 API 文档 docs/Testing/、各子项目 Swagger/SpringDoc 文档

文档基于当前仓库目录与配置文件整理,用于技术评审、新人上手与架构演进参考。具体版本以各模块 pom.xmlpackage.json 及运行环境为准。

Description
慢生活(MSH)系统 - 商城 + 营养/工具一体化系统
Readme 128 MiB