From ed116d2acda1a8639e7034e36409ee2d93ffab1e Mon Sep 17 00:00:00 2001
From: squallzhjch <zhangjingchao@navinfo.com>
Date: Thu, 26 Oct 2023 10:04:20 +0800
Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E6=9F=A5=E8=AF=A2=E8=AF=AD?=
 =?UTF-8?q?=E5=8F=A5?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 app/src/main/java/com/navinfo/omqs/db/ImportPreProcess.kt  | 7 +++----
 .../main/java/com/navinfo/omqs/db/RealmOperateHelper.kt    | 7 +++----
 2 files changed, 6 insertions(+), 8 deletions(-)

diff --git a/app/src/main/java/com/navinfo/omqs/db/ImportPreProcess.kt b/app/src/main/java/com/navinfo/omqs/db/ImportPreProcess.kt
index dbf124f8..b394acf0 100644
--- a/app/src/main/java/com/navinfo/omqs/db/ImportPreProcess.kt
+++ b/app/src/main/java/com/navinfo/omqs/db/ImportPreProcess.kt
@@ -260,7 +260,7 @@ class ImportPreProcess {
 
             // 将这个起终点的线记录在数据中
             val startReference = ReferenceEntity()
-            startReference.renderEntityId = renderEntity.id
+//            startReference.renderEntityId = renderEntity.id
             startReference.name = "${renderEntity.name}参考点"
             startReference.code = renderEntity.code
             startReference.table = renderEntity.table
@@ -278,7 +278,7 @@ class ImportPreProcess {
             listResult.add(startReference)
 
             val endReference = ReferenceEntity()
-            endReference.renderEntityId = renderEntity.id
+//            endReference.renderEntityId = renderEntity.id
             endReference.name = "${renderEntity.name}参考点"
             endReference.code = renderEntity.code
             endReference.table = renderEntity.table
@@ -960,7 +960,7 @@ class ImportPreProcess {
         insertData(listResult)
     }
 
-    private fun insertData(list: List<ReferenceEntity>) {
+    private fun insertData(list: List<RealmModel>) {
         realm?.let {
             Log.e("qj", "子表插入==")
             if (list != null && list.isNotEmpty()) {
@@ -969,7 +969,6 @@ class ImportPreProcess {
                 Log.e("qj", "子表插入结束==")
             }
         }
-
     }
 
     /**
diff --git a/app/src/main/java/com/navinfo/omqs/db/RealmOperateHelper.kt b/app/src/main/java/com/navinfo/omqs/db/RealmOperateHelper.kt
index 37e949dd..97f81dd7 100644
--- a/app/src/main/java/com/navinfo/omqs/db/RealmOperateHelper.kt
+++ b/app/src/main/java/com/navinfo/omqs/db/RealmOperateHelper.kt
@@ -131,12 +131,11 @@ class RealmOperateHelper() {
         val yEnd = tileYSet.stream().max(Comparator.naturalOrder()).orElse(null)
         // 查询realm中对应tile号的数据
         val realm = getSelectTaskRealmInstance()
+        val sql =
+            " ((tileXMin <= $xStart and tileXMax >= $xStart) or (tileXMin <=$xEnd and tileXMax >=$xStart)) and ((tileYMin <= $yStart and tileYMax >= $yStart) or (tileYMin <=$yEnd and tileYMin >=$yStart))"
         val realmList = getSelectTaskRealmTools(realm, RenderEntity::class.java, true)
             .equalTo("table", table)
-            .greaterThanOrEqualTo("tileX", xStart)
-            .lessThanOrEqualTo("tileX", xEnd)
-            .greaterThanOrEqualTo("tileY", yStart)
-            .lessThanOrEqualTo("tileY", yEnd)
+            .rawPredicate(sql)
             .findAll()
         // 将获取到的数据和查询的polygon做相交,只返回相交的数据
         val dataList = realm.copyFromRealm(realmList)