Commit Graph

142 Commits

Author SHA1 Message Date
mediabot-pt
c823878ae0 fix: 解决 ConfigServiceImpl 与 SiteSnapshotServiceImpl 循环依赖
- 移除 SiteSnapshotServiceImpl 对 ConfigService 的依赖,直接使用 SiteConfigMapper
- ConfigServiceImpl/SitePagesServiceImpl/RiskRuleServiceImpl 改用 ApplicationEvent 异步触发快照更新
- 新增 SnapshotUpdateEvent 和 SnapshotUpdateListener
- ParApplication 添加 @EnableAsync 支持异步事件处理
- AdminController 中 updateSnapshot 调用改为发布事件
2026-07-07 11:17:22 +08:00
mediabot-pt
b25aa82c73 重构: 引入 site_snapshots 表统一站点配置快照管理
- 新增 site_snapshots 表 (V16 迁移),统一存储脚本+页面+规则的合并快照
- 新增 SiteSnapshot 实体、Mapper、Service
- 配置变更时自动触发快照更新 (checksum 去重)
- 新增 SnapshotController 提供 /api/v1/snapshots/{siteId} 端点,支持 ETag/304
- 重构 publishManifest 使用快照服务,只发布变更站点
- 保留七牛云 CDN 作为灾备层
- 兼容旧 /bundle 和 /bundles/ 路径
2026-07-07 11:09:52 +08:00
mediabot-pt
98bc5b3183 feat: 合并配置包 - publish 时生成 bundle,mediabot 下载保证版本一致 2026-07-07 10:50:37 +08:00
mediabot-pt
223528817e fix: 修复 Admin 权限校验与 GET /api/v1/configs 404 问题 2026-07-07 08:59:39 +08:00
mediabot-pt
a0780c64bb fix: 修复mediabot拉取风险规则失败的三个问题
1. HMAC拦截器跳过GET请求,mediabot拉取规则不再被401拦截
2. findByIdentifier增加site_type回退查找,兼容按site_type查询
3. saveRules自动填充site_type字段,从站点表获取
4. GET接口version参数支持非数字值如latest
2026-07-07 00:33:46 +08:00
mediabot-pt
15a3c381d0 fix: 修复risk_rules表site_type字段无默认值导致插入失败问题 2026-07-07 00:19:01 +08:00
mediabot-pt
773ad8fdb7 feat: page config upload button for normal sites, add cloud upload endpoint
- SitePagesController: add PUT /admin/site-pages/{siteId}/upload for uploading normal site pages to cloud storage

- SitePages.vue: show upload button for both default templates and normal sites
2026-07-06 15:13:09 +08:00
mediabot-pt
8724774850 feat: 页面配置入口地址添加验证按钮,解析失败自动提交错误日志
- 后端新增 POST /api/v1/admin/site-pages/verify 端点
  - 接收 siteId/url/pageKey,用对应 Groovy 脚本访问URL并解析
  - 解析失败(matched=false)时自动提交 error-log 到 PAR
  - 支持 HTTP_ERROR/EMPTY_RESPONSE/PARSE_FAILED/SCRIPT_ERROR 多种错误类型
- 前端 SitePages.vue 每条页面入口 URL 后添加验证按钮
  - 成功显示绿色 ✓,失败显示红色 ✗,并展示解析结果消息
  - 显示响应耗时
