| | |
| | | @ApiImplicitParam(name = "dircode", value = "目录编码", dataType = "String", paramType = "query", example = "00"), |
| | | @ApiImplicitParam(name = "verid", value = "版本ID", dataType = "Integer", paramType = "query", example = "0"), |
| | | @ApiImplicitParam(name = "name", value = "名称", dataType = "String", paramType = "query", example = ""), |
| | | @ApiImplicitParam(name = "wkt", value = "WKT字符串", dataType = "String", paramType = "query", example = "gAPpDbZ53XfoQfvT8dj/uhBWX5os8kBJQ1LrNvH3VX7byFQdUJMPiEr8Fkj0q2i1pw+L8KFrvR0MLXq2xaO21nlQQXmEPofJxpDQZwEWUIFZsToXo1kLRD3t6WQezxWB8YTzXHM20Ba73x/ZuuezVhOFOq1U8HKf1dXQdv7gBzEB6fWMmFDc3FuH8GDDHv3LfT86Gio9VgMO6ohlrUdf3ZKtTHeLSuzGF4t0RZuX97YBNo25IIzpeTfRTXBxfdxA"), |
| | | @ApiImplicitParam(name = "pageSize", value = "每页条数", dataType = "Integer", paramType = "query", example = "10"), |
| | | @ApiImplicitParam(name = "pageIndex", value = "分页数(从1开始)", dataType = "Integer", paramType = "query", example = "1") |
| | | }) |
| | | @GetMapping(value = "/selectByPageAndCount") |
| | | public ResponseMsg<List<MetaEntity>> selectByPageAndCount(String depcode, String dircode, Integer verid, String name, Integer pageSize, Integer pageIndex) { |
| | | public ResponseMsg<List<MetaEntity>> selectByPageAndCount(String depcode, String dircode, Integer verid, String name, String wkt, Integer pageSize, Integer pageIndex) { |
| | | try { |
| | | if (pageSize < 1 || pageIndex < 1) { |
| | | return fail("每页页数或分页数小于1", null); |
| | | } |
| | | wkt = metaService.getGeometryFilter(wkt); |
| | | |
| | | int count = metaService.selectCount(depcode, dircode, verid, name); |
| | | int count = metaService.selectCount(depcode, dircode, verid, name, wkt); |
| | | if (count == 0) { |
| | | return success(0, null); |
| | | } |
| | | |
| | | List<MetaEntity> rs = metaService.selectByPage(depcode, dircode, verid, name, pageSize, pageSize * (pageIndex - 1)); |
| | | List<MetaEntity> rs = metaService.selectByPage(depcode, dircode, verid, name, wkt, pageSize, pageSize * (pageIndex - 1)); |
| | | |
| | | return success(count, rs); |
| | | } catch (Exception ex) { |
| | |
| | | * @param dircode 目录编码 |
| | | * @param verid 版本ID |
| | | * @param name 名称 |
| | | * @param wkt WKT |
| | | * @return 记录数 |
| | | */ |
| | | public Integer selectCount(String depcode, String dircode, Integer verid, String name); |
| | | public Integer selectCount(String depcode, String dircode, Integer verid, String name, String wkt); |
| | | |
| | | /** |
| | | * 分页查询 |
| | |
| | | * @param dircode 目录编码 |
| | | * @param verid 版本ID |
| | | * @param name 名称 |
| | | * @param wkt WKT |
| | | * @param limit 记录数 |
| | | * @param offset 偏移量 |
| | | * @return 列表 |
| | | */ |
| | | public List<MetaEntity> selectByPage(String depcode, String dircode, Integer verid, String name, Integer limit, Integer offset); |
| | | public List<MetaEntity> selectByPage(String depcode, String dircode, Integer verid, String name, String wkt, Integer limit, Integer offset); |
| | | |
| | | /** |
| | | * 根据GUID查询GDB |
| | |
| | | private final static Log log = LogFactory.getLog(MetaService.class); |
| | | |
| | | @Override |
| | | public Integer selectCount(String depcode, String dircode, Integer verid, String name) { |
| | | public Integer selectCount(String depcode, String dircode, Integer verid, String name, String wkt) { |
| | | depcode = StringHelper.getRightLike(depcode); |
| | | dircode = StringHelper.getRightLike(dircode); |
| | | name = StringHelper.getLikeUpperStr(name); |
| | | |
| | | return metaMapper.selectCount(depcode, dircode, verid, name); |
| | | return metaMapper.selectCount(depcode, dircode, verid, name, wkt); |
| | | } |
| | | |
| | | @Override |
| | | public List<MetaEntity> selectByPage(String depcode, String dircode, Integer verid, String name, Integer limit, Integer offset) { |
| | | public List<MetaEntity> selectByPage(String depcode, String dircode, Integer verid, String name, String wkt, Integer limit, Integer offset) { |
| | | depcode = StringHelper.getRightLike(depcode); |
| | | dircode = StringHelper.getRightLike(dircode); |
| | | name = StringHelper.getLikeUpperStr(name); |
| | | |
| | | return metaMapper.selectByPage(depcode, dircode, verid, name, limit, offset); |
| | | return metaMapper.selectByPage(depcode, dircode, verid, name, wkt, limit, offset); |
| | | } |
| | | |
| | | @Override |
| | |
| | | |
| | | metaDownService.inserts(list); |
| | | } |
| | | |
| | | /** |
| | | * 获取空间过滤 |
| | | */ |
| | | public String getGeometryFilter(String wkt) throws Exception { |
| | | if (StringHelper.isEmpty(wkt)) { |
| | | return null; |
| | | } |
| | | |
| | | wkt = AesHelper.decrypt(wkt); |
| | | |
| | | return String.format("ST_Intersects(ST_GeomFromText('%s', %d), geom)", wkt, StaticData.I104903); |
| | | } |
| | | } |
| | |
| | | <if test="name != null"> |
| | | and upper(name) like #{name} |
| | | </if> |
| | | <if test="wkt != null"> |
| | | and ${wkt} |
| | | </if> |
| | | </where> |
| | | </select> |
| | | |
| | |
| | | <if test="name != null"> |
| | | and upper(name) like #{name} |
| | | </if> |
| | | <if test="wkt != null"> |
| | | and ${wkt} |
| | | </if> |
| | | </where> |
| | | order by id desc |
| | | limit #{limit} offset #{offset} |