wangyifei
2024-10-29 5e81b7eba5eb3e29ef00287733221915a6c61bbe
降水范围校验接口第一次提交
已删除1个文件
已修改3个文件
76 ■■■■ 文件已修改
docker/init/init.sql 33 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/se/simu/controller/SimuController.java 29 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/se/simu/service/GedbService.java 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/application.yml 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
docker/init/init.sql
ÎļþÒÑɾ³ý
src/main/java/com/se/simu/controller/SimuController.java
@@ -1,6 +1,9 @@
package com.se.simu.controller;
import cn.hutool.json.JSONArray;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.se.simu.domain.dto.GeDb;
import com.se.simu.domain.dto.GeLayer;
import com.se.simu.domain.po.DataPo;
import com.se.simu.domain.po.SimuPo;
import com.se.simu.domain.vo.CreateSimuVo;
@@ -203,4 +206,30 @@
            return fail(ex, null);
        }
    }
    /**
     * ä½¿ç”¨ç©ºé—´èŒƒå›´æŸ¥è¯¢ ç®¡ç‚¹,管线,建筑物 3个图层,且每个图层的数量大于0,返回 true。
     */
    @ApiOperation(value = "降水范围校验")
    @GetMapping("/rangeVerif")
    public R<Object> rangeVerif(@RequestParam @ApiParam("最小X")  Double minx,
                                @RequestParam @ApiParam("最小y")  Double miny,
                                @RequestParam @ApiParam("最大X")  Double maxx,
                                @RequestParam @ApiParam("最大y")  Double maxy) {
        try {
            DataPo data = new DataPo();
            data.setMinx(minx);
            data.setMiny(miny);
            data.setMaxx(maxx);
            data.setMaxy(maxy);
            data.setEpsg(4326);
            String token = gedbService.getToken();
            GeDb db = gedbService.connectGedb(token, data);
            List<GeLayer> layers = gedbService.getLayers(token, db);
            return success(gedbService.queryBboxCount(token,db, layers));
        } catch (Exception ex) {
            return fail(ex, null);
        }
    }
}
src/main/java/com/se/simu/service/GedbService.java
@@ -176,7 +176,13 @@
            }
        }
    }
    public boolean queryBboxCount(String token, GeDb db, List<GeLayer> layers) throws Exception {
        for (GeLayer layer : layers) {
            int count = getCount(token, db, layer);
            if (0 == count) throw new Exception(layer.getName() + ",图层数据为空");
        }
        return true;
    }
    private int getCount(String token, GeDb db, GeLayer layer) {
        Map<String, Object> map = new HashMap<>(6);
        map.put("token", token);
src/main/resources/application.yml
@@ -12,9 +12,9 @@
  datasource:
    name: prod
    # JDBC åŸºæœ¬é…ç½® &currentSchema=public
    url: jdbc:postgresql://127.0.0.1:5433/ai?useAffectedRows=true
    url: jdbc:postgresql://127.0.0.1:5432/ai?useAffectedRows=true
    username: postgres
    password: postgres
    password: 123456
    driver-class-name: org.postgresql.Driver
    platform: POSTGRESQL
    type: com.alibaba.druid.pool.DruidDataSource
@@ -94,7 +94,7 @@
config:
  ver: 0.2
  # Gdal驱动目录
  gdalPath: E:/terrait/TianJin/Zip/release-1928-x64-dev/release-1928-x64/bin
  gdalPath: D:\Program Files\release-1928-x64-dev\release-1928-x64\bin
  #inPath: D:\simu\in
  inPath: D:\simu\uwsolver
  outPath: D:\simu\out