feat: 审核流程完善 + 共享状态提示 + 贡献统计含拒绝
Some checks failed
PR Preview / teardown-preview (pull_request) Has been skipped
Test / unit-test (push) Successful in 4s
Test / build-check (push) Successful in 4s
PR Preview / test (pull_request) Successful in 4s
PR Preview / deploy-preview (pull_request) Successful in 16s
Test / e2e-test (push) Failing after 55s

审核流程:
- 高级编辑者可看到待审核配方,点击推荐通过→通知管理员
- 高级编辑者可直接拒绝(和管理员相同逻辑)
- 管理员收到推荐通知后最终决定
- 去审核通知点击自动展开待审核列表
- 新增 /api/recipes/{id}/recommend 端点

共享:
- 已共享配方再点共享→提示"已共享,感谢贡献"
- 审核中配方再点共享→提示"正在审核中,请耐心等待"

贡献统计:
- 被拒绝的配方也计入总申请数(0/1不会变回0/0)
- reject_recipe日志记录from_user

其他:
- 配方卡片去掉编辑按钮

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-04-10 18:28:05 +00:00
parent 97c53bb3c3
commit 866950c2f6
4 changed files with 90 additions and 24 deletions

View File

@@ -130,8 +130,14 @@ function isSearchMissing(n) {
}
function isReviewable(n) {
if (!auth.isAdmin || !n.title) return false
return n.title.includes('待审核') || n.title.includes('商业认证') || n.title.includes('申请')
if (!n.title) return false
// Admin: review recipe/business/applications
if (auth.isAdmin) {
return n.title.includes('待审核') || n.title.includes('商业认证') || n.title.includes('申请') || n.title.includes('推荐通过')
}
// Senior editor: assigned reviews
if (auth.canManage && n.title.includes('请审核')) return true
return false
}
async function markAdded(n) {
@@ -141,7 +147,8 @@ async function markAdded(n) {
function goReview(n) {
markOneRead(n)
emit('close')
if (n.title.includes('配方')) {
if (n.title.includes('配方') || n.title.includes('审核') || n.title.includes('推荐')) {
localStorage.setItem('oil_open_pending', '1')
router.push('/manage')
} else if (n.title.includes('商业认证') || n.title.includes('申请')) {
router.push('/users')