From 0d92f7cbf5be8e2d324bdf78a1ba518cc76420ea Mon Sep 17 00:00:00 2001 From: "HTGD\\mayf" Date: Mon, 25 Mar 2024 16:33:41 +0800 Subject: [PATCH] update elemMatch --- .../conditions/AbstractChainWrapper.java | 19 +++++++++++++++---- .../mongo/conditions/interfaces/Compare.java | 4 ++-- 2 files changed, 17 insertions(+), 6 deletions(-) diff --git a/mongo-plus-core/src/main/java/com/anwen/mongo/conditions/AbstractChainWrapper.java b/mongo-plus-core/src/main/java/com/anwen/mongo/conditions/AbstractChainWrapper.java index 18c1b65..c4a3446 100644 --- a/mongo-plus-core/src/main/java/com/anwen/mongo/conditions/AbstractChainWrapper.java +++ b/mongo-plus-core/src/main/java/com/anwen/mongo/conditions/AbstractChainWrapper.java @@ -473,12 +473,12 @@ public abstract class AbstractChainWrapper column, QueryChainWrapper queryChainWrapper) { + public Children elemMatch(boolean condition, SFunction column, QueryChainWrapper queryChainWrapper) { return condition ? elemMatch(column,queryChainWrapper) : typedThis; } @Override - public Children elemMatch(SFunction column, QueryChainWrapper queryChainWrapper) { + public Children elemMatch(SFunction column, QueryChainWrapper queryChainWrapper) { return getChildBaseCondition(column,queryChainWrapper.getCompareList(),LogicTypeEnum.ELEMMATCH.getKey()); } @@ -629,12 +629,23 @@ public abstract class AbstractChainWrapper column, Object value){ - compareList.add(CompareCondition.builder().condition(Thread.currentThread().getStackTrace()[2].getMethodName()).column(column.getFieldNameLine()).value(value).type(CompareEnum.QUERY.getKey()).logicType(LogicTypeEnum.AND.getKey()).build()); + compareList.add(CompareCondition.builder() + .condition(Thread.currentThread().getStackTrace()[2].getMethodName()) + .column(column.getFieldNameLine()) + .value(value) + .type(CompareEnum.QUERY.getKey()) + .logicType(LogicTypeEnum.AND.getKey()) + .build()); return typedThis; } public Children getChildBaseCondition(SFunction column,List value,Integer logic){ - this.compareList.add(CompareCondition.builder().column(column.getFieldNameLine()).type(CompareEnum.QUERY.getKey()).logicType(logic).childCondition(value).build()); + this.compareList.add(CompareCondition.builder() + .column(column.getFieldNameLine()) + .type(CompareEnum.QUERY.getKey()) + .logicType(logic) + .childCondition(value) + .build()); return typedThis; } diff --git a/mongo-plus-core/src/main/java/com/anwen/mongo/conditions/interfaces/Compare.java b/mongo-plus-core/src/main/java/com/anwen/mongo/conditions/interfaces/Compare.java index 4e592f2..16425d0 100644 --- a/mongo-plus-core/src/main/java/com/anwen/mongo/conditions/interfaces/Compare.java +++ b/mongo-plus-core/src/main/java/com/anwen/mongo/conditions/interfaces/Compare.java @@ -838,7 +838,7 @@ public interface Compare extends Serializable { * @author JiaChaoYang * @date 2023/7/19 23:29 */ - Children elemMatch(boolean condition,SFunction column , QueryChainWrapper queryChainWrapper); + Children elemMatch(boolean condition,SFunction column , QueryChainWrapper queryChainWrapper); /** * 匹配数组中的值 @@ -848,7 +848,7 @@ public interface Compare extends Serializable { * @author JiaChaoYang * @date 2023/7/19 23:31 */ - Children elemMatch(SFunction column , QueryChainWrapper queryChainWrapper); + Children elemMatch(SFunction column , QueryChainWrapper queryChainWrapper); /** * 匹配数组中的值 -- Gitee