From b8cff89a12b712125c0ac242d008afcd1e731ed4 Mon Sep 17 00:00:00 2001 From: wuKong Date: Fri, 8 May 2026 17:34:04 +0800 Subject: [PATCH] =?UTF-8?q?feat(mybatis-query):=20=E6=B7=BB=E5=8A=A0=20lik?= =?UTF-8?q?eRightIfPresent=20=E6=96=B9=E6=B3=95=E6=94=AF=E6=8C=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 在 LambdaQueryWrapperX 中添加 likeRightIfPresent 方法 - 在 MPJLambdaWrapperX 中添加 likeRightIfPresent 方法 - 在 QueryWrapperX 中添加 likeRightIfPresent 方法 - 实现非空字符串条件判断逻辑 - 保持链式调用的一致性设计 --- .../framework/mybatis/core/query/LambdaQueryWrapperX.java | 6 ++++++ .../framework/mybatis/core/query/MPJLambdaWrapperX.java | 7 +++++++ .../yudao/framework/mybatis/core/query/QueryWrapperX.java | 7 +++++++ 3 files changed, 20 insertions(+) diff --git a/yudao-framework/yudao-spring-boot-starter-mybatis/src/main/java/cn/iocoder/yudao/framework/mybatis/core/query/LambdaQueryWrapperX.java b/yudao-framework/yudao-spring-boot-starter-mybatis/src/main/java/cn/iocoder/yudao/framework/mybatis/core/query/LambdaQueryWrapperX.java index a728365e6..e78b016cb 100644 --- a/yudao-framework/yudao-spring-boot-starter-mybatis/src/main/java/cn/iocoder/yudao/framework/mybatis/core/query/LambdaQueryWrapperX.java +++ b/yudao-framework/yudao-spring-boot-starter-mybatis/src/main/java/cn/iocoder/yudao/framework/mybatis/core/query/LambdaQueryWrapperX.java @@ -24,6 +24,12 @@ public class LambdaQueryWrapperX extends LambdaQueryWrapper { } return this; } + public LambdaQueryWrapperX likeRightIfPresent(SFunction column, String val) { + if (StringUtils.hasText(val)) { + return (LambdaQueryWrapperX) super.likeRight(column, val); + } + return this; + } public LambdaQueryWrapperX inIfPresent(SFunction column, Collection values) { if (ObjectUtil.isAllNotEmpty(values) && !ArrayUtil.isEmpty(values)) { diff --git a/yudao-framework/yudao-spring-boot-starter-mybatis/src/main/java/cn/iocoder/yudao/framework/mybatis/core/query/MPJLambdaWrapperX.java b/yudao-framework/yudao-spring-boot-starter-mybatis/src/main/java/cn/iocoder/yudao/framework/mybatis/core/query/MPJLambdaWrapperX.java index aed2f02df..f3677181f 100644 --- a/yudao-framework/yudao-spring-boot-starter-mybatis/src/main/java/cn/iocoder/yudao/framework/mybatis/core/query/MPJLambdaWrapperX.java +++ b/yudao-framework/yudao-spring-boot-starter-mybatis/src/main/java/cn/iocoder/yudao/framework/mybatis/core/query/MPJLambdaWrapperX.java @@ -27,6 +27,13 @@ public class MPJLambdaWrapperX extends MPJLambdaWrapper { return this; } + public MPJLambdaWrapperX likeRightIfPresent(SFunction column, String val) { + if (StringUtils.hasText(val)) { + return (MPJLambdaWrapperX) super.likeRight(column, val); + } + return this; + } + public MPJLambdaWrapperX inIfPresent(SFunction column, Collection values) { if (ObjectUtil.isAllNotEmpty(values) && !ArrayUtil.isEmpty(values)) { return (MPJLambdaWrapperX) super.in(column, values); diff --git a/yudao-framework/yudao-spring-boot-starter-mybatis/src/main/java/cn/iocoder/yudao/framework/mybatis/core/query/QueryWrapperX.java b/yudao-framework/yudao-spring-boot-starter-mybatis/src/main/java/cn/iocoder/yudao/framework/mybatis/core/query/QueryWrapperX.java index 087b1b846..419454777 100644 --- a/yudao-framework/yudao-spring-boot-starter-mybatis/src/main/java/cn/iocoder/yudao/framework/mybatis/core/query/QueryWrapperX.java +++ b/yudao-framework/yudao-spring-boot-starter-mybatis/src/main/java/cn/iocoder/yudao/framework/mybatis/core/query/QueryWrapperX.java @@ -25,6 +25,13 @@ public class QueryWrapperX extends QueryWrapper { return this; } + public QueryWrapperX likeRightIfPresent(String column, String val) { + if (StringUtils.hasText(val)) { + return (QueryWrapperX) super.likeRight(column, val); + } + return this; + } + public QueryWrapperX inIfPresent(String column, Collection values) { if (!CollectionUtils.isEmpty(values)) { return (QueryWrapperX) super.in(column, values);