diff --git a/ebatis-core/pom.xml b/ebatis-core/pom.xml
index 87e040f..8776e6c 100644
--- a/ebatis-core/pom.xml
+++ b/ebatis-core/pom.xml
@@ -5,7 +5,7 @@
ebatis
io.manbang
- 6.5.1.1.RELEASE
+ 6.5.1.2.RELEASE
4.0.0
ebatis-core
diff --git a/ebatis-core/src/main/java/io/manbang/ebatis/core/domain/DefaultRange.java b/ebatis-core/src/main/java/io/manbang/ebatis/core/domain/DefaultRange.java
index b3141ad..2b8dd42 100644
--- a/ebatis-core/src/main/java/io/manbang/ebatis/core/domain/DefaultRange.java
+++ b/ebatis-core/src/main/java/io/manbang/ebatis/core/domain/DefaultRange.java
@@ -1,12 +1,14 @@
package io.manbang.ebatis.core.domain;
import io.manbang.ebatis.core.exception.ConditionNotSupportException;
+import org.elasticsearch.common.geo.ShapeRelation;
import org.elasticsearch.index.query.QueryBuilder;
import org.elasticsearch.index.query.QueryBuilders;
import org.elasticsearch.index.query.RangeQueryBuilder;
import java.util.Calendar;
import java.util.Date;
+import java.util.Objects;
/**
@@ -20,6 +22,7 @@ class DefaultRange> implements Range {
private IntervalType leftIntervalType;
private IntervalType rightIntervalType;
private String name;
+ private ShapeRelation relation;
public DefaultRange(T min, T max) {
this.min = min;
@@ -73,6 +76,30 @@ public Range openRight() {
return this;
}
+ @Override
+ public Range intersects() {
+ relation = ShapeRelation.INTERSECTS;
+ return this;
+ }
+
+ @Override
+ public Range disjoint() {
+ relation = ShapeRelation.DISJOINT;
+ return this;
+ }
+
+ @Override
+ public Range within() {
+ relation = ShapeRelation.WITHIN;
+ return this;
+ }
+
+ @Override
+ public Range contains() {
+ relation = ShapeRelation.CONTAINS;
+ return this;
+ }
+
@Override
public QueryBuilder toBuilder() {
Object left = getValue(min);
@@ -80,6 +107,10 @@ public QueryBuilder toBuilder() {
RangeQueryBuilder builder = QueryBuilders.rangeQuery(name);
+ //设置范围关系
+ if (Objects.nonNull(relation)) {
+ builder.relation(relation.getRelationName());
+ }
// 如果左界限为空,右界限肯定不是空值,因为上面已经判断了,左右界限同时为空的场景
if (left == null) {
rightIntervalType.right(builder, right);
diff --git a/ebatis-core/src/main/java/io/manbang/ebatis/core/domain/Range.java b/ebatis-core/src/main/java/io/manbang/ebatis/core/domain/Range.java
index b4b27b8..e8b12c6 100644
--- a/ebatis-core/src/main/java/io/manbang/ebatis/core/domain/Range.java
+++ b/ebatis-core/src/main/java/io/manbang/ebatis/core/domain/Range.java
@@ -100,6 +100,34 @@ static > Range ge(T min) {
*/
Range openRight();
+ /**
+ * 范围相交
+ *
+ * @return 自身
+ */
+ Range intersects();
+
+ /**
+ * 范围不相交
+ *
+ * @return 自身
+ */
+ Range disjoint();
+
+ /**
+ * 范围在内部
+ *
+ * @return 自身
+ */
+ Range within();
+
+ /**
+ * 范围包含
+ *
+ * @return 自身
+ */
+ Range contains();
+
/**
* 转换成ES的插叙构建器
*
diff --git a/ebatis-sample/pom.xml b/ebatis-sample/pom.xml
index 67124df..329d3f0 100644
--- a/ebatis-sample/pom.xml
+++ b/ebatis-sample/pom.xml
@@ -5,7 +5,7 @@
ebatis
io.manbang
- 6.5.1.1.RELEASE
+ 6.5.1.2.RELEASE
4.0.0
@@ -16,7 +16,7 @@
io.manbang
ebatis-spring
- 6.5.1.1.RELEASE
+ 6.5.1.2.RELEASE
diff --git a/ebatis-spring-boot/ebatis-spring-boot-autoconfigure/pom.xml b/ebatis-spring-boot/ebatis-spring-boot-autoconfigure/pom.xml
index b5c2383..fbb6a55 100644
--- a/ebatis-spring-boot/ebatis-spring-boot-autoconfigure/pom.xml
+++ b/ebatis-spring-boot/ebatis-spring-boot-autoconfigure/pom.xml
@@ -5,7 +5,7 @@
ebatis-spring-boot
io.manbang
- 6.5.1.1.RELEASE
+ 6.5.1.2.RELEASE
4.0.0
diff --git a/ebatis-spring-boot/ebatis-spring-boot-starter/pom.xml b/ebatis-spring-boot/ebatis-spring-boot-starter/pom.xml
index 9c4054f..0f13553 100644
--- a/ebatis-spring-boot/ebatis-spring-boot-starter/pom.xml
+++ b/ebatis-spring-boot/ebatis-spring-boot-starter/pom.xml
@@ -5,7 +5,7 @@
ebatis-spring-boot
io.manbang
- 6.5.1.1.RELEASE
+ 6.5.1.2.RELEASE
4.0.0
diff --git a/ebatis-spring-boot/pom.xml b/ebatis-spring-boot/pom.xml
index 37b3ff4..17d4342 100644
--- a/ebatis-spring-boot/pom.xml
+++ b/ebatis-spring-boot/pom.xml
@@ -5,7 +5,7 @@
ebatis
io.manbang
- 6.5.1.1.RELEASE
+ 6.5.1.2.RELEASE
4.0.0
@@ -30,17 +30,17 @@
io.manbang
ebatis-spring
- 6.5.1.1.RELEASE
+ 6.5.1.2.RELEASE
io.manbang
ebatis-core
- 6.5.1.1.RELEASE
+ 6.5.1.2.RELEASE
io.manbang
ebatis-spring-boot-autoconfigure
- 6.5.1.1.RELEASE
+ 6.5.1.2.RELEASE
diff --git a/ebatis-spring/pom.xml b/ebatis-spring/pom.xml
index e1f4eb1..1c5ae85 100644
--- a/ebatis-spring/pom.xml
+++ b/ebatis-spring/pom.xml
@@ -5,7 +5,7 @@
ebatis
io.manbang
- 6.5.1.1.RELEASE
+ 6.5.1.2.RELEASE
4.0.0
ebatis-spring
@@ -14,7 +14,7 @@
ebatis-core
io.manbang
- 6.5.1.1.RELEASE
+ 6.5.1.2.RELEASE
org.springframework
diff --git a/ebatis-web/pom.xml b/ebatis-web/pom.xml
index f25f661..fb1e239 100644
--- a/ebatis-web/pom.xml
+++ b/ebatis-web/pom.xml
@@ -5,7 +5,7 @@
ebatis
io.manbang
- 6.5.1.1.RELEASE
+ 6.5.1.2.RELEASE
4.0.0
diff --git a/pom.xml b/pom.xml
index c82432d..3b23aaf 100644
--- a/pom.xml
+++ b/pom.xml
@@ -6,7 +6,7 @@
io.manbang
ebatis
- 6.5.1.1.RELEASE
+ 6.5.1.2.RELEASE
pom
ebatis
Elasticsearch ORM Framework
@@ -29,7 +29,7 @@
1.11
1.2
2.6
- 4.11
+ 4.13.1
4.3.16.RELEASE
1.5.12.RELEASE
1.2.61
@@ -43,7 +43,7 @@
${java.version}
${java.version}
true
- 2.8.11
+ 2.11.3
2.6
1.0-rc5
1.0-rc7