diff --git a/文档/基础组件/feign/20250527-engine-starter-feign-2.0.0.md b/文档/基础组件/feign/20250527-engine-starter-feign-2.0.0.md index ed09707..8aa6fe9 100644 --- a/文档/基础组件/feign/20250527-engine-starter-feign-2.0.0.md +++ b/文档/基础组件/feign/20250527-engine-starter-feign-2.0.0.md @@ -23,10 +23,10 @@ # engine-starter-feign 使用教程(Deprecated) + - 该版本存在BUG,请使用 2.0.2 版本 - 在存在 RequestInterceptor 的情况下,token 无法向下游透传的BUG - > 基于 Feign 的通用封装 > 具体使用可参考 [engine-sample > engine-sample-starter-web](../engine-sample/engine-sample-starter-web) diff --git a/文档/基础组件/feign/20250605-engine-starter-feign-2.0.1.md b/文档/基础组件/feign/20250605-engine-starter-feign-2.0.1.md index dc9e7e9..a040668 100644 --- a/文档/基础组件/feign/20250605-engine-starter-feign-2.0.1.md +++ b/文档/基础组件/feign/20250605-engine-starter-feign-2.0.1.md @@ -23,10 +23,10 @@ # engine-starter-feign 使用教程(Deprecated) + - 该版本存在BUG,请使用 2.0.2 版本 - 在存在 RequestInterceptor 的情况下,token 无法向下游透传的BUG - > 基于 Feign 的通用封装 > 具体使用可参考 [engine-sample > engine-sample-starter-web](../engine-sample/engine-sample-starter-web) diff --git a/文档/基础组件/feign/20250617-engine-starter-feign-2.0.2.md b/文档/基础组件/feign/20250617-engine-starter-feign-2.0.2.md index a6b1eda..36da793 100644 --- a/文档/基础组件/feign/20250617-engine-starter-feign-2.0.2.md +++ b/文档/基础组件/feign/20250617-engine-starter-feign-2.0.2.md @@ -24,11 +24,11 @@ # engine-starter-feign 使用教程 - > 基于 Feign 的通用封装 > 具体使用可参考 [engine-sample > engine-sample-starter-web](../engine-sample/engine-sample-starter-web) ## 变更记录 + - 修复存在 RequestInterceptor 的情况下,token 无法向下游透传的BUG ## 功能特性 diff --git a/文档/基础组件/starter/20250527-EngineStarter引入指南-2.0.0.md b/文档/基础组件/starter/20250527-EngineStarter引入指南-2.0.0.md index 0d3df50..5ad1ced 100644 --- a/文档/基础组件/starter/20250527-EngineStarter引入指南-2.0.0.md +++ b/文档/基础组件/starter/20250527-EngineStarter引入指南-2.0.0.md @@ -23,6 +23,7 @@ # 旧项目引入新包教程(Deprecated) + - 该版本存在BUG,请使用 2.0.2 版本 - 在存在 RequestInterceptor 的情况下,token 无法向下游透传的BUG @@ -51,11 +52,12 @@ | oauth2-core | engine-starter-web | engine-starter-compatible-web | | | data-mybatis-plus、data-core | engine-starter-mybatis-plus | engine-starter-compatible-mybatis-plus | | - ### 重复功能禁用 + - 核心包默认集成并开启了一些通用功能 - - 可以通过对应的配置文件关闭核心包中的功能 - - 也可以移除项目中的重复配置代码 + - 可以通过对应的配置文件关闭核心包中的功能 + - 也可以移除项目中的重复配置代码 #### 各个模块的功能特性列表 + [功能特新列表(00-EngineStarter开头)](http://confluence.qifu.com/pages/viewpage.action?pageId=38508258) diff --git a/文档/基础组件/starter/20250617-EngineStarter引入指南-2.0.2.md b/文档/基础组件/starter/20250617-EngineStarter引入指南-2.0.2.md index 78da9f7..4a1b277 100644 --- a/文档/基础组件/starter/20250617-EngineStarter引入指南-2.0.2.md +++ b/文档/基础组件/starter/20250617-EngineStarter引入指南-2.0.2.md @@ -24,7 +24,6 @@ # 旧项目引入新包教程 - - **注意:** `qifu-saas-parent >= 2.0.2-SNAPSHOT` ## 快速使用 @@ -49,11 +48,12 @@ | oauth2-core | engine-starter-web | engine-starter-compatible-web | | | data-mybatis-plus、data-core | engine-starter-mybatis-plus | engine-starter-compatible-mybatis-plus | | - ### 重复功能禁用 + - 核心包默认集成并开启了一些通用功能 - - 可以通过对应的配置文件关闭核心包中的功能 - - 也可以移除项目中的重复配置代码 + - 可以通过对应的配置文件关闭核心包中的功能 + - 也可以移除项目中的重复配置代码 #### 各个模块的功能特性列表 + [功能特新列表(00-EngineStarter开头)](http://confluence.qifu.com/pages/viewpage.action?pageId=38508258) diff --git a/文档/基础组件/web/20250527-engine-starter-web-2.0.0.md b/文档/基础组件/web/20250527-engine-starter-web-2.0.0.md index f220e64..59b541c 100644 --- a/文档/基础组件/web/20250527-engine-starter-web-2.0.0.md +++ b/文档/基础组件/web/20250527-engine-starter-web-2.0.0.md @@ -23,12 +23,12 @@ # engine-starter-web 使用教程(Deprecated) + - 该版本存在BUG,请使用 2.0.2 版本 - 在存在 RequestInterceptor 的情况下,token 无法向下游透传的BUG - > 基于 web 的各种工具封装 -> 具体使用可参考 [engine-sample > engine-sample-starter-web](../engine-sample/engine-sample-starter-web) +> 具体使用可参考 [engine-sample > engine-sample-starter-web](../engine-sample/engine-sample-starter-web) ## 功能特性 diff --git a/文档/基础组件/web/20250605-engine-starter-web-2.0.1.md b/文档/基础组件/web/20250605-engine-starter-web-2.0.1.md index 9a37dc0..5df58b5 100644 --- a/文档/基础组件/web/20250605-engine-starter-web-2.0.1.md +++ b/文档/基础组件/web/20250605-engine-starter-web-2.0.1.md @@ -23,11 +23,16 @@ # engine-starter-web 使用教程(Deprecated) + - 该版本存在BUG,请使用 2.0.2 版本 - 在存在 RequestInterceptor 的情况下,token 无法向下游透传的BUG > 基于 web 的各种工具封装 -> 具体使用可参考 [engine-sample > engine-sample-starter-web](../engine-sample/engine-sample-starter-web) +> 具体使用可参考 [engine-sample > engine-sample-starter-web](../engine-sample/engine-sample-starter-web) + +## 变更记录 + +- 兼容 1.1.3 版本(已废弃,未发布) ## 功能特性 diff --git a/文档/基础组件/web/20250617-engine-starter-web-2.0.2.md b/文档/基础组件/web/20250617-engine-starter-web-2.0.2.md index 8c79dc2..7eb18f1 100644 --- a/文档/基础组件/web/20250617-engine-starter-web-2.0.2.md +++ b/文档/基础组件/web/20250617-engine-starter-web-2.0.2.md @@ -25,9 +25,10 @@ # engine-starter-web 使用教程 > 基于 web 的各种工具封装 -> 具体使用可参考 [engine-sample > engine-sample-starter-web](../engine-sample/engine-sample-starter-web) +> 具体使用可参考 [engine-sample > engine-sample-starter-web](../engine-sample/engine-sample-starter-web) ## 变更记录 + - 添加无限层级填充 - 修复脚手架扫描包问题 - 修复Nacos配置无法自动刷新问题 @@ -36,8 +37,8 @@ - [X] `YmAutofillResponseAdvice`: 全局返回结果填充处理 - [X] `@YmAutoFill` 和 `@YmAutoFillResp`: 结果自动填充 - - 多层级填充实现,[使用样例](#结果自动填充) - - 多层级字段需要使用 `@YmAutofillResp` 标识 + - 多层级填充实现,[使用样例](#结果自动填充) + - 多层级字段需要使用 `@YmAutofillResp` 标识 - [X] `@YmIgnoreResultWrapper`: 忽略 `Result` 结果包装 - [X] `YmResponseAdvice`: 全局结果封装 - [X] `YmGlobalExceptionHandlerAdvice`: 全局异常拦截处理 @@ -260,25 +261,25 @@ import java.util.List; @AllArgsConstructor public enum TestStatusEnum implements YmBaseEnum { - SUCCESS("SUCCESS", "成功"), - FAIL("FAIL", "失败"), - ; + SUCCESS("SUCCESS", "成功"), + FAIL("FAIL", "失败"), + ; - private final String code; - private final String desc; + private final String code; + private final String desc; } @Component public class TestAutoFillHandler implements YmAutofillHandler { - @Override - public Map handle(Collection ids, YmAutofillInfo autofill) { - Collection string = (Collection) ids; - Map result = new HashMap<>(); - string.forEach(k -> result.put(k, k + "value")); - return result; - } + @Override + public Map handle(Collection ids, YmAutofillInfo autofill) { + Collection string = (Collection) ids; + Map result = new HashMap<>(); + string.forEach(k -> result.put(k, k + "value")); + return result; + } } @@ -286,23 +287,23 @@ public class TestAutoFillHandler implements YmAutofillHandler { @NoArgsConstructor public class TestData { - @YmAutofill(enumCls = TestStatusEnum.class) - private String statusName; - private String status; + @YmAutofill(enumCls = TestStatusEnum.class) + private String statusName; + private String status; - private String code; - @YmAutofill(from = "code", type = YmAutofillType.BEAN, handler = TestAutoFillHandler.class) - private String msg; + private String code; + @YmAutofill(from = "code", type = YmAutofillType.BEAN, handler = TestAutoFillHandler.class) + private String msg; - @YmAutofillResp - private List secondList; - @YmAutofillResp - private List childList; + @YmAutofillResp + private List secondList; + @YmAutofillResp + private List childList; - public TestData(String status, String code) { - this.status = status; - this.code = code; - } + public TestData(String status, String code) { + this.status = status; + this.code = code; + } } @@ -310,45 +311,45 @@ public class TestData { @NoArgsConstructor public class TestDataSecond { - private String statusName; - private String status; + private String statusName; + private String status; - private String code; - private String msg; - - @YmAutofillResp - private TestData testData; + private String code; + private String msg; - public TestDataSecond(String status, String code) { - this.status = status; - this.code = code; - } + @YmAutofillResp + private TestData testData; + + public TestDataSecond(String status, String code) { + this.status = status; + this.code = code; + } } public class Usage { - @YmAutofillResp - @GetMapping("/autofill") - public List autofill() { - List list = new ArrayList<>(); - list.add(new TestData(TestStatusEnum.SUCCESS.getCode(), "1")); - list.add(new TestData(TestStatusEnum.FAIL.getCode(), "2")); - return list; - } + @YmAutofillResp + @GetMapping("/autofill") + public List autofill() { + List list = new ArrayList<>(); + list.add(new TestData(TestStatusEnum.SUCCESS.getCode(), "1")); + list.add(new TestData(TestStatusEnum.FAIL.getCode(), "2")); + return list; + } - @YmAutofillResp({ - @YmAutofill(from = "status", target = "statusName", enumCls = TestStatusEnum.class), - @YmAutofill(from = "code", target = "msg", type = YmAutofillType.BEAN, handler = TestAutoFillHandler.class) - }) - @GetMapping("/autofill-second") - public List autofillSecond() { - List list = new ArrayList<>(); - list.add(new TestDataSecond(TestStatusEnum.SUCCESS.getCode(), "1")); - list.add(new TestDataSecond(TestStatusEnum.FAIL.getCode(), "2")); - return list; - } + @YmAutofillResp({ + @YmAutofill(from = "status", target = "statusName", enumCls = TestStatusEnum.class), + @YmAutofill(from = "code", target = "msg", type = YmAutofillType.BEAN, handler = TestAutoFillHandler.class) + }) + @GetMapping("/autofill-second") + public List autofillSecond() { + List list = new ArrayList<>(); + list.add(new TestDataSecond(TestStatusEnum.SUCCESS.getCode(), "1")); + list.add(new TestDataSecond(TestStatusEnum.FAIL.getCode(), "2")); + return list; + } } ```