Commit 398543d37bb342e0d7b65dcde1f7433b6450b6a7

Authored by zichun
1 parent 03f6c603

feat(common): USR_NOT_FOUND + iStaffId IGNORED REQ-USR-002

backend/src/main/java/com/xly/erp/common/response/ErrorCode.java
... ... @@ -10,6 +10,7 @@ public enum ErrorCode {
10 10 MOD_NOT_FOUND(40421, "模块不存在或已删除"),
11 11 STAFF_NOT_FOUND(40421, "职员不存在或已删除"),
12 12 PERM_CATEGORY_NOT_FOUND(40422, "权限分类不存在或已删除"),
  13 + USR_NOT_FOUND(40431, "用户不存在或已删除"),
13 14 MOD_PROC_NAME_DUP(40911, "存储过程名称已存在"),
14 15 MOD_HAS_REFERENCES(40912, "存在子模块或外部业务引用,禁止删除"),
15 16 MOD_PARENT_LOOP(40921, "iParentId 不能等于自身或后代"),
... ...
backend/src/main/java/com/xly/erp/module/usr/entity/UserEntity.java
1 1 package com.xly.erp.module.usr.entity;
2 2  
  3 +import com.baomidou.mybatisplus.annotation.FieldStrategy;
3 4 import com.baomidou.mybatisplus.annotation.IdType;
4 5 import com.baomidou.mybatisplus.annotation.TableField;
5 6 import com.baomidou.mybatisplus.annotation.TableId;
... ... @@ -34,7 +35,9 @@ public class UserEntity {
34 35 @TableField("sUserName")
35 36 private String sUserName;
36 37  
37   - @TableField("iStaffId")
  38 + /** REQ-USR-002 允许更新为 null(清空员工关联),用 IGNORED 让 MP updateById 把 NULL 写入 SQL。
  39 + * 注意:此策略意味着任何 updateById 都会写 iStaffId;调用方必须 selectById 后再 updateById(load-then-modify)。 */
  40 + @TableField(value = "iStaffId", updateStrategy = FieldStrategy.IGNORED)
38 41 private Integer iStaffId;
39 42  
40 43 @TableField("sUserType")
... ...
backend/src/test/java/com/xly/erp/common/response/ApiResponseTest.java
... ... @@ -54,5 +54,6 @@ class ApiResponseTest {
54 54 assertThat(ErrorCode.STAFF_NOT_FOUND.getCode()).isEqualTo(40421);
55 55 assertThat(ErrorCode.PERM_CATEGORY_NOT_FOUND.getCode()).isEqualTo(40422);
56 56 assertThat(ErrorCode.USR_USER_NAME_OR_NO_DUP.getCode()).isEqualTo(40921);
  57 + assertThat(ErrorCode.USR_NOT_FOUND.getCode()).isEqualTo(40431);
57 58 }
58 59 }
... ...