Commit Graph

35 Commits

Author SHA1 Message Date
afcf30b519 feat: 新增睿美云对接模块
All checks were successful
continuous-integration/drone/push Build is passing
- 扩展 ToolConfig 配置类型,新增 external_api 类型
- 实现接口注册表,包含 90+ 睿美云开放接口定义
- 实现 TPOS SHA256WithRSA 签名鉴权
- 实现睿美云 API 客户端,支持多租户配置
- 新增代理路由 /api/ruimeiyun/call/{api_name}
- 支持接口权限控制和健康检查
2026-01-30 17:27:58 +08:00
c1ba17f809 fix: 恢复租户应用订阅的自定义配置功能
All checks were successful
continuous-integration/drone/push Build is passing
定时任务提交(104487f)误删了 custom_configs 相关代码,现恢复:
- backend/app/models/tenant_app.py: 恢复 custom_configs 数据库字段
- backend/app/routers/tenant_apps.py: 恢复 CustomConfigItem、custom_configs 逻辑、get_token API
2026-01-29 17:47:57 +08:00
830361073b fix: 恢复应用管理的配置项定义功能
All checks were successful
continuous-integration/drone/push Build is passing
定时任务提交(104487f)误删了应用 config_schema 相关代码,现恢复:
- backend/app/models/app.py: 恢复 config_schema 数据库字段
- backend/app/routers/apps.py: 恢复 ConfigSchemaItem、API 路由、格式化函数
- frontend/src/views/apps/index.vue: 恢复配置项编辑 UI
2026-01-29 17:45:43 +08:00
b0f7d1ba9e fix: 修复定时任务模块问题
All checks were successful
continuous-integration/drone/push Build is passing
1. 修复 SDK 文档 API 路由顺序问题
   - 将静态路由 /sdk-docs, /test-script, /secrets 移到动态路由 /{task_id} 之前
   - 解决 "请求参数验证失败" 错误

2. 优化错误页面体验
   - 使用 sessionStorage 传递错误信息,URL 保持干净
   - 使用 router.replace 替代 push,浏览器返回不会停留在错误页
   - 记录来源页面,支持正确返回

3. 增强网络错误处理
   - 区分超时、网络错误、服务不可用
   - 后端未启动时显示友好的 "服务暂时不可用" 提示

4. 添加定时任务模块文档
2026-01-28 18:18:04 +08:00
97d0aac734 feat: 扩展消息类型支持钉钉/企微所有格式
All checks were successful
continuous-integration/drone/push Build is passing
钉钉机器人支持:
- text: 纯文本(支持@人)
- markdown: Markdown格式
- link: 链接消息
- actionCard: 交互卡片(整体跳转/独立跳转按钮)
- feedCard: 信息流卡片

企微机器人支持:
- text: 纯文本(支持@人)
- markdown: Markdown格式
- image: 图片
- news: 图文消息
- template_card: 模板卡片(文本通知/图文展示/按钮交互)

使用方式: result = {'msg_type': 'actionCard', 'title': '...', 'content': '...', 'buttons': [...]}
2026-01-28 17:44:01 +08:00
3ebd8b20a4 fix: 添加受限的 __import__ 函数支持白名单模块导入
All checks were successful
continuous-integration/drone/push Build is passing
解决脚本执行时 KeyError: '__import__' 错误
2026-01-28 17:34:38 +08:00
333bbe57eb feat: 钉钉机器人支持加签安全设置
All checks were successful
continuous-integration/drone/push Build is passing
- 通知渠道增加 sign_secret 字段存储加签密钥
- 发送钉钉消息时自动计算签名
- 前端增加加签密钥输入框(仅钉钉机器人显示)
2026-01-28 17:19:53 +08:00
b8e19dcde6 fix: 重命名通知渠道模型避免与 alert 模块冲突
All checks were successful
continuous-integration/drone/push Build is passing
- NotificationChannel -> TaskNotifyChannel
- platform_notification_channels -> platform_task_notify_channels
2026-01-28 17:06:28 +08:00
2fbba63884 feat: 实现通知渠道管理功能
All checks were successful
continuous-integration/drone/push Build is passing
- 新增 platform_notification_channels 表管理通知渠道(钉钉/企微机器人)
- 新增通知渠道管理页面,支持创建、编辑、测试、删除
- 定时任务增加通知渠道选择和企微应用选择
- 脚本执行支持返回值(result变量),自动发送到配置的渠道
- 调度器执行脚本后根据配置自动发送通知

