feat: 实现企业设备授权功能并归档 OpenSpec 变更
All checks were successful
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 5m39s
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:
@@ -0,0 +1,67 @@
|
||||
# 规格:角色请求验证
|
||||
|
||||
## 新增需求
|
||||
|
||||
### 需求:Create 方法验证必填字段
|
||||
|
||||
RoleHandler.Create 方法必须验证 CreateRoleRequest 的所有必填字段。
|
||||
|
||||
#### 场景:缺少 role_name 返回验证错误
|
||||
|
||||
- **WHEN** 客户端发送 POST /api/admin/roles 请求,body 缺少 role_name 字段
|
||||
- **THEN** 返回 HTTP 400
|
||||
- **AND** 响应包含错误码(CodeInvalidParam)
|
||||
- **AND** 错误消息提示 "参数验证失败"
|
||||
|
||||
#### 场景:缺少 role_type 返回验证错误
|
||||
|
||||
- **WHEN** 客户端发送 POST /api/admin/roles 请求,body 缺少 role_type 字段
|
||||
- **THEN** 返回 HTTP 400
|
||||
- **AND** 响应包含错误码(CodeInvalidParam)
|
||||
|
||||
#### 场景:role_name 过长返回验证错误
|
||||
|
||||
- **WHEN** 客户端发送 POST /api/admin/roles 请求,role_name 超过 50 个字符
|
||||
- **THEN** 返回 HTTP 400
|
||||
- **AND** 响应包含错误码(CodeInvalidParam)
|
||||
|
||||
### 需求:Update 方法验证字段格式
|
||||
|
||||
RoleHandler.Update 方法必须验证 UpdateRoleRequest 的字段格式。
|
||||
|
||||
#### 场景:role_name 过长返回验证错误
|
||||
|
||||
- **WHEN** 客户端发送 PUT /api/admin/roles/:id 请求,role_name 超过 50 个字符
|
||||
- **THEN** 返回 HTTP 400
|
||||
- **AND** 响应包含错误码(CodeInvalidParam)
|
||||
|
||||
#### 场景:status 值非法返回验证错误
|
||||
|
||||
- **WHEN** 客户端发送 PUT /api/admin/roles/:id 请求,status 值不是 0 或 1
|
||||
- **THEN** 返回 HTTP 400
|
||||
- **AND** 响应包含错误码(CodeInvalidParam)
|
||||
|
||||
### 需求:AssignPermissions 方法验证权限ID列表
|
||||
|
||||
RoleHandler.AssignPermissions 方法必须验证权限ID列表不为空。
|
||||
|
||||
#### 场景:perm_ids 为空数组返回验证错误
|
||||
|
||||
- **WHEN** 客户端发送 POST /api/admin/roles/:id/permissions 请求,perm_ids 为空数组 []
|
||||
- **THEN** 返回 HTTP 400
|
||||
- **AND** 响应包含错误码(CodeInvalidParam)
|
||||
|
||||
### 需求:UpdateStatus 方法验证状态值
|
||||
|
||||
RoleHandler.UpdateStatus 方法必须验证状态值在有效范围内。
|
||||
|
||||
#### 场景:status 值非法返回验证错误
|
||||
|
||||
- **WHEN** 客户端发送 PUT /api/admin/roles/:id/status 请求,status 值不是 0 或 1
|
||||
- **THEN** 返回 HTTP 400
|
||||
- **AND** 响应包含错误码(CodeInvalidParam)
|
||||
|
||||
## 测试要求
|
||||
|
||||
- 取消 tests/integration/role_test.go 中的 TODO 跳过(第 51 行)
|
||||
- 验证测试能够通过,证明验证逻辑正常工作
|
||||
Reference in New Issue
Block a user