# Change: 实现权限检查服务

## Why

当前 `PermissionService.CheckPermission()` 方法仅为占位实现，始终返回错误 "权限检查功能尚未完全实现"。这导致权限中间件 (`pkg/middleware/permission.go`) 无法正常工作，所有使用 `RequirePermission`、`RequireAnyPermission`、`RequireAllPermissions` 的路由都无法进行权限验证。

这是一个**阻塞性问题**，影响 RBAC 权限系统的核心功能。

## What Changes

### 功能实现
- 补全 `PermissionService.CheckPermission()` 方法实现
- 实现完整的权限查询逻辑：账号 → 角色列表 → 权限列表 → 匹配检查
- 在 Permission Service 中注入 `AccountRoleStore` 和 `RolePermissionStore`
- 支持 platform 参数过滤（all/web/h5）
- 超级管理员自动跳过权限检查（始终返回 true）

### 性能优化（可选）
- 考虑添加 Redis 缓存用户权限列表（缓存 key: `permission:user:{userID}:perms`）
- 缓存过期时间：5 分钟（可配置）
- 角色变更时清除对应用户的权限缓存

### 代码影响
- **修改文件**：
  - `internal/service/permission/service.go` - 补全 `CheckPermission` 方法
  - `internal/bootstrap/services.go` - 注入额外的 Store 依赖
- **测试文件**：
  - 新增 `internal/service/permission/service_test.go` - 权限检查单元测试
  - 新增 `tests/integration/permission_check_test.go` - 权限检查集成测试

## Impact

### Affected Specs
- **新增**: `permission-check` - 定义权限检查服务的行为规范
- **依赖**: `data-permission` - 使用现有的数据权限基础设施（用户上下文）

### Affected Code
- **核心文件**: `internal/service/permission/service.go`
- **依赖注入**: `internal/bootstrap/services.go`
- **使用场景**: 所有使用权限中间件的路由（当前未激活，实现后可启用）

### Breaking Changes
- ⚠️ 无破坏性变更（仅补全未实现的功能）

### Migration
- 无需迁移（新功能实现）
- 实现后可在路由中启用权限中间件进行细粒度权限控制
