- auth.py: 新增 privileged_required 装饰器 (admin+manager),admin_required 仅限用户管理 - 路由权限: fixture/logs/device_logs/test_data 的 admin 检查改为 admin+manager - 前端: 导航栏/删除按钮/配置按钮扩展为 admin+manager 可见 - 用户管理: 角色下拉增加 manager 选项,仍仅 admin 可访问 - 新增 /change-password 路由+模板,所有登录用户可自行修改密码 - edc_server models.py: role COMMENT 更新 + ALTER TABLE 迁移
34 lines
1.5 KiB
HTML
34 lines
1.5 KiB
HTML
<!DOCTYPE html>
|
|
<html lang="zh-CN">
|
|
<head>
|
|
<meta charset="UTF-8">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
<title>{% block title %}EDC 工装管理系统{% endblock %}</title>
|
|
<link rel="stylesheet" href="{{ url_for('static', filename='css/style.css') }}">
|
|
</head>
|
|
<body>
|
|
<nav class="top-menu">
|
|
<a href="/" class="{% if request.path == '/' %}active{% endif %}">设备</a>
|
|
<a href="/test-data" class="{% if request.path == '/test-data' %}active{% endif %}">测试信息</a>
|
|
{% if current_user.is_authenticated and current_user.role in ('admin', 'manager') %}
|
|
<a href="/device-logs" class="{% if request.path == '/device-logs' %}active{% endif %}">设备日志</a>
|
|
<a href="/logs/" class="{% if request.path == '/logs/' %}active{% endif %}">操作日志</a>
|
|
{% endif %}
|
|
{% if current_user.is_authenticated and current_user.role == 'admin' %}
|
|
<a href="/users/" class="{% if request.path == '/users/' %}active{% endif %}">用户管理</a>
|
|
{% endif %}
|
|
<span class="user-info">
|
|
{% if current_user.is_authenticated %}
|
|
{{ current_user.username }} ({{ current_user.role }})
|
|
<a href="/change-password">修改密码</a>
|
|
<a href="/logout">退出</a>
|
|
{% endif %}
|
|
</span>
|
|
</nav>
|
|
<main class="container">
|
|
{% block content %}{% endblock %}
|
|
</main>
|
|
{% block scripts %}{% endblock %}
|
|
</body>
|
|
</html>
|