diff --git a/milvus-plus-core/src/main/java/org/dromara/milvus/plus/core/conditions/LambdaDeleteWrapper.java b/milvus-plus-core/src/main/java/org/dromara/milvus/plus/core/conditions/LambdaDeleteWrapper.java index 06922c2..1c2243e 100644 --- a/milvus-plus-core/src/main/java/org/dromara/milvus/plus/core/conditions/LambdaDeleteWrapper.java +++ b/milvus-plus-core/src/main/java/org/dromara/milvus/plus/core/conditions/LambdaDeleteWrapper.java @@ -311,6 +311,231 @@ public class LambdaDeleteWrapper extends AbstractChainWrapper implements super.arrayLength(fieldName,length); return this; } + public LambdaDeleteWrapper eq(boolean condition, String fieldName, Object value) { + if (condition) { + super.eq(fieldName, value); + } + return this; + } + + public LambdaDeleteWrapper ne(boolean condition, String fieldName, Object value) { + if (condition) { + super.ne(fieldName, value); + } + return this; + } + + public LambdaDeleteWrapper gt(boolean condition, String fieldName, Object value) { + if (condition) { + super.gt(fieldName, value); + } + return this; + } + + public LambdaDeleteWrapper ge(boolean condition, String fieldName, Object value) { + if (condition) { + super.ge(fieldName, value); + } + return this; + } + + public LambdaDeleteWrapper lt(boolean condition, String fieldName, Object value) { + if (condition) { + super.lt(fieldName, value); + } + return this; + } + + public LambdaDeleteWrapper le(boolean condition, String fieldName, Object value) { + if (condition) { + super.le(fieldName, value); + } + return this; + } + + public LambdaDeleteWrapper between(boolean condition, String fieldName, Object start, Object end) { + if (condition) { + super.between(fieldName, start, end); + } + return this; + } + + + public LambdaDeleteWrapper in(boolean condition, String fieldName, List values) { + if (condition) { + super.in(fieldName, values); + } + return this; + } + + public LambdaDeleteWrapper like(boolean condition, String fieldName, String value) { + if (condition) { + super.like(fieldName, value); + } + return this; + } + + public LambdaDeleteWrapper jsonContains(boolean condition, String fieldName, Object value) { + if (condition) { + super.jsonContains(fieldName, value); + } + return this; + } + + public LambdaDeleteWrapper jsonContainsAll(boolean condition, String fieldName, List values) { + if (condition) { + super.jsonContainsAll(fieldName, values); + } + return this; + } + + public LambdaDeleteWrapper jsonContainsAny(boolean condition, String fieldName, List values) { + if (condition) { + super.jsonContainsAny(fieldName, values); + } + return this; + } + + public LambdaDeleteWrapper arrayContains(boolean condition, String fieldName, Object value) { + if (condition) { + super.arrayContains(fieldName, value); + } + return this; + } + + public LambdaDeleteWrapper arrayContainsAll(boolean condition, String fieldName, List values) { + if (condition) { + super.arrayContainsAll(fieldName, values); + } + return this; + } + + public LambdaDeleteWrapper arrayContainsAny(boolean condition, String fieldName, List values) { + if (condition) { + super.arrayContainsAny(fieldName, values); + } + return this; + } + + public LambdaDeleteWrapper arrayLength(boolean condition, String fieldName, int length) { + if (condition) { + super.arrayLength(fieldName, length); + } + return this; + } + + // FieldFunction version methods with condition parameter added + public LambdaDeleteWrapper eq(boolean condition, FieldFunction fieldName, Object value) { + if (condition) { + super.eq(fieldName, value); + } + return this; + } + + public LambdaDeleteWrapper ne(boolean condition, FieldFunction fieldName, Object value) { + if (condition) { + super.ne(fieldName, value); + } + return this; + } + + public LambdaDeleteWrapper gt(boolean condition, FieldFunction fieldName, Object value) { + if (condition) { + super.gt(fieldName, value); + } + return this; + } + + public LambdaDeleteWrapper ge(boolean condition, FieldFunction fieldName, Object value) { + if (condition) { + super.ge(fieldName, value); + } + return this; + } + + public LambdaDeleteWrapper lt(boolean condition, FieldFunction fieldName, Object value) { + if (condition) { + super.lt(fieldName, value); + } + return this; + } + + public LambdaDeleteWrapper le(boolean condition, FieldFunction fieldName, Object value) { + if (condition) { + super.le(fieldName, value); + } + return this; + } + + public LambdaDeleteWrapper between(boolean condition, FieldFunction fieldName, Object start, Object end) { + if (condition) { + super.between(fieldName, start, end); + } + return this; + } + + public LambdaDeleteWrapper in(boolean condition, FieldFunction fieldName, List values) { + if (condition) { + super.in(fieldName, values); + } + return this; + } + + public LambdaDeleteWrapper like(boolean condition, FieldFunction fieldName, String value) { + if (condition) { + super.like(fieldName, value); + } + return this; + } + + public LambdaDeleteWrapper jsonContains(boolean condition, FieldFunction fieldName, Object value) { + if (condition) { + super.jsonContains(fieldName, value); + } + return this; + } + + public LambdaDeleteWrapper jsonContainsAll(boolean condition, FieldFunction fieldName, List values) { + if (condition) { + super.jsonContainsAll(fieldName, values); + } + return this; + } + + public LambdaDeleteWrapper jsonContainsAny(boolean condition, FieldFunction fieldName, List values) { + if (condition) { + super.jsonContainsAny(fieldName, values); + } + return this; + } + + public LambdaDeleteWrapper arrayContains(boolean condition, FieldFunction fieldName, Object value) { + if (condition) { + super.arrayContains(fieldName, value); + } + return this; + } + + public LambdaDeleteWrapper arrayContainsAll(boolean condition, FieldFunction fieldName, List values) { + if (condition) { + super.arrayContainsAll(fieldName, values); + } + return this; + } + + public LambdaDeleteWrapper arrayContainsAny(boolean condition, FieldFunction fieldName, List values) { + if (condition) { + super.arrayContainsAny(fieldName, values); + } + return this; + } + + public LambdaDeleteWrapper arrayLength(boolean condition, FieldFunction fieldName, int length) { + if (condition) { + super.arrayLength(fieldName, length); + } + return this; + } // Logic operations public LambdaDeleteWrapper and(ConditionBuilder other) { diff --git a/milvus-plus-core/src/main/java/org/dromara/milvus/plus/core/conditions/LambdaQueryWrapper.java b/milvus-plus-core/src/main/java/org/dromara/milvus/plus/core/conditions/LambdaQueryWrapper.java index 925aab4..05c3557 100644 --- a/milvus-plus-core/src/main/java/org/dromara/milvus/plus/core/conditions/LambdaQueryWrapper.java +++ b/milvus-plus-core/src/main/java/org/dromara/milvus/plus/core/conditions/LambdaQueryWrapper.java @@ -133,6 +133,13 @@ public class LambdaQueryWrapper extends AbstractChainWrapper implements Wr super.eq(fieldName,value); return this; } + public LambdaQueryWrapper eq(boolean condition,String fieldName, Object value) { + if(condition){ + super.eq(fieldName,value); + } + return this; + } + /** * 添加不等于条件。 @@ -145,6 +152,12 @@ public class LambdaQueryWrapper extends AbstractChainWrapper implements Wr super.ne(fieldName,value); return this; } + public LambdaQueryWrapper ne(boolean condition,String fieldName, Object value) { + if(condition){ + super.ne(fieldName,value); + } + return this; + } /** * 添加大于条件。 @@ -157,6 +170,12 @@ public class LambdaQueryWrapper extends AbstractChainWrapper implements Wr super.gt(fieldName,value); return this; } + public LambdaQueryWrapper gt(boolean condition,String fieldName, Object value) { + if(condition){ + super.gt(fieldName,value); + } + return this; + } /** * 添加大于等于条件。 @@ -169,6 +188,12 @@ public class LambdaQueryWrapper extends AbstractChainWrapper implements Wr super.ge(fieldName,value); return this; } + public LambdaQueryWrapper ge(boolean condition,String fieldName, Object value) { + if(condition){ + super.ge(fieldName,value); + } + return this; + } /** * 添加小于条件。 @@ -181,6 +206,12 @@ public class LambdaQueryWrapper extends AbstractChainWrapper implements Wr super.lt(fieldName,value); return this; } + public LambdaQueryWrapper lt(boolean condition,String fieldName, Object value) { + if(condition){ + super.lt(fieldName,value); + } + return this; + } /** * 添加小于等于条件。 @@ -193,6 +224,12 @@ public class LambdaQueryWrapper extends AbstractChainWrapper implements Wr super.le(fieldName,value); return this; } + public LambdaQueryWrapper le(boolean condition,String fieldName, Object value) { + if(condition){ + super.le(fieldName,value); + } + return this; + } /** * 添加范围条件。 @@ -206,6 +243,12 @@ public class LambdaQueryWrapper extends AbstractChainWrapper implements Wr super.between(fieldName,start,end); return this; } + public LambdaQueryWrapper between(boolean condition,String fieldName, Object start, Object end) { + if(condition){ + super.between(fieldName,start,end); + } + return this; + } /** * 添加空值检查条件。 @@ -240,6 +283,12 @@ public class LambdaQueryWrapper extends AbstractChainWrapper implements Wr super.in(fieldName,values); return this; } + public LambdaQueryWrapper in(boolean condition,String fieldName, List values) { + if(condition){ + super.in(fieldName,values); + } + return this; + } /** * 添加LIKE条件。 @@ -252,42 +301,89 @@ public class LambdaQueryWrapper extends AbstractChainWrapper implements Wr super.like(fieldName,value); return this; } + public LambdaQueryWrapper like(boolean condition,String fieldName, String value) { + if(condition){ + super.like(fieldName,value); + } + return this; + } public LambdaQueryWrapper jsonContains(String fieldName, Object value) { super.jsonContains(fieldName,value); return this; } + public LambdaQueryWrapper jsonContains(boolean condition,String fieldName, Object value) { + if(condition){ + super.jsonContains(fieldName,value); + } + return this; + } public LambdaQueryWrapper jsonContainsAll(String fieldName, List values) { super.jsonContainsAll(fieldName,values); return this; } - + public LambdaQueryWrapper jsonContainsAll(boolean condition,String fieldName, List values) { + if(condition){ + super.jsonContainsAll(fieldName,values); + } + return this; + } public LambdaQueryWrapper jsonContainsAny(String fieldName, List values) { super.jsonContainsAny(fieldName,values); return this; } + public LambdaQueryWrapper jsonContainsAny(boolean condition,String fieldName, List values) { + if(condition){ + super.jsonContainsAny(fieldName,values); + } + return this; + } // Array operations public LambdaQueryWrapper arrayContains(String fieldName, Object value) { super.arrayContains(fieldName,value); return this; } + public LambdaQueryWrapper arrayContains(boolean condition,String fieldName, Object value) { + if(condition){ + super.arrayContains(fieldName,value); + } + return this; + } public LambdaQueryWrapper arrayContainsAll(String fieldName, List values) { super.arrayContainsAll(fieldName,values); return this; } + public LambdaQueryWrapper arrayContainsAll(boolean condition,String fieldName, List values) { + if(condition){ + super.arrayContainsAll(fieldName,values); + } + return this; + } public LambdaQueryWrapper arrayContainsAny(String fieldName, List values) { super.arrayContainsAny(fieldName,values); return this; } + public LambdaQueryWrapper arrayContainsAny(boolean condition,String fieldName, List values) { + if(condition){ + super.arrayContainsAny(fieldName,values); + } + return this; + } public LambdaQueryWrapper arrayLength(String fieldName, int length) { super.arrayLength(fieldName,length); return this; } + public LambdaQueryWrapper arrayLength(boolean condition,String fieldName, int length) { + if(condition){ + super.arrayLength(fieldName,length); + } + return this; + } public LambdaQueryWrapper eq(FieldFunction fieldName, Object value) { super.eq(fieldName,value); @@ -384,6 +480,118 @@ public class LambdaQueryWrapper extends AbstractChainWrapper implements Wr return this; } + public LambdaQueryWrapper eq(boolean condition, FieldFunction fieldName, Object value) { + if (condition) { + super.eq(fieldName, value); + } + return this; + } + + public LambdaQueryWrapper ne(boolean condition, FieldFunction fieldName, Object value) { + if (condition) { + super.ne(fieldName, value); + } + return this; + } + + public LambdaQueryWrapper gt(boolean condition, FieldFunction fieldName, Object value) { + if (condition) { + super.gt(fieldName, value); + } + return this; + } + + public LambdaQueryWrapper ge(boolean condition, FieldFunction fieldName, Object value) { + if (condition) { + super.ge(fieldName, value); + } + return this; + } + + public LambdaQueryWrapper lt(boolean condition, FieldFunction fieldName, Object value) { + if (condition) { + super.lt(fieldName, value); + } + return this; + } + + public LambdaQueryWrapper le(boolean condition, FieldFunction fieldName, Object value) { + if (condition) { + super.le(fieldName, value); + } + return this; + } + + public LambdaQueryWrapper between(boolean condition, FieldFunction fieldName, Object start, Object end) { + if (condition) { + super.between(fieldName, start, end); + } + return this; + } + + public LambdaQueryWrapper in(boolean condition, FieldFunction fieldName, List values) { + if (condition) { + super.in(fieldName, values); + } + return this; + } + + public LambdaQueryWrapper like(boolean condition, FieldFunction fieldName, String value) { + if (condition) { + super.like(fieldName, value); + } + return this; + } + + public LambdaQueryWrapper jsonContains(boolean condition, FieldFunction fieldName, Object value) { + if (condition) { + super.jsonContains(fieldName, value); + } + return this; + } + + public LambdaQueryWrapper jsonContainsAll(boolean condition, FieldFunction fieldName, List values) { + if (condition) { + super.jsonContainsAll(fieldName, values); + } + return this; + } + + public LambdaQueryWrapper jsonContainsAny(boolean condition, FieldFunction fieldName, List values) { + if (condition) { + super.jsonContainsAny(fieldName, values); + } + return this; + } + + public LambdaQueryWrapper arrayContains(boolean condition, FieldFunction fieldName, Object value) { + if (condition) { + super.arrayContains(fieldName, value); + } + return this; + } + + public LambdaQueryWrapper arrayContainsAll(boolean condition, FieldFunction fieldName, List values) { + if (condition) { + super.arrayContainsAll(fieldName, values); + } + return this; + } + + public LambdaQueryWrapper arrayContainsAny(boolean condition, FieldFunction fieldName, List values) { + if (condition) { + super.arrayContainsAny(fieldName, values); + } + return this; + } + + public LambdaQueryWrapper arrayLength(boolean condition, FieldFunction fieldName, int length) { + if (condition) { + super.arrayLength(fieldName, length); + } + return this; + } + // Logic operations public LambdaQueryWrapper and(ConditionBuilder other) { super.and(other); diff --git a/milvus-plus-core/src/main/java/org/dromara/milvus/plus/core/conditions/LambdaUpdateWrapper.java b/milvus-plus-core/src/main/java/org/dromara/milvus/plus/core/conditions/LambdaUpdateWrapper.java index dd6af02..4bcb7ab 100644 --- a/milvus-plus-core/src/main/java/org/dromara/milvus/plus/core/conditions/LambdaUpdateWrapper.java +++ b/milvus-plus-core/src/main/java/org/dromara/milvus/plus/core/conditions/LambdaUpdateWrapper.java @@ -318,6 +318,229 @@ public class LambdaUpdateWrapper extends AbstractChainWrapper implements W super.arrayLength(fieldName,length); return this; } + public LambdaUpdateWrapper eq(boolean condition, String fieldName, Object value) { + if (condition) { + super.eq(fieldName, value); + } + return this; + } + + public LambdaUpdateWrapper ne(boolean condition, String fieldName, Object value) { + if (condition) { + super.ne(fieldName, value); + } + return this; + } + + public LambdaUpdateWrapper gt(boolean condition, String fieldName, Object value) { + if (condition) { + super.gt(fieldName, value); + } + return this; + } + + public LambdaUpdateWrapper ge(boolean condition, String fieldName, Object value) { + if (condition) { + super.ge(fieldName, value); + } + return this; + } + + public LambdaUpdateWrapper lt(boolean condition, String fieldName, Object value) { + if (condition) { + super.lt(fieldName, value); + } + return this; + } + + public LambdaUpdateWrapper le(boolean condition, String fieldName, Object value) { + if (condition) { + super.le(fieldName, value); + } + return this; + } + + public LambdaUpdateWrapper between(boolean condition, String fieldName, Object start, Object end) { + if (condition) { + super.between(fieldName, start, end); + } + return this; + } + + public LambdaUpdateWrapper in(boolean condition, String fieldName, List values) { + if (condition) { + super.in(fieldName, values); + } + return this; + } + + public LambdaUpdateWrapper like(boolean condition, String fieldName, String value) { + if (condition) { + super.like(fieldName, value); + } + return this; + } + + public LambdaUpdateWrapper jsonContains(boolean condition, String fieldName, Object value) { + if (condition) { + super.jsonContains(fieldName, value); + } + return this; + } + + public LambdaUpdateWrapper jsonContainsAll(boolean condition, String fieldName, List values) { + if (condition) { + super.jsonContainsAll(fieldName, values); + } + return this; + } + + public LambdaUpdateWrapper jsonContainsAny(boolean condition, String fieldName, List values) { + if (condition) { + super.jsonContainsAny(fieldName, values); + } + return this; + } + + public LambdaUpdateWrapper arrayContains(boolean condition, String fieldName, Object value) { + if (condition) { + super.arrayContains(fieldName, value); + } + return this; + } + + public LambdaUpdateWrapper arrayContainsAll(boolean condition, String fieldName, List values) { + if (condition) { + super.arrayContainsAll(fieldName, values); + } + return this; + } + + public LambdaUpdateWrapper arrayContainsAny(boolean condition, String fieldName, List values) { + if (condition) { + super.arrayContainsAny(fieldName, values); + } + return this; + } + + public LambdaUpdateWrapper arrayLength(boolean condition, String fieldName, int length) { + if (condition) { + super.arrayLength(fieldName, length); + } + return this; + } + + public LambdaUpdateWrapper eq(boolean condition, FieldFunction fieldName, Object value) { + if (condition) { + super.eq(fieldName, value); + } + return this; + } + + public LambdaUpdateWrapper ne(boolean condition, FieldFunction fieldName, Object value) { + if (condition) { + super.ne(fieldName, value); + } + return this; + } + + public LambdaUpdateWrapper gt(boolean condition, FieldFunction fieldName, Object value) { + if (condition) { + super.gt(fieldName, value); + } + return this; + } + + public LambdaUpdateWrapper ge(boolean condition, FieldFunction fieldName, Object value) { + if (condition) { + super.ge(fieldName, value); + } + return this; + } + + public LambdaUpdateWrapper lt(boolean condition, FieldFunction fieldName, Object value) { + if (condition) { + super.lt(fieldName, value); + } + return this; + } + + public LambdaUpdateWrapper le(boolean condition, FieldFunction fieldName, Object value) { + if (condition) { + super.le(fieldName, value); + } + return this; + } + + public LambdaUpdateWrapper between(boolean condition, FieldFunction fieldName, Object start, Object end) { + if (condition) { + super.between(fieldName, start, end); + } + return this; + } + + public LambdaUpdateWrapper in(boolean condition, FieldFunction fieldName, List values) { + if (condition) { + super.in(fieldName, values); + } + return this; + } + + public LambdaUpdateWrapper like(boolean condition, FieldFunction fieldName, String value) { + if (condition) { + super.like(fieldName, value); + } + return this; + } + + public LambdaUpdateWrapper jsonContains(boolean condition, FieldFunction fieldName, Object value) { + if (condition) { + super.jsonContains(fieldName, value); + } + return this; + } + + public LambdaUpdateWrapper jsonContainsAll(boolean condition, FieldFunction fieldName, List values) { + if (condition) { + super.jsonContainsAll(fieldName, values); + } + return this; + } + + public LambdaUpdateWrapper jsonContainsAny(boolean condition, FieldFunction fieldName, List values) { + if (condition) { + super.jsonContainsAny(fieldName, values); + } + return this; + } + + public LambdaUpdateWrapper arrayContains(boolean condition, FieldFunction fieldName, Object value) { + if (condition) { + super.arrayContains(fieldName, value); + } + return this; + } + + public LambdaUpdateWrapper arrayContainsAll(boolean condition, FieldFunction fieldName, List values) { + if (condition) { + super.arrayContainsAll(fieldName, values); + } + return this; + } + + public LambdaUpdateWrapper arrayContainsAny(boolean condition, FieldFunction fieldName, List values) { + if (condition) { + super.arrayContainsAny(fieldName, values); + } + return this; + } + + public LambdaUpdateWrapper arrayLength(boolean condition, FieldFunction fieldName, int length) { + if (condition) { + super.arrayLength(fieldName, length); + } + return this; + } // Logic operations public LambdaUpdateWrapper and(ConditionBuilder other) {