From a89bd340263fa9872454178170c87fbc7e765386 Mon Sep 17 00:00:00 2001 From: 13693261870 <252740454@qq.com> Date: 星期四, 09 二月 2023 14:38:19 +0800 Subject: [PATCH] 1 --- src/main/java/com/lf/server/helper/GdbHelper.java | 29 +++++++++++++++++------------ 1 files changed, 17 insertions(+), 12 deletions(-) diff --git a/src/main/java/com/lf/server/helper/GdbHelper.java b/src/main/java/com/lf/server/helper/GdbHelper.java index 31ddbd5..bc38afb 100644 --- a/src/main/java/com/lf/server/helper/GdbHelper.java +++ b/src/main/java/com/lf/server/helper/GdbHelper.java @@ -1,7 +1,9 @@ package com.lf.server.helper; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.lf.server.entity.all.BaseGeoEntity; import com.lf.server.entity.all.StaticData; +import com.lf.server.mapper.all.BasicMapper; import com.lf.server.mapper.all.GeomBaseMapper; import com.lf.server.service.all.BaseQueryService; import org.apache.commons.logging.Log; @@ -372,7 +374,7 @@ for (String key : map.keySet()) { Layer layer = null; try { - GeomBaseMapper baseMapper = ClassHelper.getGeoBaseMapper(key); + BasicMapper baseMapper = ClassHelper.getBasicMapper(key); if (null == baseMapper) { continue; } @@ -413,20 +415,21 @@ /** * 鍒涘缓鍥惧眰 */ - private static Layer createLayer(DataSource dataSource, GeomBaseMapper baseMapper ) { + private static Layer createLayer(DataSource dataSource, BasicMapper baseMapper ) { String tab = BaseQueryService.getTabName(baseMapper); if (StringHelper.isNull(tab)) { return null; } - String geomType = baseMapper.selectGeometryType(tab); - if (StringHelper.isEmpty(geomType)) { - return null; - } - - Integer srid = baseMapper.selectSrid(tab); + String geomType = null; SpatialReference sr = new SpatialReference(); - sr.ImportFromEPSG(null == srid ? 4490 : srid); + if (baseMapper instanceof GeomBaseMapper) { + GeomBaseMapper geomMapper = (GeomBaseMapper) baseMapper; + geomType = geomMapper.selectGeometryType(tab); + + Integer srid = geomMapper.selectSrid(tab); + sr.ImportFromEPSG(null == srid ? 4490 : srid); + } return dataSource.CreateLayer(tab, sr, getGeomType(geomType), null); } @@ -525,9 +528,11 @@ for (T t : list) { Feature f = new Feature(layer.GetLayerDefn()); - BaseGeoEntity geoEntity = (BaseGeoEntity) t; - Geometry geom = Geometry.CreateFromWkt(geoEntity.getGeom()); - f.SetGeometry(geom); + if (t instanceof BaseGeoEntity) { + BaseGeoEntity geoEntity = (BaseGeoEntity) t; + Geometry geom = Geometry.CreateFromWkt(geoEntity.getGeom()); + f.SetGeometry(geom); + } setFeatureData(f, fields, t); layer.CreateFeature(f); -- Gitblit v1.9.3