charging-cabinet/tasks/009-system-settings.md

72 lines
2.0 KiB
Markdown
Raw Normal View History

# 任务009系统设置
## 目标
实现用户管理、操作日志查看。
## 后端API
### 用户管理
```
GET /api/users # 用户列表(分页)
POST /api/users # 创建用户(手机号+姓名+角色)
PUT /api/users/:id # 编辑用户
PUT /api/users/:id/reset-password # 重置密码
PUT /api/users/:id/status # 启用/禁用
DELETE /api/users/:id # 删除用户
```
### 操作日志
```
GET /api/operation-logs # 操作日志列表
?user_id=xxx&action=xxx
&start_time=xxx&end_time=xxx&page=1&page_size=20
```
## 前端页面
### 用户管理页
**列表显示:**
| 手机号 | 姓名 | 角色 | 所属组织 | 状态 | 操作 |
|--------|------|------|----------|------|------|
| 138... | 张三 | 企业管理员 | 组织A | 启用 | 编辑/重置密码/禁用 |
**创建用户弹窗:**
- 手机号必填11位
- 姓名(选填)
- 角色选择(总管理员/企业管理员/普通用户)
- 所属组织(企业管理员必填)
- 初始密码默认123456可修改
**编辑用户弹窗:**
- 姓名
- 角色
- 所属组织
**重置密码:**
- 确认弹窗
- 新密码默认123456
### 操作日志页
**顶部过滤:**
- 用户下拉
- 操作类型(登录/创建/编辑/删除/控制设备)
- 时间范围
**列表显示:**
| 用户 | 操作 | 对象类型 | 对象 | 详情 | 时间 |
|------|------|----------|------|------|------|
| 张三 | 创建柜子 | 设备 | 10-00000001 | 批量添加3台 | 2026-07-01 10:30 |
| 李四 | 开始充电 | 通道 | 通道1 | 柜子10-00000001 | 2026-07-01 10:35 |
## 质量约束
1. 完成代码后执行 `cargo check` + `tsc --noEmit`,零报错零警告
2. 分层拆分单函数≤80行命名语义化完整注释
3. 所有外部IO/网络请求异常捕获禁止裸panic
4. 分支逻辑全覆盖,不遗漏兜底分支
5. 常量抽离不使用废弃API
6. Rust内存安全React函数组件+Hooks