Files
rlz/docs/配置项说明.md
renjianbo 805ed0298b feat: 新增多角色系统(派单/分润/推广/区域)
- 后端:RlzDispatch/Profit/Promotion/Region 控制器、服务、Mapper、领域模型
- 权限:MethodSecurityConfig + PermissionInterceptor
- 管理后台:派单/分润/推广/区域 页面与 API
- Android 陪护端:派单/运营/退款 Fragment 及布局
- 小程序:推广员子包、派单/运营/退款/检索子包、自定义 tabBar
- 文档:多角色系统方案、角色权限矩阵、用户操作手册等

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-10-12 00:09:45 +08:00

191 lines
5.2 KiB
Markdown

# 瑞来健康 — 配置项说明
> 更新日期: 2026-06-08
> 适用于: 生产环境部署
---
## 一、环境变量 (.env)
部署时通过 `docker-compose.yml` 从 `.env` 文件注入环境变量。文件位置:
```
/home/renjianbo/saars/rlz/.env
```
### 1.1 基础运行配置
| 变量 | 默认值 | 说明 |
|------|--------|------|
| `BACKEND_PUBLISH` | 8039 | 后端服务暴露端口 |
| `SERVER_PORT` | 8039 | Spring Boot 监听端口 |
| `SPRING_PROFILES_ACTIVE` | docker | 激活的 Spring Profile |
| `RUOYI_PROFILE` | /data/ruoyi/upload | 文件上传目录 |
### 1.2 数据库
| 变量 | 默认值 | 说明 |
|------|--------|------|
| `MYSQL_HOST` | (必填) | MySQL 主机地址 |
| `MYSQL_PORT` | 3306 | MySQL 端口 |
| `MYSQL_DATABASE` | rlz | 数据库名 |
| `MYSQL_USER` | root | 数据库用户 |
| `MYSQL_PASSWORD` | (必填) | 数据库密码 |
| `MYSQL_USE_SSL` | true | 是否使用 SSL 连接 |
当前生产环境使用 **腾讯云 CynosDB MySQL**:
- 地址: `gz-cynosdbmysql-grp-d26pzce5.sql.tencentcdb.com:24936`
### 1.3 Redis
| 变量 | 默认值 | 说明 |
|------|--------|------|
| `REDIS_HOST` | redis | Redis 主机(docker-compose 内部) |
| `REDIS_PORT` | 6379 | Redis 端口 |
### 1.4 安全配置
| 变量 | 默认值 | 说明 |
|------|--------|------|
| `TOKEN_SECRET` | (必填) | JWT Token 签名密钥, 建议 `openssl rand -hex 32` 生成 |
| `SWAGGER_ENABLED` | false | Swagger API 文档开关(生产环境必须 false) |
| `DRUID_MONITOR_ENABLED` | false | Druid 监控面板开关(生产环境必须 false) |
| `DRUID_ALLOW_IP` | 127.0.0.1 | Druid 允许访问 IP |
| `DRUID_PASSWORD` | (空) | Druid 监控登录密码 |
| `AES_ENCRYPT_KEY` | baiyangdianzicom | AES 加密密钥(用于 authToken 生成) |
### 1.5 微信支付配置
| 变量 | 默认值 | 说明 |
|------|--------|------|
| `WX_APP_ID` | (必填) | 微信小程序 AppID |
| `WX_SECRET` | (必填) | 微信小程序 AppSecret |
| `WX_MCH_ID` | (必填) | 微信支付商户号 |
| `WX_MCH_SERIAL_NO` | (必填) | 商户 API 证书序列号 |
| `WX_API_V3_KEY` | (必填) | API v3 密钥(32位) |
| `WX_PRIVATE_KEY` | (必填) | 商户 RSA 私钥(PKCS#8 PEM格式) |
| `WX_NOTIFY_URL` | (必填) | 支付回调地址 |
| `WX_REFUND_NOTIFY_URL` | (必填) | 退款回调地址 |
**注意**: `WX_PRIVATE_KEY` 为多行 PEM 格式, 直接写入 `.env` 需要特殊处理:
```bash
# 方案一: base64 编码后写入(推荐)
WX_PRIVATE_KEY_BASE64=$(cat apiclient_key.pem | base64 -w0)
# 方案二: 使用 Docker secrets
```
---
## 二、application.yml 主要配置项
文件位置: `rlz/ruoyi-admin/src/main/resources/application.yml`
### 2.1 Token 配置
```yaml
token:
header: Authorization # JWT 请求头
secret: ${TOKEN_SECRET} # 签名密钥(来自环境变量)
expireTime: 30 # 过期时间(天)
```
### 2.2 验证码配置
```yaml
captcha:
type: math # 验证码类型: math(数学) / char(字符)
expiration: 2 # Redis 中验证码有效期(分钟)
```
### 2.3 文件上传
```yaml
ruoyi:
profile: /data/ruoyi/upload # 上传文件存储路径
uploadPath: /rlz # 对外访问路径前缀
```
---
## 三、推广分润配置
通过 `rlz_promoter_config` 表管理, 支持运行时动态调整:
| config_key | 默认值 | 说明 |
|------------|--------|------|
| `level1_rate` | 5 | 一级推广佣金比例(%) |
| `level2_rate` | 3 | 二级推广佣金比例(%) |
| `level3_rate` | 2 | 三级推广佣金比例(%) |
| `caregiver_rate` | 80 | 陪诊师服务费比例(%) |
| `dispatcher_rate` | 2 | 调度员分润比例(%) |
| `operations_rate` | 1 | 运营经理区域分润比例(%) |
**修改方式**: 登录管理后台 → 财务管理 → 平台配置, 或直接 SQL:
```sql
UPDATE rlz_promoter_config SET config_value = '6' WHERE config_key = 'level1_rate';
```
### 分润计算示例
订单金额 1000 元:
| 角色 | 比例 | 金额 |
|------|------|------|
| 陪诊师 | 80% | 800 元 |
| 调度员 | 2% | 20 元 |
| 一级推广员 | 5% | 50 元 |
| 二级推广员 | 3% | 30 元 |
| 三级推广员 | 2% | 20 元 |
| 运营经理 | 1% | 10 元 |
| 平台留存 | 7% | 70 元 |
---
## 四、Nginx 配置
管理后台和 API 通过 Nginx 反向代理。当前配置容器: `rlz-ui-server` (端口 8050)
关键配置片段:
```nginx
# 管理后台
location / {
root /usr/share/nginx/html;
try_files $uri $uri/ /index.html;
}
# 后端 API 代理(通过域名 prod-api 转发)
location /prod-api/ {
proxy_pass http://rlz-backend:8039/;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
```
对外访问地址:
- 管理后台: `http://101.43.95.130:8050`
- 后端 API: `https://ruilaizipj.com/prod-api/` (Nginx HTTPS)
---
## 五、健康检查
```bash
# 后端健康检查
curl -s http://localhost:8039/captchaImage | head -c 100
# Redis
docker exec rlz-redis redis-cli PING
# 查看容器状态
docker ps --format "table {{.Names}}\t{{.Status}}\t{{.Ports}}"
```
## 六、日志位置
| 日志 | 路径 |
|------|------|
| 后端应用日志 | `/data/ruoyi/logs/` |
| Docker 容器日志 | `docker logs rlz-backend` |
| 操作日志 | `sys_oper_log` 表 |
| 登录日志 | `sys_logininfor` 表 |