管道基础大数据平台系统开发-【后端】-Server
1
13693261870
2022-12-19 92eba0df3e8a83a0ea0fe7090cfe948851ad505a
1
已修改1个文件
32 ■■■■■ 文件已修改
src/main/java/com/lf/server/helper/GdbHelper.java 32 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/lf/server/helper/GdbHelper.java
@@ -188,7 +188,7 @@
    /**
     * 获取字段映射
     */
    private static <T> void getFieldMapper(Class clazz, Layer layer, Map<Integer, Field> map) {
    private static void getFieldMapper(Class clazz, Layer layer, Map<Integer, Field> map) {
        try {
            FeatureDefn fd = layer.GetLayerDefn();
            for (int i = 0, count = fd.GetFieldCount(); i < count; i++) {
@@ -208,7 +208,7 @@
                }
            }
            if (OBJECT != clazz.getSuperclass().getName()) {
            if (!OBJECT.equals(clazz.getSuperclass().getName())) {
                getFieldMapper(clazz.getSuperclass(), layer, map);
            }
        } catch (Exception ex) {
@@ -346,12 +346,15 @@
                    continue;
                }
                Layer layer = createLayer(dataSource, baseMapper);
                if(null == layer){
                if (null == layer) {
                    continue;
                }
                String className = ClassHelper.getClassName(baseMapper);
                Class clazz = ClassHelper.getEntityClass(className);
                List<Field> fields = new ArrayList<>();
                getFields(clazz, fields);
                List<?> list = map.get(key);
            }
@@ -408,4 +411,27 @@
                return ogr.wkbUnknown;
        }
    }
    /**
     * 获取字段
     */
    private static void getFields(Class clazz, List<Field> list) {
        try {
            Field[] fields = clazz.getDeclaredFields();
            for (Field f : fields) {
                if ("geom".equals(f.getName())) {
                    continue;
                }
                f.setAccessible(true);
                list.add(f);
            }
            if (!OBJECT.equals(clazz.getSuperclass().getName())) {
                getFields(clazz.getSuperclass(), list);
            }
        } catch (Exception ex) {
            //
        }
    }
}