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 18c1b65a7c3c3fce80c4d4ff0094c7c33957c690..c4a34463033544feed781fd1d91bce392164b91b 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 4e592f29a0d81dc9fd24e3bd2c8b5c6ea87838b8..16425d06ee879da937a11def7b98fcbe41425fde 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); /** * 匹配数组中的值