# Webhook中继系统 - Admin后台升级计划 ## 1. 核心变更:数据库驱动配置 - 引入 **SQLite + SQLAlchemy** 替代静态 `config.yml`。 - 存储模型: - `Target`:转发目标Webhook(名称、URL、超时)。 - `RemarkRule`:remark值到目标列表的映射(imcgcd03 -> [Target A, Target B])。 - `EventTemplate`:事件模板(event_define_no -> 模板文本)。 - `NotificationChannel`:通知渠道(类型feishu/wecom、Webhook URL、名称)。 - `EventChannelBinding`:事件到渠道的绑定(pay.ali_scaned -> [Channel A, Channel B])。 ## 2. Admin后台界面 - 基于 **FastAPI + Jinja2 + Bootstrap** 提供简易管理UI。 - 功能页面: - **目标管理**:增删改查转发目标。 - **路由规则**:配置 `remark` 对应的目标列表。 - **通知模板**:编辑不同事件的通知文案。 - **通知渠道**:添加飞书/企业微信机器人链接。 - **通知绑定**:将事件与通知渠道关联。 ## 3. 系统架构调整 - `app/db.py`:数据库连接与模型定义。 - `app/admin.py`:管理后台路由与CRUD逻辑。 - `app/config.py`:改为混合模式,优先从DB加载动态配置,保留文件配置作为默认值/种子数据。 - `app/services/relay.py` & `notify.py`:适配新的DB驱动配置查询。 ## 4. 实施步骤 1. **依赖更新**:添加 `sqlalchemy`、`jinja2`、`python-multipart`。 2. **数据层实现**:定义ORM模型与初始化脚本(支持从现有yaml导入种子数据)。 3. **后台UI实现**:创建HTML模板与FastAPI路由。 4. **配置适配**:改造 `load_config` 逻辑,支持热重载或每次请求查询DB。 5. **构建与部署**:更新Dockerfile,重新构建并运行,验证后台配置生效。