功能特性: - 用户端充值记录页面,从使用日志中分离 - 充值记录中的去开发票功能 - 管理员发票管理页面 - 发票申请、处理、邮件通知功能 - 侧边栏菜单更新 - UI优化和控制台清理 - Docker部署配置 - 生产环境安全配置
2.2 KiB
2.2 KiB
NewAPI 用户界面修改总结
修改内容
目标
- 隐藏用户端控制台中的"操练场"和"聊天"功能,但保留管理员权限访问
- 隐藏顶部导航栏的"文档"和"关于"按钮
- 隐藏首页的"获取密钥"和"文档"按钮
修改文件
web/src/components/layout/SiderBar.jsweb/src/components/layout/HeaderBar.jsweb/src/pages/Home/index.js
具体修改
1. 侧边栏权限控制 (SiderBar.js)
修改 chatMenuItems 配置 (第139-155行)
- 为"操练场"和"聊天"菜单项添加了
className属性 - 使用
isAdmin()函数控制显示权限 - 非管理员用户将看到
className: 'tableHiddle',导致菜单项被隐藏
修改 renderSubItem 函数 (第282-329行)
- 添加了权限检查逻辑
- 当
item.className === 'tableHiddle'时,直接返回null,不渲染该菜单项
2. 顶部导航栏修改 (HeaderBar.js)
修改 mainNavLinks 配置 (第99-131行)
- 注释掉了"文档"和"关于"链接的配置
- 保留了"首页"、"控制台"、"定价"等基本导航
3. 首页按钮隐藏 (Home/index.js)
隐藏操作按钮 (第162-190行)
- 注释掉了整个操作按钮区域
- 隐藏了"获取密钥"和"文档"按钮
- 保留了其他页面内容不变
权限系统说明
- isAdmin(): 检查用户角色是否 >= 10
- isRoot(): 检查用户角色是否 >= 100
效果
- 普通用户: 无法看到"操练场"和"聊天"菜单项
- 管理员用户 (role >= 10): 可以正常看到和使用这些功能
- 超级管理员 (role >= 100): 拥有所有权限
部署步骤
-
修改代码后重新构建前端:
cd web npm run build -
重启后端服务以应用更改:
go run main.go
验证方法
- 使用普通用户账号登录,检查侧边栏是否隐藏了"操练场"和"聊天"
- 使用管理员账号登录,确认这些功能仍然可见
- 检查浏览器控制台是否有JavaScript错误
注意事项
- 此修改仅影响前端显示,不影响后端API权限控制
- 如果用户直接访问URL路径,仍可能访问到这些页面(需要额外的路由权限控制)
- 建议在生产环境中进行充分测试