浏览代码

接口调试

gushoubang 9 月之前
父节点
当前提交
dc19f29569

+ 5 - 46
onemap-modules/onemap-analyse/src/main/java/com/onemap/analyse/controller/analyse/AnalyseUtilsDBController.java

@@ -16,11 +16,9 @@ import java.util.List;
 @RestController
 @RestController
 @RequestMapping("/analyse/db")
 @RequestMapping("/analyse/db")
 public class AnalyseUtilsDBController extends BaseController {
 public class AnalyseUtilsDBController extends BaseController {
-
     @Autowired
     @Autowired
     private AnalyseUtilsDBService analyseUtilsDBService;
     private AnalyseUtilsDBService analyseUtilsDBService;
 
 
-
     /**
     /**
      * table中与wkt数据是否有交集
      * table中与wkt数据是否有交集
      *
      *
@@ -33,48 +31,9 @@ public class AnalyseUtilsDBController extends BaseController {
         if (analyseUtilsVo == null) {
         if (analyseUtilsVo == null) {
             RequestResult.error("analyseUtilsVo is null");
             RequestResult.error("analyseUtilsVo is null");
         }
         }
-        return RequestResult.success(analyseUtilsDBService.intersectsTableWkt(
-                analyseUtilsVo.getTableName(),
-                analyseUtilsVo.getTableIds(),
-                analyseUtilsVo.getEwkt()));
+        return RequestResult.success(analyseUtilsDBService.intersectsTableWkt(analyseUtilsVo.getTableName(), analyseUtilsVo.getTableIds(), analyseUtilsVo.getEwkt()));
     }
     }
 
 
-
-    // /**
-    //  * table中与wkt数据取交集
-    //  *
-    //  * @param inputTable          TABLE名称(vater空间中表)
-    //  * @param inputSRID           table
-    //  * @param inputIds            查询数据集ID
-    //  * @param intersectionWkt     wkt
-    //  * @param intersectionWktSRID wkt对应的坐标
-    //  * @param outputColumn        返回TABLE表中的字段,先已返回,ID,GEOM(交集的),geom_area (交集的)
-    //  * @return
-    //  */
-    // @PostMapping("/intersection/table_wkt")
-    // @Slave
-    // public RequestResult intersectionTableWkt(@RequestParam(value = "inputTable") String inputTable, @RequestParam(value = "inputSRID", required = false) Integer inputSRID, @RequestParam(value = "inputIds", required = false) List<String> inputIds, @RequestParam(value = "intersectionWkt") String intersectionWkt, @RequestParam(value = "intersectionWktSRID", required = false) Integer intersectionWktSRID, @RequestParam(value = "outputColumn", required = false) List<String> outputColumn) {
-    //     return RequestResult.success(analyseUtilsDBService.intersectionTableWkt(inputTable, inputSRID, inputIds, intersectionWkt, intersectionWktSRID, outputColumn));
-    // }
-
-    // /**
-    //  * table中与wkt数据取交集
-    //  *
-    //  * @param inputTable          TABLE名称(vater空间中表)
-    //  * @param inputSRID           table
-    //  * @param inputIds            查询数据集ID
-    //  * @param intersectionWkt     wkt
-    //  * @param intersectionWktSRID wkt对应的坐标
-    //  * @param outputColumn        返回TABLE表中的字段,先已返回,ID,GEOM(交集的),geom_area (交集的)
-    //  * @return
-    //  */
-    // @PostMapping("/intersection/table_wkt_v1")
-    // @Slave
-    // public RequestResult intersectionTableWktV1(@RequestBody IntersectsTableWktVo analyseUtilsVo) {
-    //     return RequestResult.success(analyseUtilsDBService.intersectionTableWkt(analyseUtilsVo.getInputTable(), analyseUtilsVo.getInputSRID(), analyseUtilsVo.getInputIds(), analyseUtilsVo.getAnalyseWkt(), analyseUtilsVo.getAnalyseWktSRID(), analyseUtilsVo.getOutputColumn()));
-    // }
-
-
     /**
     /**
      * 计算wkt包含table中的数据,返回table id
      * 计算wkt包含table中的数据,返回table id
      *
      *
@@ -83,7 +42,7 @@ public class AnalyseUtilsDBController extends BaseController {
      */
      */
     @PostMapping("/contains/table_wkt")
     @PostMapping("/contains/table_wkt")
     @Slave
     @Slave
-    public RequestResult containsTableWkt(ContainsTableWktVo containsTableWktVo) {
+    public RequestResult containsTableWkt(@RequestBody ContainsTableWktVo containsTableWktVo) {
         return RequestResult.success(analyseUtilsDBService.containsTableWkt(containsTableWktVo.getTableName(), containsTableWktVo.getTableIds(), containsTableWktVo.getEwkt()));
         return RequestResult.success(analyseUtilsDBService.containsTableWkt(containsTableWktVo.getTableName(), containsTableWktVo.getTableIds(), containsTableWktVo.getEwkt()));
     }
     }
 
 
@@ -95,7 +54,7 @@ public class AnalyseUtilsDBController extends BaseController {
      */
      */
     @PostMapping("/contains/tables")
     @PostMapping("/contains/tables")
     @Slave
     @Slave
-    public RequestResult containsTables(ContainsTablesVo containsTablesVo) {
+    public RequestResult containsTables(@RequestBody ContainsTablesVo containsTablesVo) {
         return RequestResult.success(analyseUtilsDBService.containsTables(containsTablesVo.getTableNameA(), containsTablesVo.getTableNameB(), containsTablesVo.getTableIdsB()));
         return RequestResult.success(analyseUtilsDBService.containsTables(containsTablesVo.getTableNameA(), containsTablesVo.getTableNameB(), containsTablesVo.getTableIdsB()));
     }
     }
 
 
@@ -108,7 +67,7 @@ public class AnalyseUtilsDBController extends BaseController {
      */
      */
     @PostMapping("/distance/table_wkt")
     @PostMapping("/distance/table_wkt")
     @Slave
     @Slave
-    public RequestResult distanceTableWkt(DistanceTableWktVo distanceTableWktVo) {
+    public RequestResult distanceTableWkt(@RequestBody DistanceTableWktVo distanceTableWktVo) {
         return RequestResult.success(analyseUtilsDBService.distanceTableWkt(distanceTableWktVo.getTableName(), distanceTableWktVo.getTableIds(), distanceTableWktVo.getEwkt(), distanceTableWktVo.getDistance()));
         return RequestResult.success(analyseUtilsDBService.distanceTableWkt(distanceTableWktVo.getTableName(), distanceTableWktVo.getTableIds(), distanceTableWktVo.getEwkt(), distanceTableWktVo.getDistance()));
     }
     }
 
 
@@ -120,7 +79,7 @@ public class AnalyseUtilsDBController extends BaseController {
      */
      */
     @PostMapping("/distance/tables")
     @PostMapping("/distance/tables")
     @Slave
     @Slave
-    public RequestResult distanceTables(DistanceTablesVo distanceTablesVo) {
+    public RequestResult distanceTables(@RequestBody DistanceTablesVo distanceTablesVo) {
         return RequestResult.success(analyseUtilsDBService.distanceTables(distanceTablesVo.getTableNameA(), distanceTablesVo.getTableNameB(), distanceTablesVo.getTableIdsB(), distanceTablesVo.getDistance()));
         return RequestResult.success(analyseUtilsDBService.distanceTables(distanceTablesVo.getTableNameA(), distanceTablesVo.getTableNameB(), distanceTablesVo.getTableIdsB(), distanceTablesVo.getDistance()));
     }
     }
 }
 }

+ 8 - 11
onemap-modules/onemap-analyse/src/main/java/com/onemap/analyse/controller/analyse/CreateUtilsDBController.java

@@ -3,16 +3,17 @@ package com.onemap.analyse.controller.analyse;
 import com.onemap.analyse.domain.vo.BufferTablesVo;
 import com.onemap.analyse.domain.vo.BufferTablesVo;
 import com.onemap.analyse.domain.vo.DifferenceTablesVo;
 import com.onemap.analyse.domain.vo.DifferenceTablesVo;
 import com.onemap.analyse.domain.vo.IntersectsTableWktVo;
 import com.onemap.analyse.domain.vo.IntersectsTableWktVo;
-import com.onemap.analyse.service.AnalyseUtilsDBService;
 import com.onemap.analyse.service.CreateUtilsDBService;
 import com.onemap.analyse.service.CreateUtilsDBService;
 import com.onemap.common.core.web.controller.BaseController;
 import com.onemap.common.core.web.controller.BaseController;
 import com.onemap.common.core.web.domain.RequestResult;
 import com.onemap.common.core.web.domain.RequestResult;
 import com.onemap.common.datasource.annotation.Slave;
 import com.onemap.common.datasource.annotation.Slave;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
 
 
 import java.util.HashMap;
 import java.util.HashMap;
-import java.util.List;
 import java.util.Map;
 import java.util.Map;
 
 
 /**
 /**
@@ -27,13 +28,12 @@ public class CreateUtilsDBController extends BaseController {
     /**
     /**
      * 生成表空间数据的缓冲区
      * 生成表空间数据的缓冲区
      *
      *
-     * @param tableName
-     * @param radius
+     * @param bufferTablesVo
      * @return
      * @return
      */
      */
     @PostMapping("/buffer/tables")
     @PostMapping("/buffer/tables")
     @Slave
     @Slave
-    public RequestResult bufferTables(BufferTablesVo bufferTablesVo) {
+    public RequestResult bufferTables(@RequestBody BufferTablesVo bufferTablesVo) {
         String newTable = createUtilsDBService.bufferTable(
         String newTable = createUtilsDBService.bufferTable(
                 bufferTablesVo.getTableName(),
                 bufferTablesVo.getTableName(),
                 bufferTablesVo.getRadius());
                 bufferTablesVo.getRadius());
@@ -46,14 +46,12 @@ public class CreateUtilsDBController extends BaseController {
     /**
     /**
      * 生成表tableNameB空间数据的差集,B-ST_Intersection(A,B)
      * 生成表tableNameB空间数据的差集,B-ST_Intersection(A,B)
      *
      *
-     * @param tableNameA
-     * @param inputIdsA
-     * @param tableNameB
+     * @param differenceTablesVo
      * @return
      * @return
      */
      */
     @PostMapping("/difference/tables")
     @PostMapping("/difference/tables")
     @Slave
     @Slave
-    public RequestResult differenceTables(DifferenceTablesVo differenceTablesVo) {
+    public RequestResult differenceTables(@RequestBody DifferenceTablesVo differenceTablesVo) {
         String newTable = createUtilsDBService.differenceTables(
         String newTable = createUtilsDBService.differenceTables(
                 differenceTablesVo.getTableNameA(),
                 differenceTablesVo.getTableNameA(),
                 differenceTablesVo.getTableIdsA(),
                 differenceTablesVo.getTableIdsA(),
@@ -67,7 +65,6 @@ public class CreateUtilsDBController extends BaseController {
      * table中与wkt数据取交集
      * table中与wkt数据取交集
      *
      *
      * @param intersectsTableWktVo
      * @param intersectsTableWktVo
-
      * @return
      * @return
      */
      */
     @PostMapping("/intersection/table_wkt")
     @PostMapping("/intersection/table_wkt")

+ 1 - 1
onemap-modules/onemap-analyse/src/main/java/com/onemap/analyse/domain/vo/ContainsTableWktVo.java

@@ -7,6 +7,6 @@ import java.util.List;
 @Data
 @Data
 public class ContainsTableWktVo {
 public class ContainsTableWktVo {
     String tableName;
     String tableName;
-    List<String> tableIds;
+    List<Integer> tableIds;
     String ewkt;
     String ewkt;
 }
 }

+ 1 - 1
onemap-modules/onemap-analyse/src/main/java/com/onemap/analyse/domain/vo/ContainsTablesVo.java

@@ -8,5 +8,5 @@ import java.util.List;
 public class ContainsTablesVo {
 public class ContainsTablesVo {
     String tableNameA;
     String tableNameA;
     String tableNameB;
     String tableNameB;
-    List<String> tableIdsB;
+    List<Integer> tableIdsB;
 }
 }

+ 1 - 1
onemap-modules/onemap-analyse/src/main/java/com/onemap/analyse/domain/vo/DistanceTableWktVo.java

@@ -7,7 +7,7 @@ import java.util.List;
 @Data
 @Data
 public class DistanceTableWktVo {
 public class DistanceTableWktVo {
     String tableName;
     String tableName;
-    List<String> tableIds;
+    List<Integer> tableIds;
     String ewkt;
     String ewkt;
     Integer distance;
     Integer distance;
 }
 }

+ 1 - 1
onemap-modules/onemap-analyse/src/main/java/com/onemap/analyse/domain/vo/DistanceTablesVo.java

@@ -8,6 +8,6 @@ import java.util.List;
 public class DistanceTablesVo {
 public class DistanceTablesVo {
     String tableNameA;
     String tableNameA;
     String tableNameB;
     String tableNameB;
-    List<String> tableIdsB;
+    List<Integer> tableIdsB;
     Integer distance;
     Integer distance;
 }
 }

+ 4 - 24
onemap-modules/onemap-analyse/src/main/java/com/onemap/analyse/mapper/AnalyseUtilsDBMapper.java

@@ -21,26 +21,6 @@ public interface AnalyseUtilsDBMapper {
             @Param("tableName") String tableName,
             @Param("tableName") String tableName,
             @Param("tableIds") List<Integer> tableIds,
             @Param("tableIds") List<Integer> tableIds,
             @Param("ewkt") String ewkt);
             @Param("ewkt") String ewkt);
-
-    /**
-     * table中与wkt数据取交集
-     *
-     * @param inputTable          TABLE名称(vater空间中表)
-     * @param inputSRID           table
-     * @param inputIds            查询数据集ID
-     * @param intersectionWkt     wkt
-     * @param intersectionWktSRID wkt对应的坐标
-     * @param outputColumn        返回TABLE表中的字段,先已返回,ID,GEOM(交集的),geom_area (交集的)
-     * @return
-     */
-    List<Map> intersectionTableWkt(
-            @Param("inputTable") String inputTable,
-            @Param("inputSRID") Integer inputSRID,
-            @Param("inputIds") List<String> inputIds,
-            @Param("intersectionWkt") String intersectionWkt,
-            @Param("intersectionWktSRID") Integer intersectionWktSRID,
-            @Param("outputColumn") List<String> outputColumn);
-
     /**
     /**
      * 计算wkt包含table中的数据,返回table id
      * 计算wkt包含table中的数据,返回table id
      *
      *
@@ -51,7 +31,7 @@ public interface AnalyseUtilsDBMapper {
      */
      */
     List<Integer> containsTableWkt(
     List<Integer> containsTableWkt(
             @Param("tableName") String tableName,
             @Param("tableName") String tableName,
-            @Param("tableIds") List<String> tableIds,
+            @Param("tableIds") List<Integer> tableIds,
             @Param("ewkt") String ewkt);
             @Param("ewkt") String ewkt);
 
 
     /**
     /**
@@ -65,7 +45,7 @@ public interface AnalyseUtilsDBMapper {
     List<Integer> containsTables(
     List<Integer> containsTables(
             @Param("tableNameA") String tableNameA,
             @Param("tableNameA") String tableNameA,
             @Param("tableNameB") String tableNameB,
             @Param("tableNameB") String tableNameB,
-            @Param("tableIdsB") List<String> tableIdsB);
+            @Param("tableIdsB") List<Integer> tableIdsB);
 
 
     /**
     /**
      * 计算wkt距离范围内table中的数据,返回table id
      * 计算wkt距离范围内table中的数据,返回table id
@@ -77,7 +57,7 @@ public interface AnalyseUtilsDBMapper {
      */
      */
     List<Integer> distanceTableWkt(
     List<Integer> distanceTableWkt(
             @Param("tableName") String tableName,
             @Param("tableName") String tableName,
-            @Param("tableIds") List<String> tableIds,
+            @Param("tableIds") List<Integer> tableIds,
             @Param("ewkt") String ewkt,
             @Param("ewkt") String ewkt,
             @Param("distance") Integer distance);
             @Param("distance") Integer distance);
 
 
@@ -91,6 +71,6 @@ public interface AnalyseUtilsDBMapper {
     List<Integer> distanceTables(
     List<Integer> distanceTables(
             @Param("tableNameA") String tableNameA,
             @Param("tableNameA") String tableNameA,
             @Param("tableNameB") String tableNameB,
             @Param("tableNameB") String tableNameB,
-            @Param("tableIdsB") List<String> tableIdsB,
+            @Param("tableIdsB") List<Integer> tableIdsB,
             @Param("distance") Integer distance);
             @Param("distance") Integer distance);
 }
 }

+ 4 - 4
onemap-modules/onemap-analyse/src/main/java/com/onemap/analyse/service/AnalyseUtilsDBService.java

@@ -35,7 +35,7 @@ public interface AnalyseUtilsDBService {
      */
      */
     List<Integer> containsTableWkt(
     List<Integer> containsTableWkt(
             String tableName,
             String tableName,
-            List<String> tableIds,
+            List<Integer> tableIds,
             String ewkt);
             String ewkt);
 
 
     /**
     /**
@@ -48,7 +48,7 @@ public interface AnalyseUtilsDBService {
     List<Integer> containsTables(
     List<Integer> containsTables(
             String tableNameA,
             String tableNameA,
             String tableNameB,
             String tableNameB,
-            List<String> tableIdsB);
+            List<Integer> tableIdsB);
 
 
     /**
     /**
      * 计算wkt距离范围内table中的数据,返回table id
      * 计算wkt距离范围内table中的数据,返回table id
@@ -59,7 +59,7 @@ public interface AnalyseUtilsDBService {
      * @return
      * @return
      */
      */
     List<Integer> distanceTableWkt(String inputTable,
     List<Integer> distanceTableWkt(String inputTable,
-                                   List<String> inputIds,
+                                   List<Integer> inputIds,
                                    String ewkt,
                                    String ewkt,
                                    Integer distance);
                                    Integer distance);
 
 
@@ -73,6 +73,6 @@ public interface AnalyseUtilsDBService {
     List<Integer> distanceTables(
     List<Integer> distanceTables(
             String tableNameA,
             String tableNameA,
             String tableNameB,
             String tableNameB,
-            List<String> tableIdsB,
+            List<Integer> tableIdsB,
             Integer distance);
             Integer distance);
 }
 }

+ 4 - 11
onemap-modules/onemap-analyse/src/main/java/com/onemap/analyse/service/impl/AnalyseUtilsDBServiceImpl.java

@@ -5,9 +5,7 @@ import com.onemap.analyse.service.AnalyseUtilsDBService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.stereotype.Service;
 
 
-import java.util.Collections;
 import java.util.List;
 import java.util.List;
-import java.util.Map;
 
 
 @Service
 @Service
 public class AnalyseUtilsDBServiceImpl implements AnalyseUtilsDBService {
 public class AnalyseUtilsDBServiceImpl implements AnalyseUtilsDBService {
@@ -20,28 +18,23 @@ public class AnalyseUtilsDBServiceImpl implements AnalyseUtilsDBService {
         return analyseUtilsDBMapper.intersectsTableWkt(tableName, tableIds, ewkt);
         return analyseUtilsDBMapper.intersectsTableWkt(tableName, tableIds, ewkt);
     }
     }
 
 
-    // @Override
-    // public List<Map> intersectionTableWkt(String inputTable, Integer inputSRID, List<String> inputIds, String intersectionWkt, Integer intersectionWktSRID, List<String> outputColumn) {
-    //     return analyseUtilsDBMapper.intersectionTableWkt(inputTable, inputSRID, inputIds, intersectionWkt, intersectionWktSRID, outputColumn);
-    // }
-
     @Override
     @Override
-    public List<Integer> containsTableWkt(String tableName, List<String> tableIds, String ewkt) {
+    public List<Integer> containsTableWkt(String tableName, List<Integer> tableIds, String ewkt) {
         return analyseUtilsDBMapper.containsTableWkt(tableName, tableIds, ewkt);
         return analyseUtilsDBMapper.containsTableWkt(tableName, tableIds, ewkt);
     }
     }
 
 
     @Override
     @Override
-    public List<Integer> containsTables(String tableNameA, String tableNameB, List<String> tableIdsB) {
+    public List<Integer> containsTables(String tableNameA, String tableNameB, List<Integer> tableIdsB) {
         return analyseUtilsDBMapper.containsTables(tableNameA, tableNameB, tableIdsB);
         return analyseUtilsDBMapper.containsTables(tableNameA, tableNameB, tableIdsB);
     }
     }
 
 
     @Override
     @Override
-    public List<Integer> distanceTableWkt(String tableName, List<String> tableIds, String ewkt, Integer distance) {
+    public List<Integer> distanceTableWkt(String tableName, List<Integer> tableIds, String ewkt, Integer distance) {
         return analyseUtilsDBMapper.distanceTableWkt(tableName, tableIds, ewkt, distance);
         return analyseUtilsDBMapper.distanceTableWkt(tableName, tableIds, ewkt, distance);
     }
     }
 
 
     @Override
     @Override
-    public List<Integer> distanceTables(String tableNameA, String tableNameB, List<String> tableIdsB, Integer distance) {
+    public List<Integer> distanceTables(String tableNameA, String tableNameB, List<Integer> tableIdsB, Integer distance) {
         return analyseUtilsDBMapper.distanceTables(tableNameA, tableNameB, tableIdsB, distance);
         return analyseUtilsDBMapper.distanceTables(tableNameA, tableNameB, tableIdsB, distance);
     }
     }
 }
 }

+ 6 - 59
onemap-modules/onemap-analyse/src/main/resources/mapper/oracle/raster/AnalyseUtilsDBMapper.xml

@@ -17,59 +17,6 @@
         </if>
         </if>
     </select>
     </select>
 
 
-    <select id="intersectionTableWkt" resultType="java.util.Map">
-        SELECT ret_tab.id,public.st_asewkt(public.st_transform(ret_tab.ret_geom_vv,4326)) geom,public.st_area(ret_tab.ret_geom_vv) geom_area
-        <if test="outputColumn != null and outputColumn.size()>0 ">
-            <foreach collection="outputColumn" item="columnValue" open="," separator=",">
-                <choose>
-                    <when test="columnValue =='geom'">
-                        public.st_asewkt(geom) geom1
-                    </when>
-                    <otherwise>
-                        "${columnValue}"
-                    </otherwise>
-                </choose>
-            </foreach>
-        </if>
-        FROM ( SELECT inTbale.*,
-            public.st_intersection(
-            <choose>
-                <when test="intersectionWktSRID != null and intersectionWktSRID !=''">
-                    public.st_transform(public.st_geomfromewkt(#{intersectionWkt}),#{intersectionWktSRID}),
-                    public.st_transform(
-                    <choose>
-                        <when test="inputSRID != null and inputSRID !=''">
-                            public.st_setsrid(inTbale.geom,#{inputSRID})
-                        </when>
-                        <otherwise>
-                            inTbale.geom
-                        </otherwise>
-                    </choose>
-                    ,#{intersectionWktSRID}
-                    )
-                </when>
-                <otherwise>
-                    public.st_geomfromewkt(#{intersectionWkt}),
-                    <choose>
-                        <when test="inputSRID != null and inputSRID !=''">
-                            public.st_setsrid(inTbale.geom,#{inputSRID})
-                        </when>
-                        <otherwise>
-                            inTbale.geom
-                        </otherwise>
-                    </choose>
-                </otherwise>
-            </choose>
-            ) ret_geom_vv
-        FROM "${inputTable}" inTbale
-        <if test="inputIds != null and inputIds.size()>0 ">
-            where (inTbale.id)::VARCHAR in
-            <foreach collection="inputIds" item="id" open="(" close=")" separator=",">#{id}</foreach>
-        </if>
-        )ret_tab
-    </select>
-
-
     <select id="containsTableWkt" resultType="Integer">
     <select id="containsTableWkt" resultType="Integer">
         SELECT id
         SELECT id
         FROM "${tableName}" inTbale
         FROM "${tableName}" inTbale
@@ -78,7 +25,7 @@
         inTbale.geom
         inTbale.geom
         )
         )
         <if test="tableIds != null and tableIds.size()>0 ">
         <if test="tableIds != null and tableIds.size()>0 ">
-            and (inTbale.id)::VARCHAR in
+            and (inTbale.id) in
             <foreach collection="tableIds" item="tableId" open="(" close=")" separator=",">#{tableId}</foreach>
             <foreach collection="tableIds" item="tableId" open="(" close=")" separator=",">#{tableId}</foreach>
         </if>
         </if>
     </select>
     </select>
@@ -89,7 +36,7 @@
         FROM "${tableNameB}" tableB
         FROM "${tableNameB}" tableB
         WHERE 1=1
         WHERE 1=1
         <if test="tableIdsB != null and tableIdsB.size()>0 ">
         <if test="tableIdsB != null and tableIdsB.size()>0 ">
-            and (tableB.id)::VARCHAR in
+            and (tableB.id) in
             <foreach collection="tableIdsB" item="tableId" open="(" close=")" separator=",">#{tableId}</foreach>
             <foreach collection="tableIdsB" item="tableId" open="(" close=")" separator=",">#{tableId}</foreach>
         </if>
         </if>
         AND EXISTS (
         AND EXISTS (
@@ -102,11 +49,11 @@
     <select id="distanceTableWkt" resultType="Integer">
     <select id="distanceTableWkt" resultType="Integer">
         SELECT id
         SELECT id
         FROM "${tableName}" inTbale
         FROM "${tableName}" inTbale
-        where public.st_distance(
+        where public.ST_DWithin(
         inTbale.geom::public.geography,
         inTbale.geom::public.geography,
-        public.st_geomfromewkt(#{ewkt})::public.geography) &lt; #{distance}
+        public.st_geomfromewkt(#{ewkt})::public.geography,#{distance})
         <if test="tableIds != null and tableIds.size()>0 ">
         <if test="tableIds != null and tableIds.size()>0 ">
-            and (inTbale.id)::VARCHAR in
+            and (inTbale.id) in
             <foreach collection="tableIds" item="tableId" open="(" close=")" separator=",">#{tableId}</foreach>
             <foreach collection="tableIds" item="tableId" open="(" close=")" separator=",">#{tableId}</foreach>
         </if>
         </if>
     </select>
     </select>
@@ -116,7 +63,7 @@
         FROM "${tableNameB}" tableB
         FROM "${tableNameB}" tableB
         WHERE 1=1
         WHERE 1=1
         <if test="tableIdsB != null and tableIdsB.size()>0 ">
         <if test="tableIdsB != null and tableIdsB.size()>0 ">
-            and (tableB.id)::VARCHAR in
+            and (tableB.id) in
             <foreach collection="tableIdsB" item="tableId" open="(" close=")" separator=",">#{tableId}</foreach>
             <foreach collection="tableIdsB" item="tableId" open="(" close=")" separator=",">#{tableId}</foreach>
         </if>
         </if>
         AND EXISTS (
         AND EXISTS (

+ 3 - 2
onemap-modules/onemap-analyse/src/main/resources/mapper/oracle/raster/CreateUtilsDBMapper.xml

@@ -24,7 +24,8 @@
             <foreach collection="tableIdsA" item="tableId" open="(" close=")" separator=",">
             <foreach collection="tableIdsA" item="tableId" open="(" close=")" separator=",">
                 #{tableId}
                 #{tableId}
             </foreach>
             </foreach>
-        </if>;
+        </if>
+        ;
 
 
         CREATE TABLE "${newTableName}" AS
         CREATE TABLE "${newTableName}" AS
         SELECT a.id,public.ST_Difference ( a.geom, b.geomRes ) AS geom
         SELECT a.id,public.ST_Difference ( a.geom, b.geomRes ) AS geom
@@ -33,7 +34,7 @@
         "${temporaryTable}" b
         "${temporaryTable}" b
         WHERE 1=1
         WHERE 1=1
         <if test="tableIdsA != null and tableIdsA.size() > 0">
         <if test="tableIdsA != null and tableIdsA.size() > 0">
-            AND a.id::VARCHAR IN
+            AND a.id IN
             <foreach collection="tableIdsA" item="tableId" open="(" close=")" separator=",">
             <foreach collection="tableIdsA" item="tableId" open="(" close=")" separator=",">
                 #{tableId}
                 #{tableId}
             </foreach>
             </foreach>