365829f49596190984938a8932c8ec26c904747f
All checks were successful
continuous-integration/drone/push Build is passing
- 简化脚本命令,使用单行格式 - 修复环境变量引用语法 - 添加 script_stop 确保错误时停止
智能项目定价模型
医美行业智能项目定价系统,帮助机构精准核算成本、分析市场行情、智能生成定价建议。
功能特性
- 成本核算:精准计算项目成本,明确最低成本线
- 市场行情:收集竞品价格,分析市场定价区间
- 智能定价:AI 智能分析,生成定价建议
- 利润模拟:模拟不同定价的利润情况,敏感性分析
技术栈
后端
- Python 3.11 + FastAPI
- SQLAlchemy + MySQL 8.0
- 遵循瑞小美 AI 接入规范
前端
- Vue 3 + TypeScript + Vite
- Element Plus + Tailwind CSS
- Pinia + Axios
- ESLint(已配置)
部署
- Docker + Docker Compose
- Nginx 反向代理
- Let's Encrypt SSL
快速开始
开发环境
- 复制环境配置文件
cp env.dev.example .env.dev
- 启动开发环境
docker-compose -f docker-compose.dev.yml up -d
- 访问应用
- 前端:http://localhost:3000(支持热重载)
- 后端 API:http://localhost:8000
- API 文档:http://localhost:8000/docs
生产环境部署
方式一:使用部署脚本(推荐)
- 配置环境变量
cp env.example .env
# 编辑 .env 文件,修改数据库密码、密钥等
vim .env
chmod 600 .env
- 执行部署
./scripts/deploy.sh deploy
- 配置 SSL 证书
DOMAIN=pricing.yourcompany.com EMAIL=admin@yourcompany.com ./scripts/setup-ssl.sh request
方式二:手动部署
- 复制并修改环境配置
cp env.example .env
# 编辑 .env 文件
vim .env
# 修改以下配置:
# - MYSQL_ROOT_PASSWORD: 数据库 root 密码
# - MYSQL_PASSWORD: 应用数据库密码
# - SECRET_KEY: 应用密钥(32位以上随机字符串)
# - CORS_ORIGINS: 允许的跨域来源
chmod 600 .env
- 创建外部网络(如未创建)
docker network create scrm_network
- 启动服务
docker-compose up -d
-
配置 Nginx 反向代理
- 将
nginx.conf添加到主机 Nginx 配置中 - 修改域名为实际域名
- 配置 SSL 证书
- 将
-
刷新 Nginx DNS 缓存
docker exec nginx_proxy nginx -s reload
运维管理
服务管理
# 查看状态
./scripts/deploy.sh status
# 重启服务
./scripts/deploy.sh restart
# 停止服务
./scripts/deploy.sh stop
# 查看日志
./scripts/deploy.sh logs
数据库备份
# 执行备份
./scripts/backup.sh backup
# 查看备份列表
./scripts/backup.sh list
# 恢复备份
./scripts/backup.sh restore <备份文件>
监控检查
# 完整监控报告
./scripts/monitor.sh report
# 快速检查
./scripts/monitor.sh quick
定时任务(建议配置)
# 每日凌晨 2 点备份
0 2 * * * /opt/pricing-model/scripts/backup.sh backup
# 每 5 分钟健康检查
*/5 * * * * /opt/pricing-model/scripts/monitor.sh quick
项目结构
智能项目定价模型/
├── 后端服务/ # FastAPI 后端
│ ├── app/
│ │ ├── main.py # 应用入口
│ │ ├── config.py # 配置管理
│ │ ├── database.py # 数据库连接
│ │ ├── models/ # SQLAlchemy 模型
│ │ ├── schemas/ # Pydantic 模型
│ │ ├── routers/ # API 路由
│ │ ├── services/ # 业务逻辑
│ │ └── middleware/ # 中间件
│ ├── prompts/ # AI 提示词
│ ├── tests/ # 单元测试
│ ├── Dockerfile
│ └── requirements.txt
├── 前端应用/ # Vue 3 前端
│ ├── src/
│ │ ├── views/ # 页面组件
│ │ ├── components/ # 通用组件
│ │ ├── stores/ # Pinia 状态
│ │ ├── api/ # API 封装
│ │ └── router/ # 路由配置
│ ├── eslint.config.js # ESLint 配置
│ ├── Dockerfile
│ └── package.json
├── scripts/ # 运维脚本
│ ├── deploy.sh # 部署脚本
│ ├── backup.sh # 备份脚本
│ ├── setup-ssl.sh # SSL 配置
│ └── monitor.sh # 监控脚本
├── docs/ # 文档
│ ├── 用户操作手册.md
│ └── 系统管理手册.md
├── docker-compose.yml # 生产环境编排
├── docker-compose.dev.yml # 开发环境编排
├── nginx.conf # Nginx 反向代理配置
└── init.sql # 数据库初始化脚本
功能模块
| 阶段 | 模块 | 状态 |
|---|---|---|
| M1 | 基础搭建(框架、基础数据管理) | ✅ 已完成 |
| M2 | 核心功能(成本核算、市场行情) | ✅ 已完成 |
| M3 | 智能功能(智能定价、利润模拟) | ✅ 已完成 |
| M4 | 测试优化(单元测试、性能优化) | ✅ 已完成 |
| M5 | 上线部署(部署脚本、文档) | ✅ 已完成 |
API 文档
启动后端服务后访问:
- Swagger UI:http://localhost:8000/docs
- ReDoc:http://localhost:8000/redoc
生产环境默认关闭 API 文档,如需开启请设置
DEBUG=true
文档
规范遵循
本项目严格遵循:
- 《瑞小美系统技术栈标准与字符标准》
- 《瑞小美 AI 接入规范》
环境要求
硬件
| 资源 | 最低配置 | 推荐配置 |
|---|---|---|
| CPU | 2 核 | 4 核 |
| 内存 | 4 GB | 8 GB |
| 磁盘 | 40 GB | 100 GB |
软件
- Docker 24.0+
- Docker Compose 2.20+
- Linux (推荐 Ubuntu 22.04 / Debian 12)
安全注意事项
.env文件权限必须设置为 600- 禁止将
.env文件提交到 Git - 生产环境必须修改默认密码
- API Key 从门户系统获取,禁止硬编码
License
Copyright © 2026 瑞小美技术团队
瑞小美技术团队 · 2026
Description
Languages
Python
58.9%
Vue
28.7%
TypeScript
7.3%
Shell
3.9%
JavaScript
0.5%
Other
0.6%