feat: 权限细化、商业认证跳转、UI改进 #19

Merged
hera merged 10 commits from feat/permissions-ui-improvements into main 2026-04-10 09:35:11 +00:00
Owner

Summary

  • viewer 管理配方页只显示我的配方
  • Tab 可见性按角色控制
  • 商业核算未认证跳转认证页
  • 高级编辑者可看精油信息不全提示
  • 搜索通知只发管理员和高级编辑者
## Summary - viewer 管理配方页只显示我的配方 - Tab 可见性按角色控制 - 商业核算未认证跳转认证页 - 高级编辑者可看精油信息不全提示 - 搜索通知只发管理员和高级编辑者
Author
Owner

🚀 Preview: https://pr-19.oil.oci.euphon.net

DB is a copy of production.

🚀 **Preview**: https://pr-19.oil.oci.euphon.net DB is a copy of production.
Author
Owner

🚀 Preview: https://pr-19.oil.oci.euphon.net

DB is a copy of production.

🚀 **Preview**: https://pr-19.oil.oci.euphon.net DB is a copy of production.
Author
Owner

🚀 Preview: https://pr-19.oil.oci.euphon.net

DB is a copy of production.

🚀 **Preview**: https://pr-19.oil.oci.euphon.net DB is a copy of production.
Author
Owner

🚀 Preview: https://pr-19.oil.oci.euphon.net

DB is a copy of production.

🚀 **Preview**: https://pr-19.oil.oci.euphon.net DB is a copy of production.
Author
Owner

🚀 Preview: https://pr-19.oil.oci.euphon.net

DB is a copy of production.

🚀 **Preview**: https://pr-19.oil.oci.euphon.net DB is a copy of production.
Author
Owner

🚀 Preview: https://pr-19.oil.oci.euphon.net

DB is a copy of production.

🚀 **Preview**: https://pr-19.oil.oci.euphon.net DB is a copy of production.
Author
Owner

🚀 Preview: https://pr-19.oil.oci.euphon.net

DB is a copy of production.

🚀 **Preview**: https://pr-19.oil.oci.euphon.net DB is a copy of production.
Author
Owner

🚀 Preview: https://pr-19.oil.oci.euphon.net

DB is a copy of production.

🚀 **Preview**: https://pr-19.oil.oci.euphon.net DB is a copy of production.
Author
Owner

🚀 Preview: https://pr-19.oil.oci.euphon.net

DB is a copy of production.

🚀 **Preview**: https://pr-19.oil.oci.euphon.net DB is a copy of production.
Author
Owner

🚀 Preview: https://pr-19.oil.oci.euphon.net

DB is a copy of production.

🚀 **Preview**: https://pr-19.oil.oci.euphon.net DB is a copy of production.
hera added 10 commits 2026-04-10 09:32:45 +00:00
权限:
- viewer 管理配方页只显示我的配方,隐藏公共配方库和工具栏
- 高级编辑者可看到精油价目信息不全的红色提示
- 商业核算删除按钮仅管理员可见
- 搜索未收录通知只发管理员和高级编辑者

Tab 可见性:
- 所有用户可见:配方查询、管理配方、个人库存、精油价目、商业核算
- 需登录的 tab 点击弹登录框,登录后跳转
- 操作日志/Bug/用户管理仅管理员可见

商业核算:
- 未认证用户可看项目列表,点详情提示去认证
- 跳转到我的账户页商业认证区域并自动滚动

其他:
- 我的配方和收藏配方默认折叠

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
商业认证:
- 申请页重写:商户名+说明字段,显示审核中/被拒/已通过状态
- 被拒绝显示原因,可重新申请
- 管理员拒绝时输入原因
- 商业核算页未认证用户点详情弹认证提示,跳转认证页面
- 删除项目仅管理员可见

通知:
- 只显示用户注册后的通知,避免角色变更后看到旧通知
- 搜索未收录通知只发管理员和高级编辑者

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- 新增 /api/recipes/{id}/reject 端点:拒绝配方并通知提交者(含原因)
- 采纳配方时通知提交者"配方已采纳"
- 管理员拒绝配方时输入原因
- 贡献统计改为统计被采纳的配方数(含 audit_log 记录)
- 完整流程测试:共享→通知→拒绝(带原因)→通知→重新共享→采纳→通知

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
新增配方:
- 修复保存失败(oil→oil_name字段转换)
- 智能识别支持多条配方同时解析
- 识别结果逐条预览,可修改/放弃/保存单条/全部保存
- 编辑器加成分表格(单价/滴、小计、总成本)
- 保存到个人配方(diary)

共享审核:
- 新增 /api/recipes/{id}/reject 端点(带原因通知提交者)
- 采纳配方时通知提交者"配方已采纳"
- 拒绝时管理员输入原因
- 贡献统计含被采纳的配方数

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- 修复空格/无分隔符时配方名称无法识别的问题
- 支持"长高芳香调理8永久花10"连写格式自动分离名称
- 所有用户新增配方默认保存到个人配方(diary),不进公共库

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- 我的配方卡片右上角加📤共享按钮,已共享/审核中显示状态标签
- 管理员账号标题下显示版本号和日期

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- 我的配方每行加📤共享按钮
- 显示共享状态:已共享(绿)/等待审核(橙)
- 已共享的隐藏共享按钮
- 非管理员显示"已贡献 X 条"统计
- 配方查询页去掉共享按钮(移到管理配方)

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- 新增/编辑配方编辑器与配方卡片编辑界面完全一致(含容量与稀释)
- 自定义滴数/稀释比例框缩小,应用按钮放在稀释比例同一行
- 管理员可查看所有审核记录(采纳/拒绝历史)
- 标签筛选和全选按钮对所有用户可见
- 我的配方/公共配方库均可折叠
- viewer 看配方卡片无编辑按钮
- diary 配方卡片无编辑按钮
- 退出登录跳转首页并刷新
- 新增 /api/recipe-reviews 端点

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
UI: 添加精油直接加空行,去掉确认取消按钮
All checks were successful
Deploy Production / test (push) Successful in 5s
Deploy Production / deploy (push) Successful in 6s
Test / unit-test (push) Successful in 4s
PR Preview / teardown-preview (pull_request) Has been skipped
Test / build-check (push) Successful in 4s
Test / e2e-test (push) Successful in 55s
PR Preview / test (pull_request) Successful in 4s
PR Preview / deploy-preview (pull_request) Successful in 9s
ad95ba7d1f
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
hera force-pushed feat/permissions-ui-improvements from 841550dcb9 to ad95ba7d1f 2026-04-10 09:32:45 +00:00 Compare
Author
Owner

🚀 Preview: https://pr-19.oil.oci.euphon.net

DB is a copy of production.

🚀 **Preview**: https://pr-19.oil.oci.euphon.net DB is a copy of production.
hera merged commit ad95ba7d1f into main 2026-04-10 09:35:11 +00:00
Author
Owner

🗑️ Preview torn down.

🗑️ Preview torn down.
Sign in to join this conversation.
No Reviewers
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: hera/oil-formula-calculator#19