mediabot-pt
8b004e5c45
feat: 风险规则缓刑天数可配置
...
- DRATIO/RATIO 编辑区域增加缓刑天数输入框
- 规则摘要和卡片头部的缓刑天数文案改为动态读取 graceDays 字段
- DRATIO 预设模板增加 graceDays: 7 默认值
- 不填时默认7天,向后兼容
2026-07-12 23:18:55 +08:00
mediabot-pt
b95c42e6e5
fix: 修复 RiskRules.vue ruleText 函数中 DRATIO 分支缺少 if 条件导致编译错误
2026-07-11 23:31:30 +08:00
mediabot-pt
a68aa94fc2
feat: 页面配置入口加 ↗ 打开按钮,可直接跳转站点页面
2026-07-10 18:48:29 +08:00
mediabot-pt
6c40505b73
fix: TRAFFIC 规则两个条件共用同一个阈值天数
2026-07-10 15:57:52 +08:00
mediabot-pt
dee204c99b
feat: TRAFFIC 规则增加连续未登录天数输入,预设默认90天
2026-07-10 15:56:23 +08:00
mediabot-pt
cebe8c67c2
refactor: 分享率 DRATIO 预设默认值改为下载量>0且分享率<1.0
2026-07-10 11:10:18 +08:00
mediabot-pt
c714086f2d
refactor: 前端defaultUrls+compose key sync→index
2026-07-10 10:58:43 +08:00
mediabot-pt
36951607fa
fix: 修复v-else/v-if相邻破坏编译
2026-07-10 09:45:25 +08:00
mediabot-pt
58a84425c7
feat: 页面编辑器支持compose复合操作(+复合按钮+标签显示)
2026-07-10 09:41:13 +08:00
mediabot-pt
b0be61669c
fix: 新人考核标题'不满足'→'低于阈值',与下方'低于X'文案一致
2026-07-09 00:57:38 +08:00
mediabot-pt
88371180bb
fix: 新人考核标题改为风险方向,'考核要求'→'以下任一不满足→封号'
2026-07-09 00:07:49 +08:00
mediabot-pt
a4607a568c
fix: 新人考核默认条件 GTE→LT,与显示'低于'保持一致
2026-07-09 00:00:14 +08:00
mediabot-pt
de16176442
fix: 新人考核统一逻辑方向,改为'低于X'与其他规则一致
...
卡片显示:上传量 低于 10 GB → 封号
摘要显示:上传量 < 10GB 或 做种积分 < 2500 → 封号
2026-07-08 23:50:06 +08:00
mediabot-pt
c7f1b7b66d
fix: 新人考核摘要加'不满足'消除歧义,与分享率逻辑统一
2026-07-08 23:48:03 +08:00
mediabot-pt
4313e87473
refactor: 动态分享率 → 分享率
2026-07-08 22:38:58 +08:00
mediabot-pt
7414a06152
fix: DRATIO 统一逻辑方向,改为 '分享率<X' 与其他规则保持一致
...
所有规则现在统一: 指标越过阈值 → 风险
- H&R≥5 → 封号
- 下载量≥100GB且分享率<0.3 → 封号
- 距上次登录>150天 → 封号
2026-07-08 22:29:52 +08:00
mediabot-pt
ce794d1b61
fix: DRATIO 动态分享率默认值合理化,UI 加'要求'二字消除歧义
...
预设默认值: 1.0/2.0/3.0 → 0.3/0.5/0.8
意图: 下载量越大,允许的分享率越低,不是越高
2026-07-08 22:28:03 +08:00
mediabot-pt
2e8d2146c4
feat: 页面配置默认初始化时带预设URL,初次编辑即可直接使用
...
sync → /index.php
signIn → /attendance.php
search → /torrents.php?search={keyword}
download → /download.php?id={id}
rss → /torrentrss.php?rows=10&search={keyword}&search_mode=1&linktype=dl&passkey={passkey}
detail → /details.php?id={id}
2026-07-08 13:30:42 +08:00
mediabot-pt
3041763e44
feat: 页面配置首次编辑时默认初始化所有页面类型,删除不需要的比逐个添加更高效
2026-07-08 13:24:37 +08:00
mediabot-pt
0f69fecb8f
refactor: 页面配置UI改为下拉添加模式,每个类型只能添加一次
...
1. +添加按钮改为下拉选择可用页面类型,已添加的自动隐藏
2. 每个条目的key改为固定tag显示,不可再通过下拉修改
3. URL placeholder 去掉{base},直接用相对路径
4. resolveUrl 改为自动拼接站点baseUrl
2026-07-08 13:22:49 +08:00
mediabot-pt
f65b8d0e2e
fix: 四页面 savePreview 检查 save-preview 响应 code,失败时不误显成功
...
ApiResponse.error 返回 HTTP 200 + JSON code:400,Axios 当成功处理
前端未检查 code 字段导致误显成功但 draft 实际未创建,发布按钮不出现
2026-07-07 23:46:55 +08:00
mediabot-pt
04fc009a33
refactor: AccessResultCheck 去掉审批相关按钮和逻辑,简化为两阶段发布
...
移除:通过/拒绝/发布(approveConfig)按钮、approveConfig/rejectConfig/saveScript 函数、approving/rejecting/saving ref
保留:保存预览版 → 发布正式版 两阶段流程
2026-07-07 23:38:48 +08:00
mediabot-pt
1436f81667
feat: 快照API响应增加顶层version字段,与check接口保持一致
2026-07-07 22:49:03 +08:00
mediabot-pt
45f16f2b54
refactor: 统一所有页面按钮文案,合并上传逻辑到保存
...
1. Sites.vue: '保存' → '保存预览版'
2. SitePages.vue: '保存' → '保存预览版',移除上传按钮和uploadPages函数
3. AccessResultCheck.vue: 两处'保存' → '保存预览版'
4. SitePagesController: savePages/saveDefaultPages 直接包含CDN上传,移除 /upload 端点
2026-07-07 18:02:22 +08:00
mediabot-pt
51e9341748
fix: 风险规则保存按钮文案改为'保存预览版'
2026-07-07 17:58:46 +08:00
mediabot-pt
ec37369bc2
refactor: 合并上传到保存按钮,去掉上传按钮
...
1. 后端 saveRules/saveDefaultRules 接口直接包含 CDN 上传逻辑
2. 移除独立的 /upload 端点(风险规则 + 默认规则)
3. 前端去掉上传按钮和 uploadRules 函数
4. 现在只需保存→发布正式版两步即可完成
2026-07-07 17:57:20 +08:00
mediabot-pt
40eea42710
fix: 上传风险规则后同步更新站点快照,解决状态仍显示未发布的问题
...
1. 后端 RiskRuleServiceImpl:将 updateSnapshotsByType 从异步事件改为同步调用 snapshotService.updateSnapshot
2. 前端 RiskRules.vue:上传按钮成功后调用 fetchSnapshotStatus 刷新状态标签
2026-07-07 17:54:37 +08:00
mediabot-pt
e953e9a7fd
refactor: 合并保存按钮,点击保存即自动保存源数据+拍快照
2026-07-07 13:19:50 +08:00
mediabot-pt
e659b9bca6
refactor: 保存预览版自动先保存源数据,简化操作一步完成
2026-07-07 13:16:34 +08:00
mediabot-pt
6505f621d1
feat: 编辑器增加「重置」和「丢弃预览版」按钮,支持回退预览版快照
2026-07-07 13:12:19 +08:00
mediabot-pt
e99de15703
feat: 编辑器增加版本状态(预览版/正式版)和未保存提示
2026-07-07 12:19:18 +08:00
mediabot-pt
ebfb6395db
refactor: 合并三级缓存为统一缓存 + 重命名 saveDraft → savePreview
...
1. 三个 Caffeine Cache 合并为一个 jsonCache,key 用 :published/:draft 后缀区分
2. saveDraft → savePreview,更准确反映「预览版」语义(非临时草稿)
3. getPreviewBundleJson 去掉独立缓存,直接查 DB(preview 是 draft+published 逻辑并集,缓存意义不大)
4. 前端按钮「保存草稿」→「保存预览版」,API 路径 /save-draft → /save-preview
2026-07-07 11:45:04 +08:00
mediabot-pt
3cc7b932a8
fix: 修复快照两阶段发布方案的缓存一致性和前端问题
...
1. updateSnapshot() 自动触发生成 draft 后刷新 draft/preview 缓存
2. saveDraft() 同时刷新 previewJsonCache
3. 前端编辑页新增「保存站点」按钮,确保站点基本信息可持久化
4. publishManifest() 兼容 bundle 改用缓存 JSON,避免重复 buildSnapshot
2026-07-07 11:43:06 +08:00
mediabot-pt
5f58083074
feat: 快照改为预览版/正式版两阶段发布 - 新增 saveDraft 接口手动保存草稿快照 - 新增 getDraftBundleJson 方法读取预览版(Caffeine缓存) - SnapshotController 支持 ?preview=true 参数读取 draft - 前端编辑页改为'保存草稿'+'发布正式版'两个按钮 - AdminController 新增单站点 save-draft/publish 接口 - 复用 populateSnapshotFields 消除重复代码
2026-07-07 11:36:38 +08:00
mediabot-pt
0b0dcb4f04
refactor: use only siteId for risk rule storage, drop type-level fallback
2026-07-06 23:52:30 +08:00
mediabot-pt
a643d976cf
feat: support both site-level and type-level risk rule storage
...
List shows source column: site-level or type-level
Fallback: siteId rule first, then siteType rule
Save always creates site-level entry; load falls back to type-level if none exists
2026-07-06 23:51:26 +08:00
mediabot-pt
5a7b218944
fix: store risk rules per siteId instead of shared siteType
2026-07-06 23:50:23 +08:00
mediabot-pt
dde14cb73f
fix: save no longer returns to list page
2026-07-06 23:39:45 +08:00
mediabot-pt
650402baf2
fix: remove fold/expand feature, always show card body
...
Fold was unreliable and unnecessary; body is always visible now
2026-07-06 23:33:29 +08:00
mediabot-pt
8381589388
fix: improve card fold/expand UX - single-click toggle, clear text hint
...
Click anywhere on header to toggle fold/expand
Right side shows '\u5c55\u5f00' or '\u6536\u8d77' text instead of tiny arrow icon
Drag handle icon stops click propagation to prevent accidental fold
Delete button uses stopPropagation to avoid triggering fold
2026-07-06 23:26:56 +08:00
mediabot-pt
1c06be991d
feat: DRATIO supports multiple threshold-ratio levels
...
Replace single threshold+minRatio with levels array
Card header: \u4e0b\u8f7d\u91cf\u5206\u7ea7\u63a7\u5236\uff082\u7ea7\uff09
Card body: editable rows with add/delete buttons per level
Default preset: 100GB\u21921.0, 500GB\u21922.0, 1000GB\u21923.0
Auto-migrate old single-value format on load
2026-07-06 23:07:27 +08:00
mediabot-pt
1cea882d9d
refactor: make applicable condition a read-only tag in card header
...
Applicable is preset-defined, not editable on card
Shown as grey tag after action label: \u5c01\u53f7/\u5220\u9664\u8d26\u53f7 (\u975e\u5c01\u5b58\u8d26\u53f7)
Remove applicable dropdown from card body, onApplicableChange handler
2026-07-06 23:02:16 +08:00
mediabot-pt
194ce96f39
refactor: make rule type a read-only label on card
...
Type is fixed by preset, no need for dropdown editing
Remove unused typeDefaults, onTypeChange functions
2026-07-06 23:00:55 +08:00
mediabot-pt
cf26f2f6b1
refactor: remove add-rule button, keep only quick-add dropdown
...
All rule patterns are covered by presets, no need for blank rule creation
Also fix missing Refresh icon import
2026-07-06 22:52:19 +08:00
mediabot-pt
36e05896e5
refactor: remove redundant template import dialog, keep only quick-add dropdown
...
Quick-add dropdown already serves the same purpose with fewer clicks
2026-07-06 22:45:16 +08:00
mediabot-pt
110af4a79c
feat: prevent duplicate rules by type+applicable key
...
- Uniqueness key: type + applicable condition combination
- '添加规则' button warns if KILL(null) already exists
- Dropdown and template dialog disabled+greyed for already-added presets
- Import skips duplicates with warning message
- Applicable dropdown change guarded against duplicates
2026-07-06 22:44:15 +08:00
mediabot-pt
accb38986a
style: add color to action labels in rule summary text
...
\u4fdd\u53f7=green(#67c23a), \u5c01\u53f7/\u5220\u9664\u8d26\u53f7=red(#f56c6c), \u5c01\u53f7(\u7f13\u52117\u5929)=orange(#e6a23c)
2026-07-06 22:41:55 +08:00
mediabot-pt
7ec4e16eb6
feat: add fixed-order rule summary text at bottom of visual editor
...
Sort order: EXEMPT \u2192 TASK \u2192 HD \u2192 KILL \u2192 RATIO \u2192 DRATIO \u2192 TRAFFIC
Each rule shown as natural language sentence with applicable condition
TASK shows only enabled requirements
Regardless of card drag order, summary always displays in fixed sequence
2026-07-06 22:35:38 +08:00
mediabot-pt
15dcccb405
feat: add enable/disable switch for each TASK requirement
...
Each requirement has an el-switch; disabled items grey out and input is locked
Sites can pick only the conditions they need (e.g. upload+download only)
2026-07-06 22:31:52 +08:00
mediabot-pt
a956d38365
fix: rename ratio penalty label to \u5c01\u53f7\uff08\u7f13\u52117\u5929\uff09
...
More accurate than '\u964d\u7ea7\u81f3Peasant': user is demoted regardless of rank, then killed after 7 days
Template dialog: '\u7f13\u52117\u5929' instead of '\u964d\u7ea7'
2026-07-06 22:29:23 +08:00