feat: 实现企业设备授权功能并归档 OpenSpec 变更
All checks were successful
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 5m39s

- 新增企业设备授权模块(Model、DTO、Service、Handler、Store)
- 实现设备授权的创建、查询、更新、删除等完整业务逻辑
- 添加企业卡授权与设备授权的关联关系
- 新增 2 个数据库迁移脚本
- 同步 OpenSpec delta specs 到 main specs
- 归档 add-enterprise-device-authorization 变更
- 更新 API 文档和路由配置
- 新增完整的集成测试和单元测试覆盖
This commit is contained in:
2026-01-29 13:18:49 +08:00
parent e87513541b
commit b02175271a
118 changed files with 14306 additions and 472 deletions

View File

@@ -0,0 +1,27 @@
# 提案:为 RoleHandler 添加请求验证
## 为什么
当前 RoleHandler 缺少请求参数验证,导致无效的请求可以通过 Handler 层传递到 Service 层。这违反了项目的"Handler 层负责参数验证"原则并且导致集成测试被迫跳过tests/integration/role_test.go:51,282
其他 Handler如 AuthHandler已经正确实现了验证RoleHandler 需要遵循相同模式。
## 变更内容
- RoleHandler 将接收 validator 实例并验证所有请求参数
- Create 和 Update 方法将调用 validator.Struct() 验证 DTO
- 取消 role_test.go 中被跳过的验证测试
## 能力
### 新增能力
- `role-request-validation`: RoleHandler 的所有请求Create、Update、AssignPermissions、UpdateStatus都将验证必填字段和格式
### 修改能力
无(现有功能无变化,只是增强了输入验证)
## 影响范围
- `internal/handler/admin/role.go`: 添加 validator 字段,调用验证方法
- `internal/bootstrap/handlers.go`: 传递 validator 给 RoleHandler
- `tests/integration/role_test.go`: 取消被跳过的测试