diff --git a/milvus-plus-core/src/main/java/org/dromara/milvus/plus/core/conditions/ConditionBuilder.java b/milvus-plus-core/src/main/java/org/dromara/milvus/plus/core/conditions/ConditionBuilder.java index a2a6629..862d4f3 100644 --- a/milvus-plus-core/src/main/java/org/dromara/milvus/plus/core/conditions/ConditionBuilder.java +++ b/milvus-plus-core/src/main/java/org/dromara/milvus/plus/core/conditions/ConditionBuilder.java @@ -264,6 +264,24 @@ public abstract class ConditionBuilder { filters.add(fn + " like '%" + value + "%'"); return this; } + protected ConditionBuilder likeLeft(String fieldName, String value) { + filters.add(wrapFieldName(fieldName) + " like '" + value + "%'"); + return this; + } + protected ConditionBuilder likeRight(String fieldName, String value) { + filters.add(wrapFieldName(fieldName) + " like '%'" + value + "'"); + return this; + } + protected ConditionBuilder likeLeft(FieldFunction fieldName, String value) { + String fn = getFieldName(fieldName); + filters.add(fn + " like '" + value + "%'"); + return this; + } + protected ConditionBuilder likeRight(FieldFunction fieldName, String value) { + String fn = getFieldName(fieldName); + filters.add(fn + " like '%" + value + "'"); + return this; + } // JSON array operations public ConditionBuilder jsonContains(FieldFunction fieldName, Object value) { @@ -369,4 +387,5 @@ public abstract class ConditionBuilder { filters.add(wrapFieldName(getFieldName(fieldName)) + " " + op + " " + convertValue(value)); return this; } + } \ No newline at end of file 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 1c2243e..a38d771 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 @@ -180,6 +180,48 @@ public class LambdaDeleteWrapper extends AbstractChainWrapper implements super.like(fieldName,value); return this; } + //// + public LambdaDeleteWrapper likeLeft(String fieldName, String value) { + super.likeLeft(fieldName,value); + return this; + } + public LambdaDeleteWrapper likeLeft(boolean condition,String fieldName, String value) { + if(condition){ + super.likeLeft(fieldName,value); + } + return this; + } + public LambdaDeleteWrapper likeLeft(FieldFunction fieldName, String value) { + super.likeLeft(fieldName,value); + return this; + } + public LambdaDeleteWrapper likeLeft(boolean condition, FieldFunction fieldName, String value) { + if (condition) { + super.likeLeft(fieldName, value); + } + return this; + } + //// + public LambdaDeleteWrapper likeRight(String fieldName, String value) { + super.likeRight(fieldName,value); + return this; + } + public LambdaDeleteWrapper likeRight(boolean condition,String fieldName, String value) { + if(condition){ + super.likeRight(fieldName,value); + } + return this; + } + public LambdaDeleteWrapper likeRight(FieldFunction fieldName, String value) { + super.likeRight(fieldName,value); + return this; + } + public LambdaDeleteWrapper likeRight(boolean condition, FieldFunction fieldName, String value) { + if (condition) { + super.likeRight(fieldName, value); + } + return this; + } public LambdaDeleteWrapper jsonContains(String fieldName, Object value) { super.jsonContains(fieldName,value); 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 eb5928d..c4b2c01 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 @@ -307,6 +307,58 @@ public class LambdaQueryWrapper extends AbstractChainWrapper implements Wr } return this; } + public LambdaQueryWrapper like(FieldFunction fieldName, String value) { + super.like(fieldName,value); + return this; + } + public LambdaQueryWrapper like(boolean condition, FieldFunction fieldName, String value) { + if (condition) { + super.like(fieldName, value); + } + return this; + } + //// + public LambdaQueryWrapper likeLeft(String fieldName, String value) { + super.likeLeft(fieldName,value); + return this; + } + public LambdaQueryWrapper likeLeft(boolean condition,String fieldName, String value) { + if(condition){ + super.likeLeft(fieldName,value); + } + return this; + } + public LambdaQueryWrapper likeLeft(FieldFunction fieldName, String value) { + super.likeLeft(fieldName,value); + return this; + } + public LambdaQueryWrapper likeLeft(boolean condition, FieldFunction fieldName, String value) { + if (condition) { + super.likeLeft(fieldName, value); + } + return this; + } + //// + public LambdaQueryWrapper likeRight(String fieldName, String value) { + super.likeRight(fieldName,value); + return this; + } + public LambdaQueryWrapper likeRight(boolean condition,String fieldName, String value) { + if(condition){ + super.likeRight(fieldName,value); + } + return this; + } + public LambdaQueryWrapper likeRight(FieldFunction fieldName, String value) { + super.likeRight(fieldName,value); + return this; + } + public LambdaQueryWrapper likeRight(boolean condition, FieldFunction fieldName, String value) { + if (condition) { + super.likeRight(fieldName, value); + } + return this; + } public LambdaQueryWrapper jsonContains(String fieldName, Object value) { super.jsonContains(fieldName,value); @@ -438,11 +490,6 @@ public class LambdaQueryWrapper extends AbstractChainWrapper implements Wr return this; } - // Like operator - public LambdaQueryWrapper like(FieldFunction fieldName, String value) { - super.like(fieldName,value); - return this; - } // JSON array operations public LambdaQueryWrapper jsonContains(FieldFunction fieldName, Object value) { @@ -536,13 +583,6 @@ public class LambdaQueryWrapper extends AbstractChainWrapper implements Wr 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); 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 4bcb7ab..ae31757 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 @@ -187,6 +187,48 @@ public class LambdaUpdateWrapper extends AbstractChainWrapper implements W super.like(fieldName,value); return this; } + //// + public LambdaUpdateWrapper likeLeft(String fieldName, String value) { + super.likeLeft(fieldName,value); + return this; + } + public LambdaUpdateWrapper likeLeft(boolean condition,String fieldName, String value) { + if(condition){ + super.likeLeft(fieldName,value); + } + return this; + } + public LambdaUpdateWrapper likeLeft(FieldFunction fieldName, String value) { + super.likeLeft(fieldName,value); + return this; + } + public LambdaUpdateWrapper likeLeft(boolean condition, FieldFunction fieldName, String value) { + if (condition) { + super.likeLeft(fieldName, value); + } + return this; + } + //// + public LambdaUpdateWrapper likeRight(String fieldName, String value) { + super.likeRight(fieldName,value); + return this; + } + public LambdaUpdateWrapper likeRight(boolean condition,String fieldName, String value) { + if(condition){ + super.likeRight(fieldName,value); + } + return this; + } + public LambdaUpdateWrapper likeRight(FieldFunction fieldName, String value) { + super.likeRight(fieldName,value); + return this; + } + public LambdaUpdateWrapper likeRight(boolean condition, FieldFunction fieldName, String value) { + if (condition) { + super.likeRight(fieldName, value); + } + return this; + } public LambdaUpdateWrapper jsonContains(String fieldName, Object value) { super.jsonContains(fieldName,value);