Files
company-ai-platform/docs/mysql_integration.md
JiuContinent 71ca804764 ```
feat: 添加公司AI管理平台基础架构

添加了完整的FastAPI后端项目结构,包括:
- 环境配置文件(.env.example)和项目说明文档(README.md、AGENTS.md)
- Dockerfile用于容器化部署
- 核心基础设施:配置管理、数据库连接、调度器、安全认证
- 模块化设计:AI代理、审批流程、审计日志、业务台账等功能模块
- 支持多数据库连接(主库和遗留系统只读库)
- AI适配器支持OpenClaw、Hermes、OpenAI兼容接口
- 飞书集成、报表生成、风险监控等企业级功能
- 完整的依赖管理和测试指南
```
2026-06-21 21:57:28 +08:00

95 lines
1.5 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 现有 MySQL 接入说明
## 推荐方式
先创建只读账号:
```sql
CREATE USER 'company_ai_ro'@'%' IDENTIFIED BY 'strong_password';
GRANT SELECT ON existing_project_system.* TO 'company_ai_ro'@'%';
FLUSH PRIVILEGES;
```
配置:
```text
LEGACY_DATABASE_URL=mysql+pymysql://company_ai_ro:strong_password@host:3306/existing_project_system?charset=utf8mb4
```
## 表结构探查
```text
GET /api/v1/integrations/mysql/tables
GET /api/v1/integrations/mysql/tables/{table_name}
```
## 只读查询
```json
{
"sql": "SELECT id, name, status FROM projects WHERE status != :status",
"params": {"status": "closed"},
"limit": 100
}
```
系统会拒绝:
```text
INSERT
UPDATE
DELETE
DROP
ALTER
TRUNCATE
CREATE
```
## 项目同步
预览同步:
```text
POST /api/v1/integrations/mysql/projects/sync
```
```json
{
"dry_run": true,
"limit": 100,
"field_map": {
"name": "project_name",
"owner": "manager_name",
"status": "project_status",
"progress_percent": "progress",
"budget_amount": "budget",
"actual_amount": "actual_cost"
}
}
```
确认无误后正式同步:
```json
{
"dry_run": false,
"limit": 100,
"actor": "admin"
}
```
同步只写入本系统内部 `projects` 表,不写回原项目管理系统。
## 写回策略
第一阶段不要写回。
第二阶段如果必须写回,优先走原项目管理系统 API没有 API 时,再做受控写回,并必须包含:
- 权限校验
- 参数校验
- 审批单号
- 事务
- 审计日志
- 回滚方案