62 lines
2.9 KiB
Markdown
62 lines
2.9 KiB
Markdown
# 插件扩展面 + 支付 / 内容付费 — 功能清单
|
||
|
||
## 状态
|
||
- 对应 SPEC:`docs/specs/plugin-extension-commerce/SPEC.md`
|
||
- 最近更新:2026-08-13 03:40
|
||
|
||
## 完成项
|
||
|
||
### 核心扩展面
|
||
- [x] `Hook::collect` / `Hook::filter`
|
||
- [x] `ArticleAccess` 决策(作者/admin、密码、filter 只许变严)
|
||
- [x] `BlogController::show` 改用 ArticleAccess;密码 POST 解锁后再 resolve
|
||
- [x] 试读+购买主题模板(default;example fallback)
|
||
- [x] API show 经 ArticleAccess;响应含 `access`;受限无全文
|
||
- [x] RSS 受限文无全文
|
||
- [x] `ArticleForm` / Table / Create+Edit 挂载 filament.article.* 扩展点
|
||
- [x] `plugin.json`:`requires` / `optional` / `docs`
|
||
- [x] `PluginManager::enable` 依赖校验 + `isEnabled`
|
||
- [x] 后台插件卡片:依赖展示 + 查看说明
|
||
- [x] 使用说明按 locale 选择 `README.zh_CN.md`,Markdown 渲染为 HTML 侧栏弹层(非 Notification 纯文本)
|
||
|
||
### payment
|
||
- [x] 插件 migrations + `loadMigrationsFrom`
|
||
- [x] models:Order / OrderItem / Entitlement / PaymentTransaction
|
||
- [x] StubGateway 建单 → 确认页 → 入账 → entitlement → `order.paid`
|
||
- [x] 重复有效权益拒绝建单
|
||
- [x] Filament OrderResource + 标记已支付 + 设置/说明页(插件内注册)
|
||
- [x] 迁出/替换核心 `PaymentPluginPage` 骨架(导航隐藏)
|
||
- [x] README + lang
|
||
|
||
### paid-content
|
||
- [x] 插件骨架 + PSR-4 + `requires: larablog/payment`
|
||
- [x] `article_products` migration/model
|
||
- [x] 表单 Section 注入 + after_save 落库
|
||
- [x] 与 `read_password` 互斥校验
|
||
- [x] `article.access` 收紧 + 试读截断(渲染后 chars)
|
||
- [x] 表列「付费」标识
|
||
- [x] README + lang
|
||
|
||
### Review 修复(Bugbot 2026-08-12)
|
||
- [x] `HtmlTeaser` 恒截断,永不返回全文(含 trial ≥ 正文长度)
|
||
- [x] `article.access` 用 `tightenWith` 逐个折叠,只许变严
|
||
- [x] `PluginManager::docsPath` 限制在插件目录内(防路径穿越)
|
||
- [x] 建单/`markPaid` 事务内复核权益 + pending 单复用 + 跨单重复支付拦截
|
||
- [x] checkout 仅接受 `visible`+`published` 文章
|
||
- [x] 复用 pending 单时按当前价格重新定价(避免旧价成交)
|
||
|
||
### 文档与测试
|
||
- [x] `docs/plugins.md` 扩展点 / requires
|
||
- [x] OpenAPI + ApiV1Test 同步(破坏性说明写入 openapi)
|
||
- [x] PHPUnit:依赖、access 矩阵、Stub、重复下单、API/RSS 防泄露
|
||
- [x] 破坏性变更说明(匿名 API/RSS 不再泄密码/付费全文)
|
||
|
||
## 变更记录
|
||
| 时间 | 原因 | 变更 |
|
||
|------|------|------|
|
||
| 2026-08-12 00:17 | SPEC 定稿后初版 | 创建功能清单 |
|
||
| 2026-08-12 00:35 | 实现完成 | 勾选全部完成项 |
|
||
| 2026-08-12 01:01 | Bugbot review 5 项发现 | 新增「Review 修复」分组并全部完成 |
|
||
| 2026-08-12 01:12 | 用户确认「复用刷新为当前价」 | 补充 pending 单重新定价完成项 |
|
||
| 2026-08-13 03:40 | 使用说明英文且无排版 | 中文 README + Markdown 弹层渲染 |
|