Files
ai-worker-platform/static/index.html
T
hz4th_coder 1f37344d03 V3.1 自定义角色 + Worker 权限组
角色管理(管理员可编辑角色权限功能):
- 18 个权限功能点按模块分组(仪表盘/项目/Worker/协作/评估/模板/报表/日志/告警/API/设置/企业版)
- 内置角色(admin/auditor/member)权限点可编辑、不可删除;自定义角色任意创建/删除/编辑
- 用户可绑定多个自定义角色,权限自动合并(内置基础 ∪ 自定义),即时生效无需重启
- 前端侧边栏按有效权限点自动显隐;未授权模块 API 返回 403

Worker 权限组(批量授权):
- 把一批 Worker+权限(查看/使用/管理)打包成组,整组授权给用户
- 与直接授权并行生效取高值;组内 Worker 自动对绑定用户可见
- 企业版用户与权限新增三个子页:用户列表/角色管理/Worker 权限组

新表:roles / user_roles / worker_perm_groups / worker_perm_group_members / user_worker_groups
2026-08-13 13:03:57 +08:00

56 lines
2.4 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>AI Worker 项目管理平台</title>
<link rel="stylesheet" href="style.css">
</head>
<body>
<div id="app">
<aside id="sidebar">
<div class="logo">🤖 <span>AI Worker</span><small>项目管理平台</small></div>
<nav>
<a href="#/dashboard" data-route="dashboard" data-perm="dashboard.view">📊 仪表盘</a>
<a href="#/projects" data-route="projects" data-perm="project.view">📁 项目</a>
<a href="#/workers" data-route="workers" data-perm="worker.view">🧑‍💻 AI Worker</a>
<a href="#/agents" data-route="agents" data-perm="agent.view">🤝 多 Agent 协作</a>
<a href="#/eval" data-route="eval" data-perm="eval.view">🎯 自动评估</a>
<a href="#/templates" data-route="templates" data-perm="template.view">🧩 模板市场</a>
<a href="#/reports" data-route="reports" data-perm="report.view">💰 成本报表</a>
<a href="#/logs" data-route="logs" data-perm="log.view">📜 运行日志</a>
<a href="#/alerts" data-route="alerts" data-perm="alert.view">🚨 告警中心 <span id="alert-badge" class="badge st-review" style="display:none;float:right">0</span></a>
<a href="#/api" data-route="api" data-perm="api.manage">🔌 开放 API</a>
<a href="#/enterprise" data-route="enterprise" data-perm="enterprise.manage">🏢 企业版</a>
<a href="#/settings" data-route="settings" data-perm="setting.manage">⚙️ 通知设置</a>
</nav>
<div class="sidebar-foot">
<div id="conn-state" class="conn ok">● 服务正常</div>
<a href="#" id="logout-btn" class="logout" style="display:none">退出登录</a>
</div>
</aside>
<main id="main"></main>
</div>
<!-- 登录遮罩 -->
<div id="login-mask" style="display:none">
<div class="login-box">
<h2>🤖 AI Worker 项目管理平台</h2>
<p>请输入账号与口令(默认 admin / admin123</p>
<input type="text" id="login-user" placeholder="用户名" value="admin">
<input type="password" id="login-pwd" placeholder="口令">
<button id="login-btn">登 录</button>
<div id="login-err" class="err"></div>
</div>
</div>
<!-- 通用弹窗 -->
<div id="modal-mask" style="display:none">
<div class="modal" id="modal-box"></div>
</div>
<div id="toast-wrap"></div>
<script src="app.js"></script>
</body>
</html>