From 4e65a9a8ae13818b86b66d5289aaa833f7ef91fc Mon Sep 17 00:00:00 2001 From: expressgy Date: Sun, 6 Jul 2025 18:51:41 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E7=BB=9F=E4=B8=80=E5=88=86=E5=B8=83?= =?UTF-8?q?=E5=BC=8F=E9=94=81=E5=BC=82=E5=B8=B8=E5=A4=84=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 将分布式锁中的Error异常改为使用BusinessError - 添加BusinessError导入 - 使用正确的BusinessError构造函数参数 --- src/utils/distributedLock.ts | 3 +- tasks/M2-基础用户系统-开发任务计划.md | 54 +++++++++++++-------------- 2 files changed, 29 insertions(+), 28 deletions(-) diff --git a/src/utils/distributedLock.ts b/src/utils/distributedLock.ts index 8211674..da78a6b 100644 --- a/src/utils/distributedLock.ts +++ b/src/utils/distributedLock.ts @@ -10,6 +10,7 @@ import { redisService } from '@/plugins/redis/redis.service'; import { Logger } from '@/plugins/logger/logger.service'; import { nextId } from './snowflake'; +import { BusinessError } from '@/utils/responseFormate'; /** * 分布式锁配置 @@ -98,7 +99,7 @@ export class DistributedLockService { } if (!acquired) { - throw new Error(`获取锁超时: ${lockKey}`); + throw new BusinessError(`获取锁超时: ${lockKey}`, 408); } Logger.info(`获取分布式锁成功: ${lockKey}, value: ${lockValue}`); diff --git a/tasks/M2-基础用户系统-开发任务计划.md b/tasks/M2-基础用户系统-开发任务计划.md index 1b5ad35..91c7720 100644 --- a/tasks/M2-基础用户系统-开发任务计划.md +++ b/tasks/M2-基础用户系统-开发任务计划.md @@ -125,7 +125,7 @@ ### 👤 用户管理模块 (User Module) - P0优先级 - [ ] 9.0 GET /users/me - 获取当前用户信息接口 - - [ ] Before 整理输入此接口的逻辑,等待用户确认后进行 + - [ ] Before 整理输入此接口的逻辑,必须等待用户确认后进行,需要输入go才能进行下一步 - [ ] 9.1 扩展user.schema.ts - 定义当前用户Schema - [ ] 9.2 扩展user.response.ts - 定义当前用户响应格式 - [ ] 9.3 扩展user.service.ts - 实现当前用户业务逻辑 @@ -133,7 +133,7 @@ - [ ] 9.5 创建user.test.md - 编写当前用户测试用例文档 - [ ] 10.0 GET /users - 用户列表查询接口 - - [ ] Before 整理输入此接口的逻辑,等待用户确认后进行 + - [ ] Before 整理输入此接口的逻辑,必须等待用户确认后进行,需要输入go才能进行下一步 - [ ] 10.1 扩展user.schema.ts - 定义用户列表Schema - [ ] 10.2 扩展user.response.ts - 定义用户列表响应格式 - [ ] 10.3 扩展user.service.ts - 实现用户列表业务逻辑 @@ -141,7 +141,7 @@ - [ ] 10.5 扩展user.test.md - 编写用户列表测试用例文档 - [ ] 11.0 POST /users - 创建用户接口 - - [ ] Before 整理输入此接口的逻辑,等待用户确认后进行 + - [ ] Before 整理输入此接口的逻辑,必须等待用户确认后进行,需要输入go才能进行下一步 - [ ] 11.1 扩展user.schema.ts - 定义创建用户Schema - [ ] 11.2 扩展user.response.ts - 定义创建用户响应格式 - [ ] 11.3 扩展user.service.ts - 实现创建用户业务逻辑 @@ -149,7 +149,7 @@ - [ ] 11.5 扩展user.test.md - 编写创建用户测试用例文档 - [ ] 12.0 PUT /users/{id} - 更新用户信息接口 - - [ ] Before 整理输入此接口的逻辑,等待用户确认后进行 + - [ ] Before 整理输入此接口的逻辑,必须等待用户确认后进行,需要输入go才能进行下一步 - [ ] 12.1 扩展user.schema.ts - 定义更新用户Schema - [ ] 12.2 扩展user.response.ts - 定义更新用户响应格式 - [ ] 12.3 扩展user.service.ts - 实现更新用户业务逻辑 @@ -157,7 +157,7 @@ - [ ] 12.5 扩展user.test.md - 编写更新用户测试用例文档 - [ ] 13.0 DELETE /users/{id} - 删除用户接口 - - [ ] Before 整理输入此接口的逻辑,等待用户确认后进行 + - [ ] Before 整理输入此接口的逻辑,必须等待用户确认后进行,需要输入go才能进行下一步 - [ ] 13.1 扩展user.schema.ts - 定义删除用户Schema - [ ] 13.2 扩展user.response.ts - 定义删除用户响应格式 - [ ] 13.3 扩展user.service.ts - 实现删除用户业务逻辑 @@ -165,7 +165,7 @@ - [ ] 13.5 扩展user.test.md - 编写删除用户测试用例文档 - [ ] 14.0 PUT /users/me/password - 修改密码接口 - - [ ] Before 整理输入此接口的逻辑,等待用户确认后进行 + - [ ] Before 整理输入此接口的逻辑,必须等待用户确认后进行,需要输入go才能进行下一步 - [ ] 14.1 扩展user.schema.ts - 定义修改密码Schema - [ ] 14.2 扩展user.response.ts - 定义修改密码响应格式 - [ ] 14.3 扩展user.service.ts - 实现修改密码业务逻辑 @@ -173,7 +173,7 @@ - [ ] 14.5 扩展user.test.md - 编写修改密码测试用例文档 - [ ] 15.0 GET /users/{id} - 用户详情接口 - - [ ] Before 整理输入此接口的逻辑,等待用户确认后进行 + - [ ] Before 整理输入此接口的逻辑,必须等待用户确认后进行,需要输入go才能进行下一步 - [ ] 15.1 扩展user.schema.ts - 定义用户详情Schema - [ ] 15.2 扩展user.response.ts - 定义用户详情响应格式 - [ ] 15.3 扩展user.service.ts - 实现用户详情业务逻辑 @@ -181,7 +181,7 @@ - [ ] 15.5 扩展user.test.md - 编写用户详情测试用例文档 - [ ] 16.0 POST /users/batch - 批量操作接口 - - [ ] Before 整理输入此接口的逻辑,等待用户确认后进行 + - [ ] Before 整理输入此接口的逻辑,必须等待用户确认后进行,需要输入go才能进行下一步 - [ ] 16.1 扩展user.schema.ts - 定义批量操作Schema - [ ] 16.2 扩展user.response.ts - 定义批量操作响应格式 - [ ] 16.3 扩展user.service.ts - 实现批量操作业务逻辑 @@ -191,7 +191,7 @@ ### 🎭 角色权限模块 (Role Module) - P0优先级 - [ ] 17.0 GET /roles - 角色列表接口 - - [ ] Before 整理输入此接口的逻辑,等待用户确认后进行 + - [ ] Before 整理输入此接口的逻辑,必须等待用户确认后进行,需要输入go才能进行下一步 - [ ] 17.1 创建role.schema.ts - 定义角色Schema - [ ] 17.2 创建role.response.ts - 定义角色响应格式 - [ ] 17.3 创建role.service.ts - 实现角色业务逻辑 @@ -199,7 +199,7 @@ - [ ] 17.5 创建role.test.md - 编写角色测试用例文档 - [ ] 18.0 POST /roles - 创建角色接口 - - [ ] Before 整理输入此接口的逻辑,等待用户确认后进行 + - [ ] Before 整理输入此接口的逻辑,必须等待用户确认后进行,需要输入go才能进行下一步 - [ ] 18.1 扩展role.schema.ts - 定义创建角色Schema - [ ] 18.2 扩展role.response.ts - 定义创建角色响应格式 - [ ] 18.3 扩展role.service.ts - 实现创建角色业务逻辑 @@ -207,7 +207,7 @@ - [ ] 18.5 扩展role.test.md - 编写创建角色测试用例文档 - [ ] 19.0 PUT /roles/{id} - 更新角色接口 - - [ ] Before 整理输入此接口的逻辑,等待用户确认后进行 + - [ ] Before 整理输入此接口的逻辑,必须等待用户确认后进行,需要输入go才能进行下一步 - [ ] 19.1 扩展role.schema.ts - 定义更新角色Schema - [ ] 19.2 扩展role.response.ts - 定义更新角色响应格式 - [ ] 19.3 扩展role.service.ts - 实现更新角色业务逻辑 @@ -215,7 +215,7 @@ - [ ] 19.5 扩展role.test.md - 编写更新角色测试用例文档 - [ ] 20.0 DELETE /roles/{id} - 删除角色接口 - - [ ] Before 整理输入此接口的逻辑,等待用户确认后进行 + - [ ] Before 整理输入此接口的逻辑,必须等待用户确认后进行,需要输入go才能进行下一步 - [ ] 20.1 扩展role.schema.ts - 定义删除角色Schema - [ ] 20.2 扩展role.response.ts - 定义删除角色响应格式 - [ ] 20.3 扩展role.service.ts - 实现删除角色业务逻辑 @@ -223,7 +223,7 @@ - [ ] 20.5 扩展role.test.md - 编写删除角色测试用例文档 - [ ] 21.0 GET /permissions - 权限列表接口 - - [ ] Before 整理输入此接口的逻辑,等待用户确认后进行 + - [ ] Before 整理输入此接口的逻辑,必须等待用户确认后进行,需要输入go才能进行下一步 - [ ] 21.1 创建permission.schema.ts - 定义权限Schema - [ ] 21.2 创建permission.response.ts - 定义权限响应格式 - [ ] 21.3 创建permission.service.ts - 实现权限业务逻辑 @@ -231,7 +231,7 @@ - [ ] 21.5 创建permission.test.md - 编写权限测试用例文档 - [ ] 22.0 POST /roles/{id}/permissions - 权限分配接口 - - [ ] Before 整理输入此接口的逻辑,等待用户确认后进行 + - [ ] Before 整理输入此接口的逻辑,必须等待用户确认后进行,需要输入go才能进行下一步 - [ ] 22.1 扩展role.schema.ts - 定义权限分配Schema - [ ] 22.2 扩展role.response.ts - 定义权限分配响应格式 - [ ] 22.3 扩展role.service.ts - 实现权限分配业务逻辑 @@ -239,7 +239,7 @@ - [ ] 22.5 扩展role.test.md - 编写权限分配测试用例文档 - [ ] 23.0 POST /users/{id}/roles - 用户角色分配接口 - - [ ] Before 整理输入此接口的逻辑,等待用户确认后进行 + - [ ] Before 整理输入此接口的逻辑,必须等待用户确认后进行,需要输入go才能进行下一步 - [ ] 23.1 扩展user.schema.ts - 定义用户角色分配Schema - [ ] 23.2 扩展user.response.ts - 定义用户角色分配响应格式 - [ ] 23.3 扩展user.service.ts - 实现用户角色分配业务逻辑 @@ -249,7 +249,7 @@ ### 🏢 组织架构模块 (Organization Module) - P1优先级 - [ ] 24.0 GET /organizations - 组织列表接口 - - [ ] Before 整理输入此接口的逻辑,等待用户确认后进行 + - [ ] Before 整理输入此接口的逻辑,必须等待用户确认后进行,需要输入go才能进行下一步 - [ ] 24.1 创建organization.schema.ts - 定义组织Schema - [ ] 24.2 创建organization.response.ts - 定义组织响应格式 - [ ] 24.3 创建organization.service.ts - 实现组织业务逻辑 @@ -257,7 +257,7 @@ - [ ] 24.5 创建organization.test.md - 编写组织测试用例文档 - [ ] 25.0 POST /organizations - 创建组织接口 - - [ ] Before 整理输入此接口的逻辑,等待用户确认后进行 + - [ ] Before 整理输入此接口的逻辑,必须等待用户确认后进行,需要输入go才能进行下一步 - [ ] 25.1 扩展organization.schema.ts - 定义创建组织Schema - [ ] 25.2 扩展organization.response.ts - 定义创建组织响应格式 - [ ] 25.3 扩展organization.service.ts - 实现创建组织业务逻辑 @@ -265,7 +265,7 @@ - [ ] 25.5 扩展organization.test.md - 编写创建组织测试用例文档 - [ ] 26.0 PUT /organizations/{id} - 更新组织接口 - - [ ] Before 整理输入此接口的逻辑,等待用户确认后进行 + - [ ] Before 整理输入此接口的逻辑,必须等待用户确认后进行,需要输入go才能进行下一步 - [ ] 26.1 扩展organization.schema.ts - 定义更新组织Schema - [ ] 26.2 扩展organization.response.ts - 定义更新组织响应格式 - [ ] 26.3 扩展organization.service.ts - 实现更新组织业务逻辑 @@ -273,7 +273,7 @@ - [ ] 26.5 扩展organization.test.md - 编写更新组织测试用例文档 - [ ] 27.0 DELETE /organizations/{id} - 删除组织接口 - - [ ] Before 整理输入此接口的逻辑,等待用户确认后进行 + - [ ] Before 整理输入此接口的逻辑,必须等待用户确认后进行,需要输入go才能进行下一步 - [ ] 27.1 扩展organization.schema.ts - 定义删除组织Schema - [ ] 27.2 扩展organization.response.ts - 定义删除组织响应格式 - [ ] 27.3 扩展organization.service.ts - 实现删除组织业务逻辑 @@ -281,7 +281,7 @@ - [ ] 27.5 扩展organization.test.md - 编写删除组织测试用例文档 - [ ] 28.0 POST /users/{id}/organizations - 用户组织关系接口 - - [ ] Before 整理输入此接口的逻辑,等待用户确认后进行 + - [ ] Before 整理输入此接口的逻辑,必须等待用户确认后进行,需要输入go才能进行下一步 - [ ] 28.1 扩展user.schema.ts - 定义用户组织关系Schema - [ ] 28.2 扩展user.response.ts - 定义用户组织关系响应格式 - [ ] 28.3 扩展user.service.ts - 实现用户组织关系业务逻辑 @@ -291,7 +291,7 @@ ### 🗂️ 系统基础模块 (System Module) - P1优先级 - [ ] 29.0 字典类型管理 - CRUD /dict-types - - [ ] Before 整理输入此接口的逻辑,等待用户确认后进行 + - [ ] Before 整理输入此接口的逻辑,必须等待用户确认后进行,需要输入go才能进行下一步 - [ ] 29.1 创建dict.schema.ts - 定义字典类型Schema - [ ] 29.2 创建dict.response.ts - 定义字典类型响应格式 - [ ] 29.3 创建dict.service.ts - 实现字典类型业务逻辑 @@ -299,7 +299,7 @@ - [ ] 29.5 创建dict.test.md - 编写字典类型测试用例文档 - [ ] 30.0 字典项管理 - CRUD /dict-items - - [ ] Before 整理输入此接口的逻辑,等待用户确认后进行 + - [ ] Before 整理输入此接口的逻辑,必须等待用户确认后进行,需要输入go才能进行下一步 - [ ] 30.1 扩展dict.schema.ts - 定义字典项Schema - [ ] 30.2 扩展dict.response.ts - 定义字典项响应格式 - [ ] 30.3 扩展dict.service.ts - 实现字典项业务逻辑 @@ -307,7 +307,7 @@ - [ ] 30.5 扩展dict.test.md - 编写字典项测试用例文档 - [ ] 31.0 标签管理 - CRUD /tags - - [ ] Before 整理输入此接口的逻辑,等待用户确认后进行 + - [ ] Before 整理输入此接口的逻辑,必须等待用户确认后进行,需要输入go才能进行下一步 - [ ] 31.1 创建tag.schema.ts - 定义标签Schema - [ ] 31.2 创建tag.response.ts - 定义标签响应格式 - [ ] 31.3 创建tag.service.ts - 实现标签业务逻辑 @@ -315,7 +315,7 @@ - [ ] 31.5 创建tag.test.md - 编写标签测试用例文档 - [ ] 32.0 操作日志 - GET /logs/operations - - [ ] Before 整理输入此接口的逻辑,等待用户确认后进行 + - [ ] Before 整理输入此接口的逻辑,必须等待用户确认后进行,需要输入go才能进行下一步 - [ ] 32.1 创建log.schema.ts - 定义操作日志Schema - [ ] 32.2 创建log.response.ts - 定义操作日志响应格式 - [ ] 32.3 创建log.service.ts - 实现操作日志业务逻辑 @@ -323,7 +323,7 @@ - [ ] 32.5 创建log.test.md - 编写操作日志测试用例文档 - [ ] 33.0 登录日志 - GET /logs/logins - - [ ] Before 整理输入此接口的逻辑,等待用户确认后进行 + - [ ] Before 整理输入此接口的逻辑,必须等待用户确认后进行,需要输入go才能进行下一步 - [ ] 33.1 扩展log.schema.ts - 定义登录日志Schema - [ ] 33.2 扩展log.response.ts - 定义登录日志响应格式 - [ ] 33.3 扩展log.service.ts - 实现登录日志业务逻辑 @@ -333,7 +333,7 @@ ### 🔧 基础设施完善 - [ ] 34.0 JWT认证中间件 - - [ ] Before 整理输入此接口的逻辑,等待用户确认后进行 + - [ ] Before 整理输入此接口的逻辑,必须等待用户确认后进行,需要输入go才能进行下一步 - [ ] 34.1 创建JWT认证插件 - [ ] 34.2 实现Token黑名单管理 - [ ] 34.3 实现RefreshToken机制 @@ -341,7 +341,7 @@ - [ ] 34.5 编写认证中间件测试 - [ ] 35.0 路由模块集成 - - [ ] Before 整理输入此接口的逻辑,等待用户确认后进行 + - [ ] Before 整理输入此接口的逻辑,必须等待用户确认后进行,需要输入go才能进行下一步 - [ ] 35.1 更新src/modules/index.ts - 集成所有模块 - [ ] 35.2 更新src/app.ts - 注册所有路由 - [ ] 35.3 更新Swagger标签定义