From 067b098aa15ded638af23cfd7ccb84a959be7266 Mon Sep 17 00:00:00 2001 From: "zhiye.sun" Date: Tue, 19 May 2026 16:20:54 +0800 Subject: [PATCH] =?UTF-8?q?refactor:=20=E8=B0=83=E6=95=B4=E9=80=9A?= =?UTF-8?q?=E7=94=A8=E9=A2=86=E5=9F=9F=E6=A8=A1=E5=9E=8B=E5=8C=85=E7=BB=93?= =?UTF-8?q?=E6=9E=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../{ => domain}/entity/SysAttachment.java | 3 +- .../common/{ => domain}/entity/SysEnum.java | 3 +- .../{entity => domain/model}/BaseEntity.java | 2 +- .../common/domain/model/RequestResult.java | 59 +++++++++++++++++++ .../common/mapper/SysAttachmentMapper.java | 2 +- .../bruce/common/mapper/SysEnumMapper.java | 2 +- .../com/bruce/rag/entity/RagDocument.java | 2 +- .../java/com/bruce/rag/entity/RagStore.java | 2 +- .../common/entity/EntityStructureTests.java | 3 + .../enumconfig/SysEnumDataInitTests.java | 2 +- .../model/RequestResultStructureTests.java | 55 +++++++++++++++++ 11 files changed, 127 insertions(+), 8 deletions(-) rename src/main/java/com/bruce/common/{ => domain}/entity/SysAttachment.java (94%) rename src/main/java/com/bruce/common/{ => domain}/entity/SysEnum.java (90%) rename src/main/java/com/bruce/common/{entity => domain/model}/BaseEntity.java (96%) create mode 100644 src/main/java/com/bruce/common/domain/model/RequestResult.java create mode 100644 src/test/java/com/bruce/common/model/RequestResultStructureTests.java diff --git a/src/main/java/com/bruce/common/entity/SysAttachment.java b/src/main/java/com/bruce/common/domain/entity/SysAttachment.java similarity index 94% rename from src/main/java/com/bruce/common/entity/SysAttachment.java rename to src/main/java/com/bruce/common/domain/entity/SysAttachment.java index 64534b6..b190d37 100644 --- a/src/main/java/com/bruce/common/entity/SysAttachment.java +++ b/src/main/java/com/bruce/common/domain/entity/SysAttachment.java @@ -1,7 +1,8 @@ -package com.bruce.common.entity; +package com.bruce.common.domain.entity; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableName; +import com.bruce.common.domain.model.BaseEntity; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; import lombok.EqualsAndHashCode; diff --git a/src/main/java/com/bruce/common/entity/SysEnum.java b/src/main/java/com/bruce/common/domain/entity/SysEnum.java similarity index 90% rename from src/main/java/com/bruce/common/entity/SysEnum.java rename to src/main/java/com/bruce/common/domain/entity/SysEnum.java index 2333072..2a7a823 100644 --- a/src/main/java/com/bruce/common/entity/SysEnum.java +++ b/src/main/java/com/bruce/common/domain/entity/SysEnum.java @@ -1,6 +1,7 @@ -package com.bruce.common.entity; +package com.bruce.common.domain.entity; import com.baomidou.mybatisplus.annotation.TableName; +import com.bruce.common.domain.model.BaseEntity; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; import lombok.EqualsAndHashCode; diff --git a/src/main/java/com/bruce/common/entity/BaseEntity.java b/src/main/java/com/bruce/common/domain/model/BaseEntity.java similarity index 96% rename from src/main/java/com/bruce/common/entity/BaseEntity.java rename to src/main/java/com/bruce/common/domain/model/BaseEntity.java index b999c54..7b9fd86 100644 --- a/src/main/java/com/bruce/common/entity/BaseEntity.java +++ b/src/main/java/com/bruce/common/domain/model/BaseEntity.java @@ -1,4 +1,4 @@ -package com.bruce.common.entity; +package com.bruce.common.domain.model; import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableField; diff --git a/src/main/java/com/bruce/common/domain/model/RequestResult.java b/src/main/java/com/bruce/common/domain/model/RequestResult.java new file mode 100644 index 0000000..d829176 --- /dev/null +++ b/src/main/java/com/bruce/common/domain/model/RequestResult.java @@ -0,0 +1,59 @@ +package com.bruce.common.domain.model; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +@Data +@NoArgsConstructor +@AllArgsConstructor +public class RequestResult { + + public static final String FAIL_CODE = "-1"; + + public static final String SUCCESS_CODE = "0"; + + @Schema(description = "错误消息") + private String message; + + @Schema(description = "消息代码") + private String resultcode; + + @Schema(description = "数据") + private T data; + + public RequestResult(T data) { + this.resultcode = SUCCESS_CODE; + this.data = data; + } + + public static RequestResult success() { + return build(SUCCESS_CODE, null, null); + } + + public static RequestResult success(T data) { + return build(SUCCESS_CODE, null, data); + } + + public static RequestResult success(String message, T data) { + return build(SUCCESS_CODE, message, data); + } + + public static RequestResult fail(String message) { + return build(FAIL_CODE, message, null); + } + + public static RequestResult fail(String resultcode, String message) { + return build(resultcode, message, null); + } + + private static RequestResult build(String resultcode, String message, T data) { + RequestResult result = new RequestResult<>(); + result.setResultcode(resultcode); + result.setMessage(message); + result.setData(data); + return result; + } + +} diff --git a/src/main/java/com/bruce/common/mapper/SysAttachmentMapper.java b/src/main/java/com/bruce/common/mapper/SysAttachmentMapper.java index a78cf1e..521623e 100644 --- a/src/main/java/com/bruce/common/mapper/SysAttachmentMapper.java +++ b/src/main/java/com/bruce/common/mapper/SysAttachmentMapper.java @@ -1,7 +1,7 @@ package com.bruce.common.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.bruce.common.entity.SysAttachment; +import com.bruce.common.domain.entity.SysAttachment; import org.apache.ibatis.annotations.Mapper; @Mapper diff --git a/src/main/java/com/bruce/common/mapper/SysEnumMapper.java b/src/main/java/com/bruce/common/mapper/SysEnumMapper.java index 6e3e4a2..2251367 100644 --- a/src/main/java/com/bruce/common/mapper/SysEnumMapper.java +++ b/src/main/java/com/bruce/common/mapper/SysEnumMapper.java @@ -1,7 +1,7 @@ package com.bruce.common.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.bruce.common.entity.SysEnum; +import com.bruce.common.domain.entity.SysEnum; import org.apache.ibatis.annotations.Mapper; @Mapper diff --git a/src/main/java/com/bruce/rag/entity/RagDocument.java b/src/main/java/com/bruce/rag/entity/RagDocument.java index 5f07d5a..efa3d2f 100644 --- a/src/main/java/com/bruce/rag/entity/RagDocument.java +++ b/src/main/java/com/bruce/rag/entity/RagDocument.java @@ -2,7 +2,7 @@ package com.bruce.rag.entity; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableName; -import com.bruce.common.entity.BaseEntity; +import com.bruce.common.domain.model.BaseEntity; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; import lombok.EqualsAndHashCode; diff --git a/src/main/java/com/bruce/rag/entity/RagStore.java b/src/main/java/com/bruce/rag/entity/RagStore.java index f4b25ea..6aa3f3a 100644 --- a/src/main/java/com/bruce/rag/entity/RagStore.java +++ b/src/main/java/com/bruce/rag/entity/RagStore.java @@ -1,7 +1,7 @@ package com.bruce.rag.entity; import com.baomidou.mybatisplus.annotation.TableName; -import com.bruce.common.entity.BaseEntity; +import com.bruce.common.domain.model.BaseEntity; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; import lombok.EqualsAndHashCode; diff --git a/src/test/java/com/bruce/common/entity/EntityStructureTests.java b/src/test/java/com/bruce/common/entity/EntityStructureTests.java index b95b58e..7467916 100644 --- a/src/test/java/com/bruce/common/entity/EntityStructureTests.java +++ b/src/test/java/com/bruce/common/entity/EntityStructureTests.java @@ -3,6 +3,9 @@ package com.bruce.common.entity; import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.Version; +import com.bruce.common.domain.model.BaseEntity; +import com.bruce.common.domain.entity.SysAttachment; +import com.bruce.common.domain.entity.SysEnum; import io.swagger.v3.oas.annotations.media.Schema; import org.junit.jupiter.api.Test; diff --git a/src/test/java/com/bruce/common/enumconfig/SysEnumDataInitTests.java b/src/test/java/com/bruce/common/enumconfig/SysEnumDataInitTests.java index e84c1a7..8eb7e5d 100644 --- a/src/test/java/com/bruce/common/enumconfig/SysEnumDataInitTests.java +++ b/src/test/java/com/bruce/common/enumconfig/SysEnumDataInitTests.java @@ -1,7 +1,7 @@ package com.bruce.common.enumconfig; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.bruce.common.entity.SysEnum; +import com.bruce.common.domain.entity.SysEnum; import com.bruce.common.enums.CommonStatusEnum; import com.bruce.common.enums.EnableStatusEnum; import com.bruce.common.service.ISysEnumService; diff --git a/src/test/java/com/bruce/common/model/RequestResultStructureTests.java b/src/test/java/com/bruce/common/model/RequestResultStructureTests.java new file mode 100644 index 0000000..ed2912c --- /dev/null +++ b/src/test/java/com/bruce/common/model/RequestResultStructureTests.java @@ -0,0 +1,55 @@ +package com.bruce.common.model; + +import com.bruce.common.domain.model.RequestResult; +import org.junit.jupiter.api.Test; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertNull; + +class RequestResultStructureTests { + + @Test + void dataConstructorShouldDefaultToSuccessCode() { + RequestResult result = new RequestResult<>("payload"); + + assertEquals(RequestResult.SUCCESS_CODE, result.getResultcode()); + assertNull(result.getMessage()); + assertEquals("payload", result.getData()); + } + + @Test + void successFactoryShouldBuildSuccessfulResult() { + RequestResult result = RequestResult.success("payload"); + + assertEquals(RequestResult.SUCCESS_CODE, result.getResultcode()); + assertNull(result.getMessage()); + assertEquals("payload", result.getData()); + } + + @Test + void successFactoryWithMessageShouldKeepCustomMessage() { + RequestResult result = RequestResult.success("操作成功", "payload"); + + assertEquals(RequestResult.SUCCESS_CODE, result.getResultcode()); + assertEquals("操作成功", result.getMessage()); + assertEquals("payload", result.getData()); + } + + @Test + void failFactoryShouldBuildFailureResult() { + RequestResult result = RequestResult.fail("校验失败"); + + assertEquals(RequestResult.FAIL_CODE, result.getResultcode()); + assertEquals("校验失败", result.getMessage()); + assertNull(result.getData()); + } + + @Test + void failFactoryWithCustomCodeShouldKeepCustomCode() { + RequestResult result = RequestResult.fail("VALIDATE_ERROR", "校验失败"); + + assertEquals("VALIDATE_ERROR", result.getResultcode()); + assertEquals("校验失败", result.getMessage()); + assertNull(result.getData()); + } +}