feat: 添加公司AI管理平台基础架构 添加了完整的FastAPI后端项目结构,包括: - 环境配置文件(.env.example)和项目说明文档(README.md、AGENTS.md) - Dockerfile用于容器化部署 - 核心基础设施:配置管理、数据库连接、调度器、安全认证 - 模块化设计:AI代理、审批流程、审计日志、业务台账等功能模块 - 支持多数据库连接(主库和遗留系统只读库) - AI适配器支持OpenClaw、Hermes、OpenAI兼容接口 - 飞书集成、报表生成、风险监控等企业级功能 - 完整的依赖管理和测试指南 ```
27 lines
888 B
Python
27 lines
888 B
Python
from sqlalchemy.orm import DeclarativeMeta
|
|
|
|
from app.modules.business import models
|
|
|
|
|
|
DOMAIN_MODELS: dict[str, type[DeclarativeMeta]] = {
|
|
"projects": models.Project,
|
|
"tasks": models.WorkTask,
|
|
"procurements": models.Procurement,
|
|
"expenses": models.Expense,
|
|
"fund-accounts": models.FundAccount,
|
|
"policies": models.Policy,
|
|
"standards": models.Standard,
|
|
"performance-metrics": models.PerformanceMetric,
|
|
"suppliers": models.Supplier,
|
|
}
|
|
|
|
LOW_RISK_DOMAINS = {"projects", "tasks", "procurements", "expenses", "policies", "standards"}
|
|
HIGH_RISK_DOMAINS = {"fund-accounts", "performance-metrics"}
|
|
|
|
|
|
def get_domain_model(domain: str) -> type[DeclarativeMeta]:
|
|
if domain not in DOMAIN_MODELS:
|
|
supported = ", ".join(sorted(DOMAIN_MODELS))
|
|
raise KeyError(f"Unsupported domain '{domain}'. Supported: {supported}")
|
|
return DOMAIN_MODELS[domain]
|