Browse Source

Merge branch 'dev' of http://114.244.114.158:8802/siwei/sanya-data-management-back into dev

gushoubang 9 tháng trước cách đây
mục cha
commit
92fb48d779

+ 11 - 4
onemap-api/onemap-api-system/src/main/java/com/onemap/system/api/AnalyseService.java

@@ -3,14 +3,12 @@ package com.onemap.system.api;
 import com.onemap.common.core.constant.ServiceNameConstants;
 import com.onemap.common.core.domain.R;
 import com.onemap.common.core.web.domain.RequestResult;
+import com.onemap.system.api.domain.AnalyseUtilsVo;
 import com.onemap.system.api.factory.AnalyseFallbackFactory;
 import com.onemap.system.api.factory.RemoteAuthFallbackFactory;
 import com.onemap.system.api.factory.RemoteLogFallbackFactory;
 import org.springframework.cloud.openfeign.FeignClient;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.*;
 
 import java.util.List;
 
@@ -31,6 +29,12 @@ public interface AnalyseService {
             @RequestParam(value = "intersectsWkt") String intersectsWkt,
             @RequestParam(value = "intersectsWktSRID", required = false) Integer intersectsWktSRID);
 
+    /**
+     * table中与wkt数据是否有交集
+     */
+    @PostMapping("/analyse/db/intersects/table_wkt_v1")
+    public RequestResult intersectsTableWktV1(@RequestBody AnalyseUtilsVo analyseUtilsVo);
+
 
     @PostMapping("/analyse/db/intersection/table_wkt")
     public RequestResult intersectionTableWkt(
@@ -41,4 +45,7 @@ public interface AnalyseService {
             @RequestParam(value = "intersectionWktSRID", required = false) Integer intersectionWktSRID,
             @RequestParam(value = "outputColumn", required = false) List<String> outputColumn);
 
+    @PostMapping("/analyse/db/intersection/table_wkt_v1")
+    public RequestResult intersectionTableWktV1(@RequestBody AnalyseUtilsVo analyseUtilsVo);
+
 }

+ 70 - 0
onemap-api/onemap-api-system/src/main/java/com/onemap/system/api/domain/AnalyseUtilsVo.java

@@ -0,0 +1,70 @@
+package com.onemap.system.api.domain;
+
+import java.util.List;
+
+public class AnalyseUtilsVo {
+
+    private String inputTable;
+    private Integer inputSRID;
+    private List<String> inputIds;
+    private String analyseType;
+    private String analyseWkt;
+    private Integer analyseWktSRID;
+    List<String> outputColumn;
+
+    public String getInputTable() {
+        return inputTable;
+    }
+
+    public void setInputTable(String inputTable) {
+        this.inputTable = inputTable;
+    }
+
+    public Integer getInputSRID() {
+        return inputSRID;
+    }
+
+    public void setInputSRID(Integer inputSRID) {
+        this.inputSRID = inputSRID;
+    }
+
+    public List<String> getInputIds() {
+        return inputIds;
+    }
+
+    public void setInputIds(List<String> inputIds) {
+        this.inputIds = inputIds;
+    }
+
+    public String getAnalyseType() {
+        return analyseType;
+    }
+
+    public void setAnalyseType(String analyseType) {
+        this.analyseType = analyseType;
+    }
+
+    public String getAnalyseWkt() {
+        return analyseWkt;
+    }
+
+    public void setAnalyseWkt(String analyseWkt) {
+        this.analyseWkt = analyseWkt;
+    }
+
+    public Integer getAnalyseWktSRID() {
+        return analyseWktSRID;
+    }
+
+    public void setAnalyseWktSRID(Integer analyseWktSRID) {
+        this.analyseWktSRID = analyseWktSRID;
+    }
+
+    public List<String> getOutputColumn() {
+        return outputColumn;
+    }
+
+    public void setOutputColumn(List<String> outputColumn) {
+        this.outputColumn = outputColumn;
+    }
+}

+ 11 - 0
onemap-api/onemap-api-system/src/main/java/com/onemap/system/api/factory/AnalyseFallbackFactory.java

