From 1f4469794e3019ec68e41c259c63225bbc6bef0c Mon Sep 17 00:00:00 2001 From: zichun Date: Fri, 15 May 2026 09:39:21 +0800 Subject: [PATCH] chore(usr): docs/05 补 GET 详情 + ErrorCode 新增 40302/40401 REQ-USR-003 --- backend/src/main/java/com/xly/erp/common/response/ErrorCode.java | 3 +++ backend/src/test/java/com/xly/erp/common/response/ErrorCodeTest.java | 8 ++++++++ docs/05-API接口契约.md | 13 +++++++++++++ 3 files changed, 24 insertions(+), 0 deletions(-) diff --git a/backend/src/main/java/com/xly/erp/common/response/ErrorCode.java b/backend/src/main/java/com/xly/erp/common/response/ErrorCode.java index 6a30283..d27de50 100644 --- a/backend/src/main/java/com/xly/erp/common/response/ErrorCode.java +++ b/backend/src/main/java/com/xly/erp/common/response/ErrorCode.java @@ -17,6 +17,9 @@ public final class ErrorCode { public static final int ACCOUNT_DELETED = 40103; public static final int FORBIDDEN = 40301; + public static final int USER_FORBIDDEN_SELF_DEACTIVATE = 40302; + + public static final int USER_NOT_FOUND = 40401; public static final int ACCOUNT_LOCKED = 42301; diff --git a/backend/src/test/java/com/xly/erp/common/response/ErrorCodeTest.java b/backend/src/test/java/com/xly/erp/common/response/ErrorCodeTest.java index d269a22..5165a3e 100644 --- a/backend/src/test/java/com/xly/erp/common/response/ErrorCodeTest.java +++ b/backend/src/test/java/com/xly/erp/common/response/ErrorCodeTest.java @@ -17,6 +17,14 @@ class ErrorCodeTest { } @Test + void httpMappings_coverNewCodes_v003() { + assertEquals(403, ErrorCode.toHttpStatus(ErrorCode.USER_FORBIDDEN_SELF_DEACTIVATE)); + assertEquals(404, ErrorCode.toHttpStatus(ErrorCode.USER_NOT_FOUND)); + assertEquals(40302, ErrorCode.USER_FORBIDDEN_SELF_DEACTIVATE); + assertEquals(40401, ErrorCode.USER_NOT_FOUND); + } + + @Test void httpMappings_existingCodes_unchanged() { assertEquals(200, ErrorCode.toHttpStatus(ErrorCode.OK)); assertEquals(400, ErrorCode.toHttpStatus(ErrorCode.BAD_REQUEST)); diff --git a/docs/05-API接口契约.md b/docs/05-API接口契约.md index 18adc62..d988e0e 100644 --- a/docs/05-API接口契约.md +++ b/docs/05-API接口契约.md @@ -82,6 +82,19 @@ BasePath: `/api/v1` - `40901` — 用户名已存在 - `40902` — 用户号已存在 +### REQ-USR-003 GET 用户详情 + +- **Method**: GET +- **Path**: `/api/v1/users/{userId}` +- **Auth**: Bearer Token;仅 `userType=SUPER_ADMIN` 可调用 +- **请求**: Path `userId: int` +- **响应**: JSON `UserDetailVo { userId, username, userCode, userType, language, canEditDocument, isDeleted, employeeId, employeeName, permissionCategoryIds: int[], updatedBy, updatedDate }` + +#### 错误码 +- `40101` — 未携带或无效 Token +- `40301` — 当前用户非超级管理员,无权调用 +- `40401` — 用户不存在 + ### REQ-USR-003 修改用户 - **Method**: PUT -- libgit2 0.22.2