使用方式:
1. 在「通知渠道」页面为租户配置钉钉/企微机器人
2. 创建定时任务时选择通知渠道
3. 脚本中设置 result = {'content': '内容', 'title': '标题'}
4. 任务执行后自动发送到配置的渠道
2026-01-28 17:02:20 +08:00
d9fa9708ce fix: 修复定时任务模型字段与数据库表不匹配的问题
All checks were successful
continuous-integration/drone/push Build is passing
- task_type -> execution_type
- status -> is_enabled
- 移除不存在的字段 webhook_method, webhook_headers, script_timeout
- time_points/input_params 适配 JSON 类型
2026-01-28 16:45:58 +08:00
104487f082 feat: 实现定时任务系统
All checks were successful
continuous-integration/drone/push Build is passing
- 新增 platform_scheduled_tasks, platform_task_logs, platform_script_vars, platform_secrets 数据库表
- 实现 ScriptSDK 提供 AI/通知/DB/HTTP/变量存储/参数获取等功能
- 实现安全的脚本执行器,支持沙箱环境和禁止危险操作
- 实现 APScheduler 调度服务,支持简单时间点和 CRON 表达式
- 新增定时任务 API 路由,包含 CRUD、执行、日志、密钥管理
- 新增定时任务前端页面,支持脚本编辑、测试运行、日志查看
2026-01-28 16:38:19 +08:00
2f9d85edb6 feat: 脚本管理页面(类似青龙面板)
Some checks failed
continuous-integration/drone/push Build is failing
- 新增脚本管理页面,左右分栏布局
- 集成 Monaco Editor 代码编辑器(语法高亮、行号、快捷键)
- 支持脚本 CRUD、运行、复制等操作
- 定时任务支持从脚本库导入脚本
- 新增 platform_scripts 表存储脚本
2026-01-28 13:13:08 +08:00
9b72e6127f feat: 脚本执行平台增强功能
Some checks failed
continuous-integration/drone/push Build is failing
- 新增重试和失败告警功能(支持自动重试N次,失败后钉钉/企微通知)
- 新增密钥管理(安全存储API Key等敏感信息)
- 新增脚本模板库(预置常用脚本模板)
- 新增脚本版本管理(自动保存历史版本,支持回滚)
- 新增执行统计(成功率、平均耗时、7日趋势)
- SDK 新增多租户遍历能力(get_tenants/get_tenant_config/get_all_tenant_configs)
- SDK 新增密钥读取方法(get_secret)
2026-01-28 11:59:50 +08:00
644255891e feat: 脚本执行平台功能
Some checks failed
continuous-integration/drone/push Build is failing
- 支持 Python 脚本定时执行(类似青龙面板)
- 内置 SDK:AI大模型、钉钉/企微通知、数据库查询、HTTP请求、变量存储
- 安全沙箱执行,禁用危险模块
- 前端脚本编辑器,支持测试执行
- SDK 文档查看
- 日志通过 TraceID 与 platform_logs 关联
2026-01-28 11:45:02 +08:00
ed88099cf0 feat: 定时任务调度功能
All checks were successful
continuous-integration/drone/push Build is passing
- 新增 platform_scheduled_tasks 和 platform_task_logs 数据表
- 实现 APScheduler 调度器服务(支持简单模式和CRON表达式)
- 添加定时任务 CRUD API
- 支持手动触发执行和查看执行日志
- 前端任务管理页面
2026-01-28 11:27:42 +08:00
cf4d6afbc8 feat: 应用配置项定义功能
All checks were successful
continuous-integration/drone/push Build is passing
- 后端: App 模型添加 config_schema 字段,支持配置项定义
- 后端: apps API 支持 config_schema 的增删改查
- 前端: 应用管理页面支持定义配置项(text/radio/select/switch类型)
- 前端: 租户订阅页面根据应用 schema 动态渲染对应表单控件
- 支持设置选项、默认值、必填等属性
2026-01-27 17:26:49 +08:00
e37466a7cc feat: 租户应用配置支持自定义参数
All checks were successful
continuous-integration/drone/push Build is passing
- 后端: TenantApp 模型添加 custom_configs 字段 (LONGTEXT)
- 后端: tenant_apps API 支持自定义配置的增删改查
- 前端: 应用订阅编辑对话框增加自定义配置编辑区域
- 支持 key-value-备注 三字段结构
- value 使用 textarea 支持超长文本(如提示词)
2026-01-27 17:15:19 +08:00
7134947c0c feat: 添加租户工具配置系统
All checks were successful
continuous-integration/drone/push Build is passing
- 新增 platform_tool_configs 表和 ToolConfig Model
- 新增工具配置 CRUD API (/api/tool-configs)
- 租户详情页添加工具配置管理 Tab
- 修复查看 Token 显示问题,添加专用获取接口
2026-01-27 11:30:02 +08:00
8e675c207d feat: 添加 /api/stats/daily 每日统计接口
All checks were successful
continuous-integration/drone/push Build is passing
2026-01-24 18:19:23 +08:00
90d10537c2 fix: 增加列表接口 size 参数限制到 1000
All checks were successful
continuous-integration/drone/push Build is passing
修复下拉列表请求 size=1000 导致 422 验证错误的问题
2026-01-24 18:01:09 +08:00
aa3f5f6108 fix: 修复 HTTPBearer 返回 422 错误的问题
All checks were successful
continuous-integration/drone/push Build is passing
- 设置 HTTPBearer(auto_error=False) 避免验证错误
- 在 get_current_user 中手动检查并返回 401
2026-01-24 17:39:04 +08:00
9ff89f4a7d fix: 修复日志查询接口访问不存在字段的问题
All checks were successful
continuous-integration/drone/push Build is passing
- ip_address 从 context.ip 获取
- 移除不存在的 extra_data 字段
- 修复 CSV/Excel 导出中的同样问题
2026-01-24 17:25:17 +08:00
111
6c6c48cf71 feat: 新增告警、成本、配额、微信模块及缓存服务
All checks were successful
continuous-integration/drone/push Build is passing
- 新增告警模块 (alerts): 告警规则配置与触发
- 新增成本管理模块 (cost): 成本统计与分析
- 新增配额模块 (quota): 配额管理与限制
- 新增微信模块 (wechat): 微信相关功能接口
- 新增缓存服务 (cache): Redis 缓存封装
- 新增请求日志中间件 (request_logger)
- 新增异常处理和链路追踪中间件
- 更新 dashboard 前端展示
- 更新 SDK stats_client 功能
2026-01-24 16:53:47 +08:00
111
1c95fef01a fix: health 路由加上 /api 前缀
All checks were successful
continuous-integration/drone/push Build is passing
2026-01-24 10:24:59 +08:00
111
63e38ceb60 fix: 兼容 corp_id 字段不存在 + 添加迁移 API
All checks were successful
continuous-integration/drone/push Build is passing
2026-01-24 10:23:19 +08:00
111
ab84f6b87d feat: 企微应用租户下拉选择 + corp_id 自动填入
All checks were successful
continuous-integration/drone/push Build is passing
- 租户表增加 corp_id 字段(企业微信企业ID)
- 租户管理页面支持配置 corp_id
- 企微应用页面租户从下拉选择
- 选择租户后自动填入 corp_id 并禁用编辑
- 提示用户如租户未配置 corp_id 需先去配置
2026-01-24 10:20:02 +08:00
111
0a799ee276 fix: 完善菜单和应用验证
All checks were successful
continuous-integration/drone/push Build is passing
- 侧边栏菜单增加「应用管理」和「企微应用」
- 租户订阅页面应用选择增加前端验证
- 后端增加 app_code 存在性验证
2026-01-24 10:10:56 +08:00
111
6a93e05ec3 feat: 应用扁平化与 Token 验证 API
All checks were successful
continuous-integration/drone/push Build is passing
- 新增 /api/auth/verify 接口供外部应用验证 token
- 简化应用管理:移除 tools 字段,每个应用独立存在
- 简化应用配置:移除 allowed_tools,专注于租户订阅
- 优化 Token 展示和复制功能
2026-01-24 10:05:24 +08:00
111
c4bd7c8251 feat: 租户级企微配置改造
All checks were successful
continuous-integration/drone/push Build is passing
- 新增 platform_tenant_wechat_apps 表(租户企微应用配置)
- platform_apps 增加 require_jssdk 字段
- platform_tenant_apps 增加 wechat_app_id 关联字段
- 新增企微应用管理 API 和页面
- 应用管理页面增加 JS-SDK 开关
- 应用配置页面增加企微应用选择
2026-01-23 19:05:00 +08:00
111
f815b29c51 feat: 静态 Token 鉴权改造
All checks were successful
continuous-integration/drone/push Build is passing
- 将 token_secret 改为 access_token(长期有效)
- 移除 token_required 字段,统一使用 token 验证
- 生成链接简化为 ?tid=xxx&token=xxx 格式
- 前端移除签名验证开关,链接永久有效
2026-01-23 18:43:04 +08:00
111
39f33d7ac5 feat: 添加应用管理和生成签名链接功能
All checks were successful
continuous-integration/drone/push Build is passing
- 新增 platform_apps 表和 App 模型
- 新增应用管理页面 /apps
- 应用配置页面添加"生成链接"功能
- 支持一键生成带签名的访问 URL
2026-01-23 18:22:17 +08:00
111
2a9f62bef8 fix: use correct token fields (input_tokens + output_tokens)
All checks were successful
continuous-integration/drone/push Build is passing
2026-01-23 16:14:55 +08:00
111
b018844078 fix: add GET endpoints for stats summary and logs query
All checks were successful
continuous-integration/drone/push Build is passing
2026-01-23 16:12:18 +08:00
111
b89d5ddee9 feat: add admin UI frontend and complete backend APIs
Some checks failed
continuous-integration/drone/push Build is failing
- Add Vue 3 frontend with Element Plus
- Implement login, dashboard, tenant management
- Add app configuration, logs viewer, stats pages
- Add user management for admins
- Update Drone CI to build and deploy frontend
- Frontend ports: 3001 (test), 4001 (prod)
2026-01-23 15:51:37 +08:00
111
daa8125c58 Initial commit: 000-platform project skeleton
All checks were successful
continuous-integration/drone/push Build is passing
2026-01-23 14:32:09 +08:00