@@ -4,6 +4,7 @@ import com.onemap.common.core.domain.R;
 import com.onemap.common.core.web.domain.RequestResult;
 import com.onemap.system.api.AnalyseService;
 import com.onemap.system.api.RemoteAuthService;
+import com.onemap.system.api.domain.AnalyseUtilsVo;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.cloud.openfeign.FallbackFactory;
@@ -24,10 +25,20 @@ public class AnalyseFallbackFactory implements FallbackFactory<AnalyseService> {
                 return RequestResult.error("内部错误");
             }
 
+            @Override
+            public RequestResult intersectsTableWktV1(AnalyseUtilsVo vo) {
+                return RequestResult.error("内部错误");
+            }
+
             @Override
             public RequestResult intersectionTableWkt(String inputTable, Integer inputSRID, List<String> inputIds, String intersectionWkt, Integer intersectionWktSRID, List<String> outputColumn) {
                 return RequestResult.error("内部错误");
             }
+
+            @Override
+            public RequestResult intersectionTableWktV1(AnalyseUtilsVo vo) {
+                return RequestResult.error("内部错误");
+            }
         };
     }
 }

+ 47 - 0
onemap-modules/onemap-analyse/src/main/java/com/onemap/analyse/controller/analyse/AnalyseUtilsDBController.java

@@ -1,5 +1,6 @@
 package com.onemap.analyse.controller.analyse;
 
+import com.onemap.analyse.domain.AnalyseUtilsVo;
 import com.onemap.analyse.service.AnalyseUtilsDBService;
 import com.onemap.common.core.web.controller.BaseController;
 import com.onemap.common.core.web.domain.RequestResult;
@@ -39,6 +40,30 @@ public class AnalyseUtilsDBController extends BaseController {
         return RequestResult.success(analyseUtilsDBService.intersectsTableWkt(inputTable, inputSRID, inputIds, intersectsWkt, intersectsWktSRID));
     }
 