- api/index.js 新增 adapter.verifyPage 方法
2026-07-06 13:39:32 +08:00
mediabot-pt
184e5161fc fix: getVersion 端点加入默认模板版本回退逻辑,与 getPages 保持一致 2026-07-06 12:40:40 +08:00
mediabot-pt
7c31cb0421 refactor: 风险规则统一version+source判断+默认回退 2026-07-06 01:38:06 +08:00
mediabot-pt
821f0b909d feat: 页面配置增加authType认证方式(NONE/COOKIE/TOKEN/BASIC/API_KEY) 2026-07-06 01:26:09 +08:00
mediabot-pt
18b045b4ba feat: 页面配置key改为枚举下拉框+自动填method 2026-07-06 01:00:30 +08:00
mediabot-pt
ca02476c3c fix: RiskRuleController两处writeValueAsString加try-catch 2026-07-06 00:45:52 +08:00
mediabot-pt
92e0098680 fix: writeValueAsString异常处理 2026-07-06 00:40:35 +08:00
mediabot-pt
5345b506e2 feat: 风险规则增加上传按钮+对应后端接口(七牛云) 2026-07-06 00:36:46 +08:00
mediabot-pt
cf4c97daf5 feat: 默认页面模板增加上传按钮+对应后端接口 2026-07-06 00:35:30 +08:00
mediabot-pt
c140105cdc feat: 页面配置默认模板回退+删除功能 2026-07-06 00:18:27 +08:00
mediabot-pt
d04dcdec4f feat: 删除站点自定义脚本回退默认模板 2026-07-06 00:11:40 +08:00
mediabot-pt
3e7467c401 feat: 脚本版本接口区分自定义/默认+返回source字段 2026-07-05 23:56:43 +08:00
mediabot-pt
4c751b6586 feat: 默认脚本版本号管理+每次上传递增 2026-07-05 23:55:51 +08:00
mediabot-pt
b7adbfd18a feat: 站点编辑加发布按钮生成manifest上传七牛云 2026-07-05 23:54:25 +08:00
mediabot-pt
25df4203d7 feat: 默认脚本分保存本地和上传七牛云两个按钮 2026-07-05 23:46:17 +08:00
mediabot-pt
e36404f6e7 feat: manifest加hasRisk字段 2026-07-05 22:39:20 +08:00
mediabot-pt
8702f087ab feat: manifest返回tags+description字段 2026-07-05 22:35:59 +08:00
mediabot-pt
f493d52b5f feat: 每站点独立版本号+总版本=SUM+规则变更同步所有同类型站点 2026-07-05 22:06:11 +08:00
mediabot-pt
8a2f6144a7 feat: Manifest全局版本号(站点/页面/规则/脚本任一变则递增) 2026-07-05 22:05:00 +08:00
mediabot-pt
5d1af9c70a fix: MySQL8.4不支持IF NOT EXISTS改为ALTER TABLE单独try-catch 2026-07-05 21:54:05 +08:00
mediabot-pt
3f5ea6c4da fix: V15迁移改为FlywayConfig直接执行SQL避免扫描问题 2026-07-05 21:47:46 +08:00
mediabot-pt
512bc12a20 feat: 站点增加标签+简介字段+表单编辑双向同步 2026-07-05 21:28:01 +08:00
mediabot-pt
e6aaa3b238 fix: Controller编译错误(private mapper+import缺失+字段位置) 2026-07-05 20:00:03 +08:00
mediabot-pt
e0e61a0afc refactor: 默认模板服务端+统一导出导入+页面配置版本历史+前端 2026-07-05 19:55:51 +08:00
mediabot-pt
4ac61a1868 refactor: 页面+规则存七牛云本地缓存+版本历史接口 2026-07-05 19:09:57 +08:00
mediabot-pt
692b1bd863 feat: 默认脚本编辑弹窗+后端读写default脚本接口 2026-07-05 12:41:37 +08:00
mediabot-pt
73c01b3573 refactor: 拆分两个独立菜单(页面配置+风险规则)+CRUD完整+删除接口 2026-07-05 00:08:56 +08:00
mediabot-pt
31800b9643 fix: PUT/POST新接口加入鉴权拦截器+uploadScript版本号自增 2026-07-04 23:39:45 +08:00
mediabot-pt
2ced6f5dcb feat: mediabo接口实现(pages/scripts/risk-rules)+DB迁移脚本 2026-07-04 23:35:45 +08:00
mediabot-pt
c2ae8ab89c fix: 脚本导出改为ZIP(每个站点一个.groovy文件)+导入改为上传ZIP 2026-07-02 12:57:09 +08:00
mediabot-pt
dc0a9a09d8 feat: 脚本批量导出(JSON)和导入接口+清理重复import 2026-07-02 12:55:11 +08:00
mediabot-pt
4afc3b632b refactor: 删除旧AdapterEngine及JSON配置相关代码,全面迁移到Groovy脚本 2026-07-02 11:33:11 +08:00
mediabot-pt
18e071a201 refactor: 回退,去掉内容代理,回归简单方案 2026-07-01 23:10:29 +08:00
mediabot-pt
7c6d81da14 refactor: 代理接口纯路径透传,存过的返回/没存过404,脚本可回退实时HTTP 2026-07-01 23:08:55 +08:00
mediabot-pt
40fd3eb4ad feat: 内容代理支持页面类型别名(sync/search/sign/detail) 2026-07-01 23:07:40 +08:00
mediabot-pt
404bf729f4 fix: 内容代理支持查询参数+精确匹配+回退+JSON content-type 2026-07-01 23:02:59 +08:00
mediabot-pt
03b7c289be feat: 内容代理接口 admin/sites/{siteId}/content/**,Groovy脚本httpGet对齐 2026-07-01 23:01:42 +08:00
mediabot-pt
d548ee4385 refactor: SubmitResult sealed接口强类型替代ApiResponse<Object> 2026-07-01 17:23:35 +08:00
mediabot-pt
3529b94830 fix: submitAccessResult返回类型改为Object兼容Map和DTO 2026-07-01 17:22:35 +08:00
mediabot-pt
2972ebab7d feat: access-result提交5分钟内容去重,防止mediabot重复提交 2026-07-01 17:09:38 +08:00
mediabot-pt
ebb7aa7a2d fix: ConfigController手动构造器遗漏siteMapper参数 2026-07-01 16:25:48 +08:00
mediabot-pt
85f63ad5ec feat: GET /configs/{siteId}/script 无版本号取最新脚本+默认模板回退 2026-07-01 16:20:44 +08:00
mediabot-pt
f2c98582a4 feat: 四类站点默认脚本+无自定义脚本时按siteType自动加载默认模板 2026-07-01 14:53:07 +08:00