From ab9f64483cbf6f924587ff182c01a2aff4afa572 Mon Sep 17 00:00:00 2001
From: luoweijian <1329394916@qq.com>
Date: Fri, 7 Aug 2026 15:50:01 +0800
Subject: [PATCH] =?UTF-8?q?refactor(crm-dict):=20judgement=20call=20#6=20#?=
=?UTF-8?q?7=20=E2=80=94=20pom=20version=20extraction=20+=20VO=20independe?=
=?UTF-8?q?nt=20fields?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
#6 mybatis-spring 版本提取到父 pom:
- 父 pom properties 新增 mybatis-spring.version=3.0.3
- 父 pom dependencyManagement 新增 mybatis-spring 依赖声明
- crm-dict/pom.xml 去掉 version 和 scope=compile(由父 pom 统一管理)
#7 VO extends 实体重构为独立字段:
- DictGroupVO:不 extends DictGroup,独立定义 9 个字段(排除审计字段和软删内部字段)
- DictItemVO:不 extends DictItem,独立定义 14 个字段
- DictGroupServiceImpl:DictGroup::getId -> DictGroupVO::getId(fillItemCount)
- DictItemServiceImpl:DictItem::getGroupId -> DictItemVO::getGroupId(enrich)
- DictGroupServiceTest:pageGroups 断言 DictGroup::getCode -> DictGroupVO::getCode
全量 48/48 测试通过。
---
crm-dict/pom.xml | 2 --
.../com/crm/dict/domain/dto/DictGroupVO.java | 25 ++++++++++++---
.../com/crm/dict/domain/dto/DictItemVO.java | 31 ++++++++++++++++---
.../service/impl/DictGroupServiceImpl.java | 2 +-
.../service/impl/DictItemServiceImpl.java | 2 +-
.../service/impl/DictGroupServiceTest.java | 6 ++--
pom.xml | 8 +++++
7 files changed, 60 insertions(+), 16 deletions(-)
diff --git a/crm-dict/pom.xml b/crm-dict/pom.xml
index aa2b885..7f36aae 100644
--- a/crm-dict/pom.xml
+++ b/crm-dict/pom.xml
@@ -50,8 +50,6 @@
独立字段(不继承实体),只暴露前端需要的业务字段 + createTime, + * 排除审计字段(creatorId/updaterId/updateTime/deleted)和软删内部字段(deleteKey)。
*/ @Data -@EqualsAndHashCode(callSuper = true) -public class DictGroupVO extends DictGroup { +public class DictGroupVO { + + private Long id; + + private String name; + + private String code; + + private Integer sortNo; + + private Integer status; + + private String description; + + private Boolean builtin; + + private LocalDateTime createTime; @Schema(description = "分组下未删除的字典项数量(含启用+停用)") private Long itemCount; diff --git a/crm-dict/src/main/java/com/crm/dict/domain/dto/DictItemVO.java b/crm-dict/src/main/java/com/crm/dict/domain/dto/DictItemVO.java index 4e5fd48..524d088 100644 --- a/crm-dict/src/main/java/com/crm/dict/domain/dto/DictItemVO.java +++ b/crm-dict/src/main/java/com/crm/dict/domain/dto/DictItemVO.java @@ -1,18 +1,39 @@ package com.crm.dict.domain.dto; -import com.crm.dict.domain.entity.DictItem; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; -import lombok.EqualsAndHashCode; + +import java.time.LocalDateTime; /** * 字典项视图对象:分页列表展示用 *referenced 读实时引用计数(绝不进缓存);effectiveSelectable 供前端对 - * "自身启用但所属分组已停用"的失活项做视觉标记。
+ * "自身启用但所属分组已停用"的失活项做视觉标记。 + * 独立字段(不继承实体),只暴露前端需要的业务字段 + createTime, + * 排除审计字段(creatorId/updaterId/updateTime/deleted)和软删内部字段(deleteKey)。 */ @Data -@EqualsAndHashCode(callSuper = true) -public class DictItemVO extends DictItem { +public class DictItemVO { + + private Long id; + + private Long groupId; + + private String name; + + private String code; + + private String value; + + private Integer sortNo; + + private Integer status; + + private String description; + + private Boolean builtin; + + private LocalDateTime createTime; @Schema(description = "所属分组名称") private String groupName; diff --git a/crm-dict/src/main/java/com/crm/dict/service/impl/DictGroupServiceImpl.java b/crm-dict/src/main/java/com/crm/dict/service/impl/DictGroupServiceImpl.java index 8144740..ee3d5ca 100644 --- a/crm-dict/src/main/java/com/crm/dict/service/impl/DictGroupServiceImpl.java +++ b/crm-dict/src/main/java/com/crm/dict/service/impl/DictGroupServiceImpl.java @@ -162,7 +162,7 @@ public class DictGroupServiceImpl extends BaseServiceImpl