+    /**
+     * table中与wkt数据是否有交集
+     *
+     * @param inputTable        TABLE名称(vater空间中表)
+     * @param inputSRID         table
+     * @param inputIds          查询数据集ID
+     * @param intersectsWkt     wkt
+     * @param intersectsWktSRID wkt对应的坐标
+     * @return
+     */
+    @PostMapping("/intersects/table_wkt_v1")
+    @Slave
+    public RequestResult intersectsTableWktV1(@RequestBody AnalyseUtilsVo analyseUtilsVo) {
+        if (analyseUtilsVo == null) {
+            RequestResult.error("analyseUtilsVo is null");
+        }
+        return RequestResult.success(analyseUtilsDBService.intersectsTableWkt(
+                analyseUtilsVo.getInputTable(),
+                analyseUtilsVo.getInputSRID(),
+                analyseUtilsVo.getInputIds(),
+                analyseUtilsVo.getAnalyseWkt(),
+                analyseUtilsVo.getAnalyseWktSRID()));
+    }
+
 
     /**
      * table中与wkt数据取交集
@@ -62,6 +87,28 @@ public class AnalyseUtilsDBController extends BaseController {
         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 AnalyseUtilsVo analyseUtilsVo) {
+        return RequestResult.success(analyseUtilsDBService.intersectionTableWkt(analyseUtilsVo.getInputTable(),
+                analyseUtilsVo.getInputSRID(),
+                analyseUtilsVo.getInputIds(),
+                analyseUtilsVo.getAnalyseWkt(),
+                analyseUtilsVo.getAnalyseWktSRID(),
+                analyseUtilsVo.getOutputColumn()));
+    }
+
 
     /**
      * 计算wkt包含table中的数据,返回table id

+ 70 - 0
onemap-modules/onemap-analyse/src/main/java/com/onemap/analyse/domain/AnalyseUtilsVo.java

@@ -0,0 +1,70 @@
+package com.onemap.analyse.domain;
+
+import java.util.List;
+
+public class AnalyseUtilsVo {
+
+    private String inputTable;
+    private Integer inputSRID;
+    private List<String> inputIds;
+    private String analyseType;
+    private String analyseWkt;
+    private Integer analyseWktSRID;
+    List<String> outputColumn;
+
+    public String getInputTable() {
+        return inputTable;
+    }
+
+    public void setInputTable(String inputTable) {
+        this.inputTable = inputTable;
+    }
+
+    public Integer getInputSRID() {
+        return inputSRID;
+    }
+
+    public void setInputSRID(Integer inputSRID) {
+        this.inputSRID = inputSRID;
+    }
+
+    public List<String> getInputIds() {
+        return inputIds;
+    }
+
+    public void setInputIds(List<String> inputIds) {
+        this.inputIds = inputIds;
+    }
+
+    public String getAnalyseType() {
+        return analyseType;
+    }
+
+    public void setAnalyseType(String analyseType) {
+        this.analyseType = analyseType;
+    }
+
+    public String getAnalyseWkt() {
+        return analyseWkt;
+    }
+
+    public void setAnalyseWkt(String analyseWkt) {
+        this.analyseWkt = analyseWkt;
+    }
+
+    public Integer getAnalyseWktSRID() {
+        return analyseWktSRID;
+    }
+
+    public void setAnalyseWktSRID(Integer analyseWktSRID) {
+        this.analyseWktSRID = analyseWktSRID;
+    }
+
+    public List<String> getOutputColumn() {
+        return outputColumn;
+    }
+
+    public void setOutputColumn(List<String> outputColumn) {
+        this.outputColumn = outputColumn;
+    }
+}

+ 16 - 2
onemap-modules/onemap-apply/src/main/java/com/onemap/apply/service/impl/table/TableDataSelectServiceImpl.java

@@ -10,6 +10,7 @@ import com.onemap.apply.service.table.TableDataSelectService;
 import com.onemap.common.core.utils.StringUtils;
 import com.onemap.common.core.web.domain.RequestResult;
 import com.onemap.system.api.AnalyseService;
+import com.onemap.system.api.domain.AnalyseUtilsVo;
 import oracle.jdbc.internal.ObjectData;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -213,7 +214,13 @@ public class TableDataSelectServiceImpl implements TableDataSelectService {
     }
 
     public List<String> intersectsTableWkt(String inputTable, Integer inputSRID, List<String> inputIds, String intersectsWkt, Integer intersectsWktSRID) {
-        RequestResult result = analyseService.intersectsTableWkt(inputTable, inputSRID, inputIds, intersectsWkt, intersectsWktSRID);
+        AnalyseUtilsVo vo = new AnalyseUtilsVo();
+        vo.setInputTable(inputTable);
+        vo.setInputSRID(inputSRID);
+        vo.setInputIds(inputIds);
+        vo.setAnalyseWkt(intersectsWkt);
+        vo.setAnalyseWktSRID(intersectsWktSRID);
+        RequestResult result = analyseService.intersectsTableWktV1(vo);
         if (StringUtils.isNull(result)) {
             return null;
         }
@@ -237,7 +244,14 @@ public class TableDataSelectServiceImpl implements TableDataSelectService {
     }
 
     public List<Map> intersectionTableWkt(String inputTable, Integer inputSRID, List<String> inputIds, String intersectsWkt, Integer intersectsWktSRID, List<String> outputColumn) {
-        RequestResult result = analyseService.intersectionTableWkt(inputTable, inputSRID, inputIds, intersectsWkt, intersectsWktSRID, outputColumn);
+        AnalyseUtilsVo vo = new AnalyseUtilsVo();
+        vo.setInputTable(inputTable);
+        vo.setInputSRID(inputSRID);
+        vo.setInputIds(inputIds);
+        vo.setAnalyseWkt(intersectsWkt);
+        vo.setAnalyseWktSRID(intersectsWktSRID);
+        vo.setOutputColumn(outputColumn);
+        RequestResult result = analyseService.intersectionTableWktV1(vo);
         if (StringUtils.isNull(result)) {
             return null;
         }