Răsfoiți Sursa

属性汉化

DESKTOP-2K9OVK9\siwei 3 luni în urmă
părinte
comite
49acf64f0f
28 a modificat fișierele cu 2565 adăugiri și 11 ștergeri
  1. 201 0
      onemap-modules/onemap-apply/src/main/java/com/onemap/apply/domain/dimentity/TEntityCodeAttribute.java
  2. 205 0
      onemap-modules/onemap-apply/src/main/java/com/onemap/apply/domain/dimentity/TEntityCodeTable.java
  3. 2 2
      onemap-modules/onemap-apply/src/main/java/com/onemap/apply/mapper/dimentity/DimEntityMapper.java
  4. 61 0
      onemap-modules/onemap-apply/src/main/java/com/onemap/apply/mapper/dimentity/TEntityCodeAttributeMapper.java
  5. 61 0
      onemap-modules/onemap-apply/src/main/java/com/onemap/apply/mapper/dimentity/TEntityCodeTableMapper.java
  6. 61 0
      onemap-modules/onemap-apply/src/main/java/com/onemap/apply/service/dimentity/ITEntityCodeAttributeService.java
  7. 61 0
      onemap-modules/onemap-apply/src/main/java/com/onemap/apply/service/dimentity/ITEntityCodeTableService.java
  8. 21 7
      onemap-modules/onemap-apply/src/main/java/com/onemap/apply/service/dimentity/impl/DimEntityServiceImpl.java
  9. 88 0
      onemap-modules/onemap-apply/src/main/java/com/onemap/apply/service/dimentity/impl/EntityCodeAttributeUtil.java
  10. 88 0
      onemap-modules/onemap-apply/src/main/java/com/onemap/apply/service/dimentity/impl/EntityCodeTableUtil.java
  11. 87 0
      onemap-modules/onemap-apply/src/main/java/com/onemap/apply/service/dimentity/impl/TEntityCodeAttributeServiceImpl.java
  12. 93 0
      onemap-modules/onemap-apply/src/main/java/com/onemap/apply/service/dimentity/impl/TEntityCodeTableServiceImpl.java
  13. 56 0
      onemap-modules/onemap-apply/src/main/java/com/onemap/apply/task/EntityCodeTableDBSchedule.java
  14. 4 2
      onemap-modules/onemap-apply/src/main/resources/mapper/postgresql/dimentity/DimEntityMapper.xml
  15. 108 0
      onemap-modules/onemap-apply/src/main/resources/mapper/postgresql/dimentity/TEntityCodeAttributeMapper.xml
  16. 113 0
      onemap-modules/onemap-apply/src/main/resources/mapper/postgresql/dimentity/TEntityCodeTableMapper.xml
  17. 105 0
      onemap-modules/onemap-system/src/main/java/com/onemap/system/controller/TEntityCodeAttributeController.java
  18. 98 0
      onemap-modules/onemap-system/src/main/java/com/onemap/system/controller/TEntityCodeTableController.java
  19. 191 0
      onemap-modules/onemap-system/src/main/java/com/onemap/system/domain/TEntityCodeAttribute.java
  20. 205 0
      onemap-modules/onemap-system/src/main/java/com/onemap/system/domain/TEntityCodeTable.java
  21. 62 0
      onemap-modules/onemap-system/src/main/java/com/onemap/system/mapper/TEntityCodeAttributeMapper.java
  22. 61 0
      onemap-modules/onemap-system/src/main/java/com/onemap/system/mapper/TEntityCodeTableMapper.java
  23. 62 0
      onemap-modules/onemap-system/src/main/java/com/onemap/system/service/ITEntityCodeAttributeService.java
  24. 62 0
      onemap-modules/onemap-system/src/main/java/com/onemap/system/service/ITEntityCodeTableService.java
  25. 94 0
      onemap-modules/onemap-system/src/main/java/com/onemap/system/service/impl/TEntityCodeAttributeServiceImpl.java
  26. 94 0
      onemap-modules/onemap-system/src/main/java/com/onemap/system/service/impl/TEntityCodeTableServiceImpl.java
  27. 108 0
      onemap-modules/onemap-system/src/main/resources/mapper/postgresql/system/TEntityCodeAttributeMapper.xml
  28. 113 0
      onemap-modules/onemap-system/src/main/resources/mapper/postgresql/system/TEntityCodeTableMapper.xml

+ 201 - 0
onemap-modules/onemap-apply/src/main/java/com/onemap/apply/domain/dimentity/TEntityCodeAttribute.java

@@ -0,0 +1,201 @@
+package com.onemap.apply.domain.dimentity;
+
+import com.onemap.common.core.annotation.Excel;
+import com.onemap.common.core.web.domain.BaseEntity;
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+
+/**
+ * 实体元素表对象 t_entity_code_attribute
+ *
+ * @author zhx
+ * @date 2024-12-27
+ */
+public class TEntityCodeAttribute extends BaseEntity {
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * id
+     */
+    private String id;
+
+    /**
+     * 实体分类码
+     */
+    @Excel(name = "实体分类码")
+    private String twocode;
+
+    /**
+     * 实体分类名
+     */
+    @Excel(name = "实体分类名")
+    private String twocodename;
+
+    /**
+     * 实体图层
+     */
+    @Excel(name = "实体图层")
+    private String entilayer;
+
+    /**
+     * 属性项名称
+     */
+    @Excel(name = "属性项名称")
+    private String attribute;
+
+    /**
+     * 属性项中文简称
+     */
+    @Excel(name = "属性项中文简称")
+    private String attributezh;
+
+    /**
+     * 字段类型
+     */
+    @Excel(name = "字段类型")
+    private String fieldtype;
+
+    /**
+     * 约束条件
+     */
+    @Excel(name = "约束条件")
+    private String constraints;
+
+    /**
+     * 长度
+     */
+    @Excel(name = "长度")
+    private String length;
+
+    /**
+     * 值域或示例
+     */
+    @Excel(name = "值域或示例")
+    private String examples;
+
+    /**
+     * 备注
+     */
+    @Excel(name = "备注")
+    private String remarks;
+
+    /**
+     * 排序
+     */
+    @Excel(name = "排序")
+    private Integer sort;
+
+    public void setId(String id) {
+        this.id = id;
+    }
+
+    public String getId() {
+        return id;
+    }
+
+    public void setTwocode(String twocode) {
+        this.twocode = twocode;
+    }
+
+    public String getTwocode() {
+        return twocode;
+    }
+
+    public void setTwocodename(String twocodename) {
+        this.twocodename = twocodename;
+    }
+
+    public String getTwocodename() {
+        return twocodename;
+    }
+
+    public void setEntilayer(String entilayer) {
+        this.entilayer = entilayer;
+    }
+
+    public String getEntilayer() {
+        return entilayer;
+    }
+
+    public void setAttribute(String attribute) {
+        this.attribute = attribute;
+    }
+
+    public String getAttribute() {
+        return attribute;
+    }
+
+    public void setAttributezh(String attributezh) {
+        this.attributezh = attributezh;
+    }
+
+    public String getAttributezh() {
+        return attributezh;
+    }
+
+    public void setFieldtype(String fieldtype) {
+        this.fieldtype = fieldtype;
+    }
+
+    public String getFieldtype() {
+        return fieldtype;
+    }
+
+    public void setConstraints(String constraints) {
+        this.constraints = constraints;
+    }
+
+    public String getConstraints() {
+        return constraints;
+    }
+
+    public void setLength(String length) {
+        this.length = length;
+    }
+
+    public String getLength() {
+        return length;
+    }
+
+    public void setExamples(String examples) {
+        this.examples = examples;
+    }
+
+    public String getExamples() {
+        return examples;
+    }
+
+    public void setRemarks(String remarks) {
+        this.remarks = remarks;
+    }
+
+    public String getRemarks() {
+        return remarks;
+    }
+
+    public void setSort(Integer sort) {
+        this.sort = sort;
+    }
+
+    public Integer getSort() {
+        return sort;
+    }
+
+    @Override
+    public String toString() {
+        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
+                .append("id", getId())
+                .append("twocode", getTwocode())
+                .append("twocodename", getTwocodename())
+                .append("entilayer", getEntilayer())
+                .append("attribute", getAttribute())
+                .append("attributezh", getAttributezh())
+                .append("fieldtype", getFieldtype())
+                .append("constraints", getConstraints())
+                .append("length", getLength())
+                .append("examples", getExamples())
+                .append("remarks", getRemarks())
+                .append("sort", getSort())
+                .toString();
+    }
+}

+ 205 - 0
onemap-modules/onemap-apply/src/main/java/com/onemap/apply/domain/dimentity/TEntityCodeTable.java

@@ -0,0 +1,205 @@
+package com.onemap.apply.domain.dimentity;
+
+import com.onemap.common.core.annotation.Excel;
+import com.onemap.common.core.web.domain.BaseEntity;
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+
+/**
+ * 实体编码表对象 t_entity_code_table
+ * 
+ * @author zhx
+ * @date 2024-12-27
+ */
+public class TEntityCodeTable extends BaseEntity
+{
+    private static final long serialVersionUID = 1L;
+
+    /** id */
+    private String id;
+
+    /** 实体门类 */
+    @Excel(name = "实体门类")
+    private String category;
+
+    /** 一级分类码 */
+    @Excel(name = "一级分类码")
+    private String firstcode;
+
+    /** 一级分类名 */
+    @Excel(name = "一级分类名")
+    private String firstcodename;
+
+    /** 二级分类码 */
+    @Excel(name = "二级分类码")
+    private String twocode;
+
+    /** 二级分类名 */
+    @Excel(name = "二级分类名")
+    private String twocodename;
+
+    /** 三级分类码 */
+    @Excel(name = "三级分类码")
+    private String threecode;
+
+    /** 三级分类名 */
+    @Excel(name = "三级分类名")
+    private String threecodename;
+
+    /** 四级分类码 */
+    @Excel(name = "四级分类码")
+    private String fourcode;
+
+    /** 四级分类名 */
+    @Excel(name = "四级分类名")
+    private String fourcodename;
+
+    /** 图形特征码 */
+    @Excel(name = "图形特征码")
+    private String featurecode;
+
+    /** 实体图层 */
+    @Excel(name = "实体图层")
+    private String entilayer;
+
+    /** 实体类型 */
+    @Excel(name = "实体类型")
+    private String entilaytype;
+
+    public void setId(String id) 
+    {
+        this.id = id;
+    }
+
+    public String getId() 
+    {
+        return id;
+    }
+    public void setCategory(String category) 
+    {
+        this.category = category;
+    }
+
+    public String getCategory() 
+    {
+        return category;
+    }
+    public void setFirstcode(String firstcode) 
+    {
+        this.firstcode = firstcode;
+    }
+
+    public String getFirstcode() 
+    {
+        return firstcode;
+    }
+    public void setFirstcodename(String firstcodename) 
+    {
+        this.firstcodename = firstcodename;
+    }
+
+    public String getFirstcodename() 
+    {
+        return firstcodename;
+    }
+    public void setTwocode(String twocode) 
+    {
+        this.twocode = twocode;
+    }
+
+    public String getTwocode() 
+    {
+        return twocode;
+    }
+    public void setTwocodename(String twocodename) 
+    {
+        this.twocodename = twocodename;
+    }
+
+    public String getTwocodename() 
+    {
+        return twocodename;
+    }
+    public void setThreecode(String threecode) 
+    {
+        this.threecode = threecode;
+    }
+
+    public String getThreecode() 
+    {
+        return threecode;
+    }
+    public void setThreecodename(String threecodename) 
+    {
+        this.threecodename = threecodename;
+    }
+
+    public String getThreecodename() 
+    {
+        return threecodename;
+    }
+    public void setFourcode(String fourcode) 
+    {
+        this.fourcode = fourcode;
+    }
+
+    public String getFourcode() 
+    {
+        return fourcode;
+    }
+    public void setFourcodename(String fourcodename) 
+    {
+        this.fourcodename = fourcodename;
+    }
+
+    public String getFourcodename() 
+    {
+        return fourcodename;
+    }
+    public void setFeaturecode(String featurecode) 
+    {
+        this.featurecode = featurecode;
+    }
+
+    public String getFeaturecode() 
+    {
+        return featurecode;
+    }
+    public void setEntilayer(String entilayer) 
+    {
+        this.entilayer = entilayer;
+    }
+
+    public String getEntilayer() 
+    {
+        return entilayer;
+    }
+    public void setEntilaytype(String entilaytype) 
+    {
+        this.entilaytype = entilaytype;
+    }
+
+    public String getEntilaytype() 
+    {
+        return entilaytype;
+    }
+
+    @Override
+    public String toString() {
+        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
+            .append("id", getId())
+            .append("category", getCategory())
+            .append("firstcode", getFirstcode())
+            .append("firstcodename", getFirstcodename())
+            .append("twocode", getTwocode())
+            .append("twocodename", getTwocodename())
+            .append("threecode", getThreecode())
+            .append("threecodename", getThreecodename())
+            .append("fourcode", getFourcode())
+            .append("fourcodename", getFourcodename())
+            .append("featurecode", getFeaturecode())
+            .append("entilayer", getEntilayer())
+            .append("entilaytype", getEntilaytype())
+            .toString();
+    }
+}

+ 2 - 2
onemap-modules/onemap-apply/src/main/java/com/onemap/apply/mapper/dimentity/DimEntityMapper.java

@@ -39,9 +39,9 @@ public interface DimEntityMapper {
      */
     List<EntityRelationshipVo> queryEntityRelationshipDataByEntityId(@Param("EntityId") String EntityId, @Param("tables") List<String> tablesName);
 
-    Map<String, Object> queryEntityDataByEntityId(@Param("tableName") String tableName, @Param("entityid") String entityid);
+    Map<String, Object> queryEntityDataByEntityId(@Param("tableName") String tableName, @Param("entityid") String entityid, @Param("selectSQL") String selectSQL);
 
-    Map<String, Object> queryEntityGeomDataByEntityId(@Param("tylayer") String tylayer, @Param("elementid") String elementid);
+    Map<String, Object> queryEntityGeomDataByEntityId(@Param("tylayer") String tylayer, @Param("elementid") String elementid, @Param("selectSQL") String selectSQL);
 
     /**
      * 根据实体分类,通過视图获取表名

+ 61 - 0
onemap-modules/onemap-apply/src/main/java/com/onemap/apply/mapper/dimentity/TEntityCodeAttributeMapper.java

@@ -0,0 +1,61 @@
+package com.onemap.apply.mapper.dimentity;
+
+import java.util.List;
+import com.onemap.apply.domain.dimentity.TEntityCodeAttribute;
+
+/**
+ * 实体元素表Mapper接口
+ *
+ * @author zhx
+ * @date 2024-12-27
+ */
+public interface TEntityCodeAttributeMapper
+{
+    /**
+     * 查询实体元素表
+     *
+     * @param id 实体元素表主键
+     * @return 实体元素表
+     */
+    TEntityCodeAttribute selectTEntityCodeAttributeById(String id);
+
+    /**
+     * 查询实体元素表列表
+     *
+     * @param tEntityCodeAttribute 实体元素表
+     * @return 实体元素表集合
+     */
+    List<TEntityCodeAttribute> selectTEntityCodeAttributeList(TEntityCodeAttribute tEntityCodeAttribute);
+
+    /**
+     * 新增实体元素表
+     *
+     * @param tEntityCodeAttribute 实体元素表
+     * @return 结果
+     */
+    int insertTEntityCodeAttribute(TEntityCodeAttribute tEntityCodeAttribute);
+
+    /**
+     * 修改实体元素表
+     *
+     * @param tEntityCodeAttribute 实体元素表
+     * @return 结果
+     */
+    int updateTEntityCodeAttribute(TEntityCodeAttribute tEntityCodeAttribute);
+
+    /**
+     * 删除实体元素表
+     *
+     * @param id 实体元素表主键
+     * @return 结果
+     */
+    int deleteTEntityCodeAttributeById(String id);
+
+    /**
+     * 批量删除实体元素表
+     *
+     * @param ids 需要删除的数据主键集合
+     * @return 结果
+     */
+    int deleteTEntityCodeAttributeByIds(String[] ids);
+}

+ 61 - 0
onemap-modules/onemap-apply/src/main/java/com/onemap/apply/mapper/dimentity/TEntityCodeTableMapper.java

@@ -0,0 +1,61 @@
+package com.onemap.apply.mapper.dimentity;
+
+import java.util.List;
+import com.onemap.apply.domain.dimentity.TEntityCodeTable;
+
+/**
+ * 实体编码表Mapper接口
+ * 
+ * @author zhx
+ * @date 2024-12-27
+ */
+public interface TEntityCodeTableMapper 
+{
+    /**
+     * 查询实体编码表
+     * 
+     * @param id 实体编码表主键
+     * @return 实体编码表
+     */
+    public TEntityCodeTable selectTEntityCodeTableById(String id);
+
+    /**
+     * 查询实体编码表列表
+     * 
+     * @param tEntityCodeTable 实体编码表
+     * @return 实体编码表集合
+     */
+    public List<TEntityCodeTable> selectTEntityCodeTableList(TEntityCodeTable tEntityCodeTable);
+
+    /**
+     * 新增实体编码表
+     * 
+     * @param tEntityCodeTable 实体编码表
+     * @return 结果
+     */
+    public int insertTEntityCodeTable(TEntityCodeTable tEntityCodeTable);
+
+    /**
+     * 修改实体编码表
+     * 
+     * @param tEntityCodeTable 实体编码表
+     * @return 结果
+     */
+    public int updateTEntityCodeTable(TEntityCodeTable tEntityCodeTable);
+
+    /**
+     * 删除实体编码表
+     * 
+     * @param id 实体编码表主键
+     * @return 结果
+     */
+    public int deleteTEntityCodeTableById(String id);
+
+    /**
+     * 批量删除实体编码表
+     * 
+     * @param ids 需要删除的数据主键集合
+     * @return 结果
+     */
+    public int deleteTEntityCodeTableByIds(String[] ids);
+}

+ 61 - 0
onemap-modules/onemap-apply/src/main/java/com/onemap/apply/service/dimentity/ITEntityCodeAttributeService.java

@@ -0,0 +1,61 @@
+package com.onemap.apply.service.dimentity;
+
+import java.util.List;
+import com.onemap.apply.domain.dimentity.TEntityCodeAttribute;
+
+/**
+ * 实体元素表Service接口
+ * 
+ * @author zhx
+ * @date 2024-12-27
+ */
+public interface ITEntityCodeAttributeService 
+{
+    /**
+     * 查询实体元素表
+     * 
+     * @param id 实体元素表主键
+     * @return 实体元素表
+     */
+    public TEntityCodeAttribute selectTEntityCodeAttributeById(String id);
+
+    /**
+     * 查询实体元素表列表
+     * 
+     * @param tEntityCodeAttribute 实体元素表
+     * @return 实体元素表集合
+     */
+    public List<TEntityCodeAttribute> selectTEntityCodeAttributeList(TEntityCodeAttribute tEntityCodeAttribute);
+
+    /**
+     * 新增实体元素表
+     * 
+     * @param tEntityCodeAttribute 实体元素表
+     * @return 结果
+     */
+    public int insertTEntityCodeAttribute(TEntityCodeAttribute tEntityCodeAttribute);
+
+    /**
+     * 修改实体元素表
+     * 
+     * @param tEntityCodeAttribute 实体元素表
+     * @return 结果
+     */
+    public int updateTEntityCodeAttribute(TEntityCodeAttribute tEntityCodeAttribute);
+
+    /**
+     * 批量删除实体元素表
+     * 
+     * @param ids 需要删除的实体元素表主键集合
+     * @return 结果
+     */
+    public int deleteTEntityCodeAttributeByIds(String[] ids);
+
+    /**
+     * 删除实体元素表信息
+     * 
+     * @param id 实体元素表主键
+     * @return 结果
+     */
+    public int deleteTEntityCodeAttributeById(String id);
+}

+ 61 - 0
onemap-modules/onemap-apply/src/main/java/com/onemap/apply/service/dimentity/ITEntityCodeTableService.java

@@ -0,0 +1,61 @@
+package com.onemap.apply.service.dimentity;
+
+import java.util.List;
+import com.onemap.apply.domain.dimentity.TEntityCodeTable;
+
+/**
+ * 实体编码表Service接口
+ * 
+ * @author zhx
+ * @date 2024-12-27
+ */
+public interface ITEntityCodeTableService 
+{
+    /**
+     * 查询实体编码表
+     * 
+     * @param id 实体编码表主键
+     * @return 实体编码表
+     */
+    public TEntityCodeTable selectTEntityCodeTableById(String id);
+
+    /**
+     * 查询实体编码表列表
+     * 
+     * @param tEntityCodeTable 实体编码表
+     * @return 实体编码表集合
+     */
+    public List<TEntityCodeTable> selectTEntityCodeTableList(TEntityCodeTable tEntityCodeTable);
+
+    /**
+     * 新增实体编码表
+     * 
+     * @param tEntityCodeTable 实体编码表
+     * @return 结果
+     */
+    public int insertTEntityCodeTable(TEntityCodeTable tEntityCodeTable);
+
+    /**
+     * 修改实体编码表
+     * 
+     * @param tEntityCodeTable 实体编码表
+     * @return 结果
+     */
+    public int updateTEntityCodeTable(TEntityCodeTable tEntityCodeTable);
+
+    /**
+     * 批量删除实体编码表
+     * 
+     * @param ids 需要删除的实体编码表主键集合
+     * @return 结果
+     */
+    public int deleteTEntityCodeTableByIds(String[] ids);
+
+    /**
+     * 删除实体编码表信息
+     * 
+     * @param id 实体编码表主键
+     * @return 结果
+     */
+    public int deleteTEntityCodeTableById(String id);
+}

+ 21 - 7
onemap-modules/onemap-apply/src/main/java/com/onemap/apply/service/dimentity/impl/DimEntityServiceImpl.java

@@ -1,10 +1,6 @@
 package com.onemap.apply.service.dimentity.impl;
 
-import com.alibaba.fastjson2.JSON;
-import com.onemap.apply.domain.dimentity.DimEntityDto;
-import com.onemap.apply.domain.dimentity.EntityCodeTreeVo;
-import com.onemap.apply.domain.dimentity.EntityRelationshipToNeo4jVo;
-import com.onemap.apply.domain.dimentity.EntityRelationshipVo;
+import com.onemap.apply.domain.dimentity.*;
 import com.onemap.apply.mapper.dimentity.DimEntityMapper;
 import com.onemap.apply.mapper.dimentity.DimEntityReponsitory;
 import com.onemap.apply.service.dimentity.DimEntityService;
@@ -62,10 +58,28 @@ public class DimEntityServiceImpl implements DimEntityService {
         if (relationshipVos == null || relationshipVos.size() == 0) {
             return result;
         }
+
+        EntityCodeAttributeUtil d_0_entityCodeAttributeUtil = EntityCodeAttributeUtil.getInstance();
+        List<String> d5 = d_0_entityCodeAttributeUtil.getTableNameAllCacheData();
+
         //查询对象形象
         EntityRelationshipVo d0_relationshipVo = relationshipVos.get(0);
         String d0_entilayer = d0_relationshipVo.getEntilayer();
-        Map<String, Object> d0_EntityData = dimEntityMapper.queryEntityDataByEntityId(d0_entilayer, entityid);
+        List<TEntityCodeAttribute> d7_attributes = new ArrayList<>();
+        for (String d6TableName : d5) {
+            if (StringUtils.toRootLowerCase(d0_entilayer).lastIndexOf(d6TableName) != -1) {
+                d7_attributes = d_0_entityCodeAttributeUtil.getTableCacheData(d6TableName);
+                continue;
+            }
+        }
+        if (d7_attributes == null || d7_attributes.size() == 0) {
+            return result;
+        }
+        StringBuilder selectSQL = new StringBuilder();
+        for (TEntityCodeAttribute d9tEntityCodeAttribute : d7_attributes) {
+            selectSQL.append(",").append(" \"").append(StringUtils.toRootLowerCase(d9tEntityCodeAttribute.getAttribute())).append("\" as ").append(d9tEntityCodeAttribute.getAttributezh());
+        }
+        Map<String, Object> d0_EntityData = dimEntityMapper.queryEntityDataByEntityId(d0_entilayer, entityid, selectSQL.toString());
         if (d0_EntityData == null) {
             return result;
         }
@@ -74,7 +88,7 @@ public class DimEntityServiceImpl implements DimEntityService {
         List<Map<String, Object>> geomList = new ArrayList<Map<String, Object>>();
         if (d0_EntityData != null) {
             for (EntityRelationshipVo relationshipVo : relationshipVos) {
-                geomList.add(dimEntityMapper.queryEntityGeomDataByEntityId(relationshipVo.getTylayer(), relationshipVo.getElementid()));
+                geomList.add(dimEntityMapper.queryEntityGeomDataByEntityId(relationshipVo.getTylayer(), relationshipVo.getElementid(), selectSQL.toString()));
             }
         }
         result.put("geom", geomList);

+ 88 - 0
onemap-modules/onemap-apply/src/main/java/com/onemap/apply/service/dimentity/impl/EntityCodeAttributeUtil.java

@@ -0,0 +1,88 @@
+package com.onemap.apply.service.dimentity.impl;
+
+import com.onemap.apply.domain.dimentity.TEntityCodeAttribute;
+
+import java.util.*;
+
+public class EntityCodeAttributeUtil {
+
+    private static volatile EntityCodeAttributeUtil entityCodeAttributeUtil;
+    private static Map<String, List<TEntityCodeAttribute>> cacheSingletonCodeMap;
+    private static Map<String, List<TEntityCodeAttribute>> cacheSingletonTableMap;
+    private static Set<String> cacheSingletonTableNameList;
+
+    private EntityCodeAttributeUtil() {
+        cacheSingletonCodeMap = new HashMap<String, List<TEntityCodeAttribute>>();
+        cacheSingletonTableMap = new HashMap<String, List<TEntityCodeAttribute>>();
+        cacheSingletonTableNameList = new HashSet<String>();
+    }
+
+    /*
+     * 单例模式有两种类型
+     * 懒汉式:在真正需要使用对象时才去创建该单例类对象
+     * 饿汉式:在类加载时已经创建好该单例对象,等待被程序使用
+     */
+
+    // 懒汉式单例模式
+    public static EntityCodeAttributeUtil getInstance() {
+        if (entityCodeAttributeUtil == null) {// 线程A和线程B同时看到cacheSingletonUtil = null,如果不为null,则直接返回cacheSingletonUtil
+            synchronized (EntityCodeAttributeUtil.class) {// 线程A或线程B获得该锁进行初始化
+                if (entityCodeAttributeUtil == null) {// 其中一个线程进入该分支,另外一个线程则不会进入该分支
+                    entityCodeAttributeUtil = new EntityCodeAttributeUtil();
+                }
+            }
+        }
+        return entityCodeAttributeUtil;
+    }
+
+    /**
+     * 添加到内存
+     */
+    public void addCodeCacheData(String key, List<TEntityCodeAttribute> obj) {
+        cacheSingletonCodeMap.put(key, obj);
+    }
+
+    /**
+     * 从内存中取出
+     */
+    public List<TEntityCodeAttribute> getCodeCacheData(String key) {
+        return cacheSingletonCodeMap.get(key);
+    }
+
+    /**
+     * 从内存中清除
+     */
+    public void removeCodeCacheData(TEntityCodeAttribute key) {
+        cacheSingletonCodeMap.remove(key);
+    }
+
+    /**
+     * 添加到内存
+     */
+    public void addTableCacheData(String key, List<TEntityCodeAttribute> obj) {
+        cacheSingletonTableNameList.add(key);
+        cacheSingletonTableMap.put(key, obj);
+    }
+
+    /**
+     * 从内存中取出
+     */
+    public List<TEntityCodeAttribute> getTableCacheData(String key) {
+        return cacheSingletonTableMap.get(key);
+    }
+
+    /**
+     * 从内存中清除
+     */
+    public void removeTableCacheData(TEntityCodeAttribute key) {
+        cacheSingletonTableMap.remove(key);
+    }
+
+    /**
+     * 从内存中取出
+     */
+    public List<String> getTableNameAllCacheData() {
+        return new ArrayList<>(cacheSingletonTableNameList);
+    }
+
+}

+ 88 - 0
onemap-modules/onemap-apply/src/main/java/com/onemap/apply/service/dimentity/impl/EntityCodeTableUtil.java

@@ -0,0 +1,88 @@
+package com.onemap.apply.service.dimentity.impl;
+
+import com.onemap.apply.domain.dimentity.TEntityCodeTable;
+
+import java.util.*;
+
+public class EntityCodeTableUtil {
+
+    private static volatile EntityCodeTableUtil entityCodeAttributeUtil;
+    private static Map<String, TEntityCodeTable> cacheSingletonCodeMap;
+    private static Map<String, TEntityCodeTable> cacheSingletonTableMap;
+    private static Set<String> cacheSingletonTableNameList;
+
+    private EntityCodeTableUtil() {
+        cacheSingletonCodeMap = new HashMap<String, TEntityCodeTable>();
+        cacheSingletonTableMap = new HashMap<String, TEntityCodeTable>();
+        cacheSingletonTableNameList = new HashSet<String>();
+    }
+
+    /*
+     * 单例模式有两种类型
+     * 懒汉式:在真正需要使用对象时才去创建该单例类对象
+     * 饿汉式:在类加载时已经创建好该单例对象,等待被程序使用
+     */
+
+    // 懒汉式单例模式
+    public static EntityCodeTableUtil getInstance() {
+        if (entityCodeAttributeUtil == null) {// 线程A和线程B同时看到cacheSingletonUtil = null,如果不为null,则直接返回cacheSingletonUtil
+            synchronized (EntityCodeTableUtil.class) {// 线程A或线程B获得该锁进行初始化
+                if (entityCodeAttributeUtil == null) {// 其中一个线程进入该分支,另外一个线程则不会进入该分支
+                    entityCodeAttributeUtil = new EntityCodeTableUtil();
+                }
+            }
+        }
+        return entityCodeAttributeUtil;
+    }
+
+    /**
+     * 添加到内存
+     */
+    public void addCodeCacheData(String key, TEntityCodeTable obj) {
+        cacheSingletonCodeMap.put(key, obj);
+    }
+
+    /**
+     * 从内存中取出
+     */
+    public TEntityCodeTable getCodeCacheData(String key) {
+        return cacheSingletonCodeMap.get(key);
+    }
+
+    /**
+     * 从内存中清除
+     */
+    public void removeCodeCacheData(TEntityCodeTable key) {
+        cacheSingletonCodeMap.remove(key);
+    }
+
+    /**
+     * 添加到内存
+     */
+    public void addTableCacheData(String key, TEntityCodeTable obj) {
+        cacheSingletonTableNameList.add(key);
+        cacheSingletonTableMap.put(key, obj);
+    }
+
+    /**
+     * 从内存中取出
+     */
+    public TEntityCodeTable getTableCacheData(String key) {
+        return cacheSingletonTableMap.get(key);
+    }
+
+    /**
+     * 从内存中清除
+     */
+    public void removeTableCacheData(TEntityCodeTable key) {
+        cacheSingletonTableMap.remove(key);
+    }
+
+    /**
+     * 从内存中取出
+     */
+    public List<String> getTableNameAllCacheData() {
+        return new ArrayList<>(cacheSingletonTableNameList);
+    }
+
+}

+ 87 - 0
onemap-modules/onemap-apply/src/main/java/com/onemap/apply/service/dimentity/impl/TEntityCodeAttributeServiceImpl.java

@@ -0,0 +1,87 @@
+package com.onemap.apply.service.dimentity.impl;
+
+import java.util.List;
+
+import com.onemap.apply.mapper.dimentity.TEntityCodeAttributeMapper;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import com.onemap.apply.domain.dimentity.TEntityCodeAttribute;
+import com.onemap.apply.service.dimentity.ITEntityCodeAttributeService;
+
+/**
+ * 实体元素表Service业务层处理
+ *
+ * @author zhx
+ * @date 2024-12-27
+ */
+@Service
+public class TEntityCodeAttributeServiceImpl implements ITEntityCodeAttributeService {
+    @Autowired
+    private TEntityCodeAttributeMapper tEntityCodeAttributeMapper;
+
+    /**
+     * 查询实体元素表
+     *
+     * @param id 实体元素表主键
+     * @return 实体元素表
+     */
+    @Override
+    public TEntityCodeAttribute selectTEntityCodeAttributeById(String id) {
+        return tEntityCodeAttributeMapper.selectTEntityCodeAttributeById(id);
+    }
+
+    /**
+     * 查询实体元素表列表
+     *
+     * @param tEntityCodeAttribute 实体元素表
+     * @return 实体元素表
+     */
+    @Override
+    public List<TEntityCodeAttribute> selectTEntityCodeAttributeList(TEntityCodeAttribute tEntityCodeAttribute) {
+        return tEntityCodeAttributeMapper.selectTEntityCodeAttributeList(tEntityCodeAttribute);
+    }
+
+    /**
+     * 新增实体元素表
+     *
+     * @param tEntityCodeAttribute 实体元素表
+     * @return 结果
+     */
+    @Override
+    public int insertTEntityCodeAttribute(TEntityCodeAttribute tEntityCodeAttribute) {
+        return tEntityCodeAttributeMapper.insertTEntityCodeAttribute(tEntityCodeAttribute);
+    }
+
+    /**
+     * 修改实体元素表
+     *
+     * @param tEntityCodeAttribute 实体元素表
+     * @return 结果
+     */
+    @Override
+    public int updateTEntityCodeAttribute(TEntityCodeAttribute tEntityCodeAttribute) {
+        return tEntityCodeAttributeMapper.updateTEntityCodeAttribute(tEntityCodeAttribute);
+    }
+
+    /**
+     * 批量删除实体元素表
+     *
+     * @param ids 需要删除的实体元素表主键
+     * @return 结果
+     */
+    @Override
+    public int deleteTEntityCodeAttributeByIds(String[] ids) {
+        return tEntityCodeAttributeMapper.deleteTEntityCodeAttributeByIds(ids);
+    }
+
+    /**
+     * 删除实体元素表信息
+     *
+     * @param id 实体元素表主键
+     * @return 结果
+     */
+    @Override
+    public int deleteTEntityCodeAttributeById(String id) {
+        return tEntityCodeAttributeMapper.deleteTEntityCodeAttributeById(id);
+    }
+}

+ 93 - 0
onemap-modules/onemap-apply/src/main/java/com/onemap/apply/service/dimentity/impl/TEntityCodeTableServiceImpl.java

@@ -0,0 +1,93 @@
+package com.onemap.apply.service.dimentity.impl;
+
+import java.util.List;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import com.onemap.apply.mapper.dimentity.TEntityCodeTableMapper;
+import com.onemap.apply.domain.dimentity.TEntityCodeTable;
+import com.onemap.apply.service.dimentity.ITEntityCodeTableService;
+
+/**
+ * 实体编码表Service业务层处理
+ * 
+ * @author zhx
+ * @date 2024-12-27
+ */
+@Service
+public class TEntityCodeTableServiceImpl implements ITEntityCodeTableService 
+{
+    @Autowired
+    private TEntityCodeTableMapper tEntityCodeTableMapper;
+
+    /**
+     * 查询实体编码表
+     * 
+     * @param id 实体编码表主键
+     * @return 实体编码表
+     */
+    @Override
+    public TEntityCodeTable selectTEntityCodeTableById(String id)
+    {
+        return tEntityCodeTableMapper.selectTEntityCodeTableById(id);
+    }
+
+    /**
+     * 查询实体编码表列表
+     * 
+     * @param tEntityCodeTable 实体编码表
+     * @return 实体编码表
+     */
+    @Override
+    public List<TEntityCodeTable> selectTEntityCodeTableList(TEntityCodeTable tEntityCodeTable)
+    {
+        return tEntityCodeTableMapper.selectTEntityCodeTableList(tEntityCodeTable);
+    }
+
+    /**
+     * 新增实体编码表
+     * 
+     * @param tEntityCodeTable 实体编码表
+     * @return 结果
+     */
+    @Override
+    public int insertTEntityCodeTable(TEntityCodeTable tEntityCodeTable)
+    {
+        return tEntityCodeTableMapper.insertTEntityCodeTable(tEntityCodeTable);
+    }
+
+    /**
+     * 修改实体编码表
+     * 
+     * @param tEntityCodeTable 实体编码表
+     * @return 结果
+     */
+    @Override
+    public int updateTEntityCodeTable(TEntityCodeTable tEntityCodeTable)
+    {
+        return tEntityCodeTableMapper.updateTEntityCodeTable(tEntityCodeTable);
+    }
+
+    /**
+     * 批量删除实体编码表
+     * 
+     * @param ids 需要删除的实体编码表主键
+     * @return 结果
+     */
+    @Override
+    public int deleteTEntityCodeTableByIds(String[] ids)
+    {
+        return tEntityCodeTableMapper.deleteTEntityCodeTableByIds(ids);
+    }
+
+    /**
+     * 删除实体编码表信息
+     * 
+     * @param id 实体编码表主键
+     * @return 结果
+     */
+    @Override
+    public int deleteTEntityCodeTableById(String id)
+    {
+        return tEntityCodeTableMapper.deleteTEntityCodeTableById(id);
+    }
+}

+ 56 - 0
onemap-modules/onemap-apply/src/main/java/com/onemap/apply/task/EntityCodeTableDBSchedule.java

@@ -0,0 +1,56 @@
+package com.onemap.apply.task;
+
+import com.onemap.apply.domain.dimentity.TEntityCodeAttribute;
+import com.onemap.apply.domain.dimentity.TEntityCodeTable;
+import com.onemap.apply.service.dimentity.ITEntityCodeAttributeService;
+import com.onemap.apply.service.dimentity.ITEntityCodeTableService;
+import com.onemap.apply.service.dimentity.impl.EntityCodeAttributeUtil;
+import com.onemap.apply.service.dimentity.impl.EntityCodeTableUtil;
+import com.onemap.common.core.utils.DateUtils;
+import com.onemap.common.core.utils.StringUtils;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.scheduling.annotation.Scheduled;
+import org.springframework.stereotype.Component;
+
+import javax.annotation.Resource;
+import java.util.List;
+
+/**
+ * 定时缓存实体属性项信息
+ */
+@Component
+@Slf4j
+public class EntityCodeTableDBSchedule {
+    //1个小时更新1次 间隔时间 单位ms
+    public static final long TIME_INTERVAL = 60 * 60 * 1000;
+
+    @Resource
+    private ITEntityCodeAttributeService itEntityCodeAttributeService;
+    @Resource
+    private ITEntityCodeTableService itEntityCodeTableService;
+
+    /**
+     * 定时删除临时的数据库,删除10分钟之前的
+     */
+    @Scheduled(fixedDelay = TIME_INTERVAL)
+    public void AnalyseDBDropStatus() {
+        log.info("EntityCodeTableDBSchedule!!!!!" + DateUtils.dateTimeNow());
+        List<TEntityCodeTable> tEntityCodeTables = itEntityCodeTableService.selectTEntityCodeTableList(null);
+        EntityCodeTableUtil d_0_entityCodeTableUtil = EntityCodeTableUtil.getInstance();
+        EntityCodeAttributeUtil d_0_entityCodeAttributeUtil = EntityCodeAttributeUtil.getInstance();
+
+        TEntityCodeAttribute queryTEntityCodeAttribute;
+        List<TEntityCodeAttribute> tEntityCodeAttributes;
+        for (TEntityCodeTable d_0 : tEntityCodeTables) {
+            queryTEntityCodeAttribute = new TEntityCodeAttribute();
+            d_0_entityCodeTableUtil.addTableCacheData(StringUtils.toRootLowerCase(d_0.getEntilayer()), d_0);
+            d_0_entityCodeTableUtil.addCodeCacheData(d_0.getFourcode(), d_0);
+
+            queryTEntityCodeAttribute.setTwocode(d_0.getTwocode());
+            tEntityCodeAttributes = itEntityCodeAttributeService.selectTEntityCodeAttributeList(queryTEntityCodeAttribute);
+            d_0_entityCodeAttributeUtil.addTableCacheData(StringUtils.toRootLowerCase(d_0.getEntilayer()), tEntityCodeAttributes);
+            d_0_entityCodeAttributeUtil.addCodeCacheData(d_0.getFourcode(), tEntityCodeAttributes);
+        }
+        log.info("EntityCodeTableDBSchedule 完成!!!!!" + DateUtils.dateTimeNow());
+    }
+}

+ 4 - 2
onemap-modules/onemap-apply/src/main/resources/mapper/postgresql/dimentity/DimEntityMapper.xml

@@ -72,11 +72,13 @@
     </select>
 
     <select id="queryEntityDataByEntityId" parameterType="String" resultType="map">
-        select *  from vector.${tableName}  where entityid::varchar = #{entityid}
+        select entityid,entityname <if test="selectSQL != null and selectSQL != ''  ">${selectSQL} </if>
+        from vector.${tableName}  where entityid::varchar = #{entityid}
     </select>
 
     <select id="queryEntityGeomDataByEntityId" parameterType="String" resultType="map">
-        select *, public.st_asewkt(public.st_transform(geom,4326)) siweigeomewkt
+        select entityid,entityname,public.st_asewkt(public.st_transform(geom,4326))  siweigeomewkt
+        <if test="selectSQL != null and selectSQL != ''  ">${selectSQL} </if>
         from vector.${tylayer}
         where elementid = #{elementid}
     </select>

+ 108 - 0
onemap-modules/onemap-apply/src/main/resources/mapper/postgresql/dimentity/TEntityCodeAttributeMapper.xml

@@ -0,0 +1,108 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper
+PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.onemap.apply.mapper.dimentity.TEntityCodeAttributeMapper">
+    
+    <resultMap type="TEntityCodeAttribute" id="TEntityCodeAttributeResult">
+        <result property="id"    column="id"    />
+        <result property="twocode"    column="twocode"    />
+        <result property="twocodename"    column="twocodename"    />
+        <result property="entilayer"    column="entilayer"    />
+        <result property="attribute"    column="attribute"    />
+        <result property="attributezh"    column="attributezh"    />
+        <result property="fieldtype"    column="fieldtype"    />
+        <result property="constraints"    column="constraints"    />
+        <result property="length"    column="length"    />
+        <result property="examples"    column="examples"    />
+        <result property="remarks"    column="remarks"    />
+        <result property="sort"    column="sort"    />
+    </resultMap>
+
+    <sql id="selectTEntityCodeAttributeVo">
+        select id, twocode, twocodename, entilayer, attribute, attributezh, fieldtype, constraints, length, examples, remarks, sort from t_entity_code_attribute
+    </sql>
+
+    <select id="selectTEntityCodeAttributeList" parameterType="TEntityCodeAttribute" resultMap="TEntityCodeAttributeResult">
+        <include refid="selectTEntityCodeAttributeVo"/>
+        <where>  
+            <if test="twocode != null  and twocode != ''"> and twocode = #{twocode}</if>
+            <if test="twocodename != null  and twocodename != ''"> and twocodename like concat('%', #{twocodename}, '%')</if>
+            <if test="entilayer != null  and entilayer != ''"> and entilayer = #{entilayer}</if>
+            <if test="attribute != null  and attribute != ''"> and attribute like concat('%', #{attribute}, '%')</if>
+            <if test="attributezh != null  and attributezh != ''"> and attributezh like concat('%', #{attributezh}, '%')</if>
+            <if test="fieldtype != null  and fieldtype != ''"> and fieldtype = #{fieldtype}</if>
+            <if test="constraints != null  and constraints != ''"> and constraints = #{constraints}</if>
+            <if test="length != null  and length != ''"> and length = #{length}</if>
+            <if test="examples != null  and examples != ''"> and examples = #{examples}</if>
+            <if test="remarks != null  and remarks != ''"> and remarks = #{remarks}</if>
+            <if test="sort != null "> and sort = #{sort}</if>
+        </where>
+    </select>
+    
+    <select id="selectTEntityCodeAttributeById" parameterType="String" resultMap="TEntityCodeAttributeResult">
+        <include refid="selectTEntityCodeAttributeVo"/>
+        where id = #{id}
+    </select>
+
+    <insert id="insertTEntityCodeAttribute" parameterType="TEntityCodeAttribute">
+        insert into t_entity_code_attribute
+        <trim prefix="(" suffix=")" suffixOverrides=",">
+            <if test="id != null">id,</if>
+            <if test="twocode != null and twocode != ''">twocode,</if>
+            <if test="twocodename != null and twocodename != ''">twocodename,</if>
+            <if test="entilayer != null and entilayer != ''">entilayer,</if>
+            <if test="attribute != null and attribute != ''">attribute,</if>
+            <if test="attributezh != null and attributezh != ''">attributezh,</if>
+            <if test="fieldtype != null">fieldtype,</if>
+            <if test="constraints != null">constraints,</if>
+            <if test="length != null">length,</if>
+            <if test="examples != null">examples,</if>
+            <if test="remarks != null">remarks,</if>
+            <if test="sort != null">sort,</if>
+         </trim>
+        <trim prefix="values (" suffix=")" suffixOverrides=",">
+            <if test="id != null">#{id},</if>
+            <if test="twocode != null and twocode != ''">#{twocode},</if>
+            <if test="twocodename != null and twocodename != ''">#{twocodename},</if>
+            <if test="entilayer != null and entilayer != ''">#{entilayer},</if>
+            <if test="attribute != null and attribute != ''">#{attribute},</if>
+            <if test="attributezh != null and attributezh != ''">#{attributezh},</if>
+            <if test="fieldtype != null">#{fieldtype},</if>
+            <if test="constraints != null">#{constraints},</if>
+            <if test="length != null">#{length},</if>
+            <if test="examples != null">#{examples},</if>
+            <if test="remarks != null">#{remarks},</if>
+            <if test="sort != null">#{sort},</if>
+         </trim>
+    </insert>
+
+    <update id="updateTEntityCodeAttribute" parameterType="TEntityCodeAttribute">
+        update t_entity_code_attribute
+        <trim prefix="SET" suffixOverrides=",">
+            <if test="twocode != null and twocode != ''">twocode = #{twocode},</if>
+            <if test="twocodename != null and twocodename != ''">twocodename = #{twocodename},</if>
+            <if test="entilayer != null and entilayer != ''">entilayer = #{entilayer},</if>
+            <if test="attribute != null and attribute != ''">attribute = #{attribute},</if>
+            <if test="attributezh != null and attributezh != ''">attributezh = #{attributezh},</if>
+            <if test="fieldtype != null">fieldtype = #{fieldtype},</if>
+            <if test="constraints != null">constraints = #{constraints},</if>
+            <if test="length != null">length = #{length},</if>
+            <if test="examples != null">examples = #{examples},</if>
+            <if test="remarks != null">remarks = #{remarks},</if>
+            <if test="sort != null">sort = #{sort},</if>
+        </trim>
+        where id = #{id}
+    </update>
+
+    <delete id="deleteTEntityCodeAttributeById" parameterType="String">
+        delete from t_entity_code_attribute where id = #{id}
+    </delete>
+
+    <delete id="deleteTEntityCodeAttributeByIds" parameterType="String">
+        delete from t_entity_code_attribute where id in 
+        <foreach item="id" collection="array" open="(" separator="," close=")">
+            #{id}
+        </foreach>
+    </delete>
+</mapper>

+ 113 - 0
onemap-modules/onemap-apply/src/main/resources/mapper/postgresql/dimentity/TEntityCodeTableMapper.xml

@@ -0,0 +1,113 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper
+PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.onemap.apply.mapper.dimentity.TEntityCodeTableMapper">
+    
+    <resultMap type="TEntityCodeTable" id="TEntityCodeTableResult">
+        <result property="id"    column="id"    />
+        <result property="category"    column="category"    />
+        <result property="firstcode"    column="firstcode"    />
+        <result property="firstcodename"    column="firstcodename"    />
+        <result property="twocode"    column="twocode"    />
+        <result property="twocodename"    column="twocodename"    />
+        <result property="threecode"    column="threecode"    />
+        <result property="threecodename"    column="threecodename"    />
+        <result property="fourcode"    column="fourcode"    />
+        <result property="fourcodename"    column="fourcodename"    />
+        <result property="featurecode"    column="featurecode"    />
+        <result property="entilayer"    column="entilayer"    />
+        <result property="entilaytype"    column="entilaytype"    />
+    </resultMap>
+
+    <sql id="selectTEntityCodeTableVo">
+        select id, category, firstcode, firstcodename, twocode, twocodename, threecode, threecodename, fourcode, fourcodename, featurecode, entilayer, entilaytype from t_entity_code_table
+    </sql>
+
+    <select id="selectTEntityCodeTableList" parameterType="TEntityCodeTable" resultMap="TEntityCodeTableResult">
+        <include refid="selectTEntityCodeTableVo"/>
+        <where>  
+            <if test="category != null  and category != ''"> and category = #{category}</if>
+            <if test="firstcode != null  and firstcode != ''"> and firstcode = #{firstcode}</if>
+            <if test="firstcodename != null  and firstcodename != ''"> and firstcodename like concat('%', #{firstcodename}, '%')</if>
+            <if test="twocode != null  and twocode != ''"> and twocode = #{twocode}</if>
+            <if test="twocodename != null  and twocodename != ''"> and twocodename like concat('%', #{twocodename}, '%')</if>
+            <if test="threecode != null  and threecode != ''"> and threecode = #{threecode}</if>
+            <if test="threecodename != null  and threecodename != ''"> and threecodename like concat('%', #{threecodename}, '%')</if>
+            <if test="fourcode != null  and fourcode != ''"> and fourcode = #{fourcode}</if>
+            <if test="fourcodename != null  and fourcodename != ''"> and fourcodename like concat('%', #{fourcodename}, '%')</if>
+            <if test="featurecode != null  and featurecode != ''"> and featurecode = #{featurecode}</if>
+            <if test="entilayer != null  and entilayer != ''"> and entilayer = #{entilayer}</if>
+            <if test="entilaytype != null  and entilaytype != ''"> and entilaytype = #{entilaytype}</if>
+        </where>
+    </select>
+    
+    <select id="selectTEntityCodeTableById" parameterType="String" resultMap="TEntityCodeTableResult">
+        <include refid="selectTEntityCodeTableVo"/>
+        where id = #{id}
+    </select>
+
+    <insert id="insertTEntityCodeTable" parameterType="TEntityCodeTable">
+        insert into t_entity_code_table
+        <trim prefix="(" suffix=")" suffixOverrides=",">
+            <if test="id != null">id,</if>
+            <if test="category != null">category,</if>
+            <if test="firstcode != null">firstcode,</if>
+            <if test="firstcodename != null">firstcodename,</if>
+            <if test="twocode != null">twocode,</if>
+            <if test="twocodename != null">twocodename,</if>
+            <if test="threecode != null">threecode,</if>
+            <if test="threecodename != null">threecodename,</if>
+            <if test="fourcode != null">fourcode,</if>
+            <if test="fourcodename != null">fourcodename,</if>
+            <if test="featurecode != null">featurecode,</if>
+            <if test="entilayer != null">entilayer,</if>
+            <if test="entilaytype != null">entilaytype,</if>
+         </trim>
+        <trim prefix="values (" suffix=")" suffixOverrides=",">
+            <if test="id != null">#{id},</if>
+            <if test="category != null">#{category},</if>
+            <if test="firstcode != null">#{firstcode},</if>
+            <if test="firstcodename != null">#{firstcodename},</if>
+            <if test="twocode != null">#{twocode},</if>
+            <if test="twocodename != null">#{twocodename},</if>
+            <if test="threecode != null">#{threecode},</if>
+            <if test="threecodename != null">#{threecodename},</if>
+            <if test="fourcode != null">#{fourcode},</if>
+            <if test="fourcodename != null">#{fourcodename},</if>
+            <if test="featurecode != null">#{featurecode},</if>
+            <if test="entilayer != null">#{entilayer},</if>
+            <if test="entilaytype != null">#{entilaytype},</if>
+         </trim>
+    </insert>
+
+    <update id="updateTEntityCodeTable" parameterType="TEntityCodeTable">
+        update t_entity_code_table
+        <trim prefix="SET" suffixOverrides=",">
+            <if test="category != null">category = #{category},</if>
+            <if test="firstcode != null">firstcode = #{firstcode},</if>
+            <if test="firstcodename != null">firstcodename = #{firstcodename},</if>
+            <if test="twocode != null">twocode = #{twocode},</if>
+            <if test="twocodename != null">twocodename = #{twocodename},</if>
+            <if test="threecode != null">threecode = #{threecode},</if>
+            <if test="threecodename != null">threecodename = #{threecodename},</if>
+            <if test="fourcode != null">fourcode = #{fourcode},</if>
+            <if test="fourcodename != null">fourcodename = #{fourcodename},</if>
+            <if test="featurecode != null">featurecode = #{featurecode},</if>
+            <if test="entilayer != null">entilayer = #{entilayer},</if>
+            <if test="entilaytype != null">entilaytype = #{entilaytype},</if>
+        </trim>
+        where id = #{id}
+    </update>
+
+    <delete id="deleteTEntityCodeTableById" parameterType="String">
+        delete from t_entity_code_table where id = #{id}
+    </delete>
+
+    <delete id="deleteTEntityCodeTableByIds" parameterType="String">
+        delete from t_entity_code_table where id in 
+        <foreach item="id" collection="array" open="(" separator="," close=")">
+            #{id}
+        </foreach>
+    </delete>
+</mapper>

+ 105 - 0
onemap-modules/onemap-system/src/main/java/com/onemap/system/controller/TEntityCodeAttributeController.java

@@ -0,0 +1,105 @@
+package com.onemap.system.controller;
+
+import java.util.List;
+import javax.servlet.http.HttpServletResponse;
+
+import com.onemap.common.core.utils.poi.ExcelUtil;
+import com.onemap.common.core.web.controller.BaseController;
+import com.onemap.common.core.web.domain.AjaxResult;
+import com.onemap.common.core.web.page.TableDataInfo;
+import com.onemap.common.log.annotation.Log;
+import com.onemap.common.log.enums.BusinessType;
+import com.onemap.common.security.annotation.RequiresPermissions;
+import com.onemap.system.domain.TEntityCodeAttribute;
+import com.onemap.system.service.ITEntityCodeAttributeService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.PutMapping;
+import org.springframework.web.bind.annotation.DeleteMapping;
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * 实体元素表Controller
+ * 
+ * @author zhx
+ * @date 2024-12-27
+ */
+@RestController
+@RequestMapping("/dimentity/code/attribute")
+public class TEntityCodeAttributeController extends BaseController
+{
+    @Autowired
+    private ITEntityCodeAttributeService tEntityCodeAttributeService;
+
+    /**
+     * 查询实体元素表列表
+     */
+    @RequiresPermissions("@ss.hasPermi('dimentity:code:attribute:list')")
+    @GetMapping("/list")
+    public TableDataInfo list(TEntityCodeAttribute tEntityCodeAttribute)
+    {
+        startPage();
+        List<TEntityCodeAttribute> list = tEntityCodeAttributeService.selectTEntityCodeAttributeList(tEntityCodeAttribute);
+        return getDataTable(list);
+    }
+
+    /**
+     * 导出实体元素表列表
+     */
+    @RequiresPermissions("@ss.hasPermi('dimentity:code:attribute:export')")
+    @Log(title = "实体元素表", businessType = BusinessType.EXPORT)
+    @PostMapping("/export")
+    public void export(HttpServletResponse response, TEntityCodeAttribute tEntityCodeAttribute)
+    {
+        List<TEntityCodeAttribute> list = tEntityCodeAttributeService.selectTEntityCodeAttributeList(tEntityCodeAttribute);
+        ExcelUtil<TEntityCodeAttribute> util = new ExcelUtil<TEntityCodeAttribute>(TEntityCodeAttribute.class);
+        util.exportExcel(response, list, "实体元素表数据");
+    }
+
+    /**
+     * 获取实体元素表详细信息
+     */
+    @RequiresPermissions("@ss.hasPermi('dimentity:code:attribute:query')")
+    @GetMapping(value = "/{id}")
+    public AjaxResult getInfo(@PathVariable("id") String id)
+    {
+        return success(tEntityCodeAttributeService.selectTEntityCodeAttributeById(id));
+    }
+
+    /**
+     * 新增实体元素表
+     */
+    @RequiresPermissions("@ss.hasPermi('dimentity:code:attribute:add')")
+    @Log(title = "实体元素表", businessType = BusinessType.INSERT)
+    @PostMapping
+    public AjaxResult add(@RequestBody TEntityCodeAttribute tEntityCodeAttribute)
+    {
+        return toAjax(tEntityCodeAttributeService.insertTEntityCodeAttribute(tEntityCodeAttribute));
+    }
+
+    /**
+     * 修改实体元素表
+     */
+    @RequiresPermissions("@ss.hasPermi('dimentity:code:attribute:edit')")
+    @Log(title = "实体元素表", businessType = BusinessType.UPDATE)
+    @PutMapping
+    public AjaxResult edit(@RequestBody TEntityCodeAttribute tEntityCodeAttribute)
+    {
+        return toAjax(tEntityCodeAttributeService.updateTEntityCodeAttribute(tEntityCodeAttribute));
+    }
+
+    /**
+     * 删除实体元素表
+     */
+    @RequiresPermissions("@ss.hasPermi('dimentity:code:attribute:remove')")
+    @Log(title = "实体元素表", businessType = BusinessType.DELETE)
+	@DeleteMapping("/{ids}")
+    public AjaxResult remove(@PathVariable String[] ids)
+    {
+        return toAjax(tEntityCodeAttributeService.deleteTEntityCodeAttributeByIds(ids));
+    }
+}

+ 98 - 0
onemap-modules/onemap-system/src/main/java/com/onemap/system/controller/TEntityCodeTableController.java

@@ -0,0 +1,98 @@
+package com.onemap.system.controller;
+
+import java.util.List;
+import javax.servlet.http.HttpServletResponse;
+
+import com.onemap.common.core.utils.poi.ExcelUtil;
+import com.onemap.common.core.web.controller.BaseController;
+import com.onemap.common.core.web.domain.AjaxResult;
+import com.onemap.common.core.web.page.TableDataInfo;
+import com.onemap.common.log.annotation.Log;
+import com.onemap.common.log.enums.BusinessType;
+import com.onemap.common.security.annotation.RequiresPermissions;
+import com.onemap.system.domain.TEntityCodeTable;
+import com.onemap.system.service.ITEntityCodeTableService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.PutMapping;
+import org.springframework.web.bind.annotation.DeleteMapping;
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * 实体编码表Controller
+ *
+ * @author zhx
+ * @date 2024-12-27
+ */
+@RestController
+@RequestMapping("/dimentity/code/table")
+public class TEntityCodeTableController extends BaseController {
+    @Autowired
+    private ITEntityCodeTableService tEntityCodeTableService;
+
+    /**
+     * 查询实体编码表列表
+     */
+    @RequiresPermissions("@ss.hasPermi('dimentity:code:table:list')")
+    @GetMapping("/list")
+    public TableDataInfo list(TEntityCodeTable tEntityCodeTable) {
+        startPage();
+        List<TEntityCodeTable> list = tEntityCodeTableService.selectTEntityCodeTableList(tEntityCodeTable);
+        return getDataTable(list);
+    }
+
+    /**
+     * 导出实体编码表列表
+     */
+    @RequiresPermissions("@ss.hasPermi('dimentity:code:table:export')")
+    @Log(title = "实体编码表", businessType = BusinessType.EXPORT)
+    @PostMapping("/export")
+    public void export(HttpServletResponse response, TEntityCodeTable tEntityCodeTable) {
+        List<TEntityCodeTable> list = tEntityCodeTableService.selectTEntityCodeTableList(tEntityCodeTable);
+        ExcelUtil<TEntityCodeTable> util = new ExcelUtil<TEntityCodeTable>(TEntityCodeTable.class);
+        util.exportExcel(response, list, "实体编码表数据");
+    }
+
+    /**
+     * 获取实体编码表详细信息
+     */
+    @RequiresPermissions("@ss.hasPermi('dimentity:code:table:query')")
+    @GetMapping(value = "/{id}")
+    public AjaxResult getInfo(@PathVariable("id") String id) {
+        return success(tEntityCodeTableService.selectTEntityCodeTableById(id));
+    }
+
+    /**
+     * 新增实体编码表
+     */
+    @RequiresPermissions("@ss.hasPermi('dimentity:code:table:add')")
+    @Log(title = "实体编码表", businessType = BusinessType.INSERT)
+    @PostMapping
+    public AjaxResult add(@RequestBody TEntityCodeTable tEntityCodeTable) {
+        return toAjax(tEntityCodeTableService.insertTEntityCodeTable(tEntityCodeTable));
+    }
+
+    /**
+     * 修改实体编码表
+     */
+    @RequiresPermissions("@ss.hasPermi('dimentity:code:table:edit')")
+    @Log(title = "实体编码表", businessType = BusinessType.UPDATE)
+    @PutMapping
+    public AjaxResult edit(@RequestBody TEntityCodeTable tEntityCodeTable) {
+        return toAjax(tEntityCodeTableService.updateTEntityCodeTable(tEntityCodeTable));
+    }
+
+    /**
+     * 删除实体编码表
+     */
+    @RequiresPermissions("@ss.hasPermi('dimentity:code:table:remove')")
+    @Log(title = "实体编码表", businessType = BusinessType.DELETE)
+    @DeleteMapping("/{ids}")
+    public AjaxResult remove(@PathVariable String[] ids) {
+        return toAjax(tEntityCodeTableService.deleteTEntityCodeTableByIds(ids));
+    }
+}

+ 191 - 0
onemap-modules/onemap-system/src/main/java/com/onemap/system/domain/TEntityCodeAttribute.java

@@ -0,0 +1,191 @@
+package com.onemap.system.domain;
+
+import com.onemap.common.core.annotation.Excel;
+import com.onemap.common.core.web.domain.BaseEntity;
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+
+/**
+ * 实体元素表对象 t_entity_code_attribute
+ * 
+ * @author zhx
+ * @date 2024-12-27
+ */
+public class TEntityCodeAttribute extends BaseEntity
+{
+    private static final long serialVersionUID = 1L;
+
+    /** id */
+    private String id;
+
+    /** 实体分类码 */
+    @Excel(name = "实体分类码")
+    private String twocode;
+
+    /** 实体分类名 */
+    @Excel(name = "实体分类名")
+    private String twocodename;
+
+    /** 实体图层 */
+    @Excel(name = "实体图层")
+    private String entilayer;
+
+    /** 属性项名称 */
+    @Excel(name = "属性项名称")
+    private String attribute;
+
+    /** 属性项中文简称 */
+    @Excel(name = "属性项中文简称")
+    private String attributezh;
+
+    /** 字段类型 */
+    @Excel(name = "字段类型")
+    private String fieldtype;
+
+    /** 约束条件 */
+    @Excel(name = "约束条件")
+    private String constraints;
+
+    /** 长度 */
+    @Excel(name = "长度")
+    private String length;
+
+    /** 值域或示例 */
+    @Excel(name = "值域或示例")
+    private String examples;
+
+    /** 备注 */
+    @Excel(name = "备注")
+    private String remarks;
+
+    /** 排序 */
+    @Excel(name = "排序")
+    private Integer sort;
+
+    public void setId(String id) 
+    {
+        this.id = id;
+    }
+
+    public String getId() 
+    {
+        return id;
+    }
+    public void setTwocode(String twocode) 
+    {
+        this.twocode = twocode;
+    }
+
+    public String getTwocode() 
+    {
+        return twocode;
+    }
+    public void setTwocodename(String twocodename) 
+    {
+        this.twocodename = twocodename;
+    }
+
+    public String getTwocodename() 
+    {
+        return twocodename;
+    }
+    public void setEntilayer(String entilayer) 
+    {
+        this.entilayer = entilayer;
+    }
+
+    public String getEntilayer() 
+    {
+        return entilayer;
+    }
+    public void setAttribute(String attribute) 
+    {
+        this.attribute = attribute;
+    }
+
+    public String getAttribute() 
+    {
+        return attribute;
+    }
+    public void setAttributezh(String attributezh) 
+    {
+        this.attributezh = attributezh;
+    }
+
+    public String getAttributezh() 
+    {
+        return attributezh;
+    }
+    public void setFieldtype(String fieldtype) 
+    {
+        this.fieldtype = fieldtype;
+    }
+
+    public String getFieldtype() 
+    {
+        return fieldtype;
+    }
+    public void setConstraints(String constraints) 
+    {
+        this.constraints = constraints;
+    }
+
+    public String getConstraints() 
+    {
+        return constraints;
+    }
+    public void setLength(String length) 
+    {
+        this.length = length;
+    }
+
+    public String getLength() 
+    {
+        return length;
+    }
+    public void setExamples(String examples) 
+    {
+        this.examples = examples;
+    }
+
+    public String getExamples() 
+    {
+        return examples;
+    }
+    public void setRemarks(String remarks) 
+    {
+        this.remarks = remarks;
+    }
+
+    public String getRemarks() 
+    {
+        return remarks;
+    }
+    public void setSort(Integer sort) 
+    {
+        this.sort = sort;
+    }
+
+    public Integer getSort() 
+    {
+        return sort;
+    }
+
+    @Override
+    public String toString() {
+        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
+            .append("id", getId())
+            .append("twocode", getTwocode())
+            .append("twocodename", getTwocodename())
+            .append("entilayer", getEntilayer())
+            .append("attribute", getAttribute())
+            .append("attributezh", getAttributezh())
+            .append("fieldtype", getFieldtype())
+            .append("constraints", getConstraints())
+            .append("length", getLength())
+            .append("examples", getExamples())
+            .append("remarks", getRemarks())
+            .append("sort", getSort())
+            .toString();
+    }
+}

+ 205 - 0
onemap-modules/onemap-system/src/main/java/com/onemap/system/domain/TEntityCodeTable.java

@@ -0,0 +1,205 @@
+package com.onemap.system.domain;
+
+import com.onemap.common.core.annotation.Excel;
+import com.onemap.common.core.web.domain.BaseEntity;
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+
+/**
+ * 实体编码表对象 t_entity_code_table
+ * 
+ * @author zhx
+ * @date 2024-12-27
+ */
+public class TEntityCodeTable extends BaseEntity
+{
+    private static final long serialVersionUID = 1L;
+
+    /** id */
+    private String id;
+
+    /** 实体门类 */
+    @Excel(name = "实体门类")
+    private String category;
+
+    /** 一级分类码 */
+    @Excel(name = "一级分类码")
+    private String firstcode;
+
+    /** 一级分类名 */
+    @Excel(name = "一级分类名")
+    private String firstcodename;
+
+    /** 二级分类码 */
+    @Excel(name = "二级分类码")
+    private String twocode;
+
+    /** 二级分类名 */
+    @Excel(name = "二级分类名")
+    private String twocodename;
+
+    /** 三级分类码 */
+    @Excel(name = "三级分类码")
+    private String threecode;
+
+    /** 三级分类名 */
+    @Excel(name = "三级分类名")
+    private String threecodename;
+
+    /** 四级分类码 */
+    @Excel(name = "四级分类码")
+    private String fourcode;
+
+    /** 四级分类名 */
+    @Excel(name = "四级分类名")
+    private String fourcodename;
+
+    /** 图形特征码 */
+    @Excel(name = "图形特征码")
+    private String featurecode;
+
+    /** 实体图层 */
+    @Excel(name = "实体图层")
+    private String entilayer;
+
+    /** 实体类型 */
+    @Excel(name = "实体类型")
+    private String entilaytype;
+
+    public void setId(String id) 
+    {
+        this.id = id;
+    }
+
+    public String getId() 
+    {
+        return id;
+    }
+    public void setCategory(String category) 
+    {
+        this.category = category;
+    }
+
+    public String getCategory() 
+    {
+        return category;
+    }
+    public void setFirstcode(String firstcode) 
+    {
+        this.firstcode = firstcode;
+    }
+
+    public String getFirstcode() 
+    {
+        return firstcode;
+    }
+    public void setFirstcodename(String firstcodename) 
+    {
+        this.firstcodename = firstcodename;
+    }
+
+    public String getFirstcodename() 
+    {
+        return firstcodename;
+    }
+    public void setTwocode(String twocode) 
+    {
+        this.twocode = twocode;
+    }
+
+    public String getTwocode() 
+    {
+        return twocode;
+    }
+    public void setTwocodename(String twocodename) 
+    {
+        this.twocodename = twocodename;
+    }
+
+    public String getTwocodename() 
+    {
+        return twocodename;
+    }
+    public void setThreecode(String threecode) 
+    {
+        this.threecode = threecode;
+    }
+
+    public String getThreecode() 
+    {
+        return threecode;
+    }
+    public void setThreecodename(String threecodename) 
+    {
+        this.threecodename = threecodename;
+    }
+
+    public String getThreecodename() 
+    {
+        return threecodename;
+    }
+    public void setFourcode(String fourcode) 
+    {
+        this.fourcode = fourcode;
+    }
+
+    public String getFourcode() 
+    {
+        return fourcode;
+    }
+    public void setFourcodename(String fourcodename) 
+    {
+        this.fourcodename = fourcodename;
+    }
+
+    public String getFourcodename() 
+    {
+        return fourcodename;
+    }
+    public void setFeaturecode(String featurecode) 
+    {
+        this.featurecode = featurecode;
+    }
+
+    public String getFeaturecode() 
+    {
+        return featurecode;
+    }
+    public void setEntilayer(String entilayer) 
+    {
+        this.entilayer = entilayer;
+    }
+
+    public String getEntilayer() 
+    {
+        return entilayer;
+    }
+    public void setEntilaytype(String entilaytype) 
+    {
+        this.entilaytype = entilaytype;
+    }
+
+    public String getEntilaytype() 
+    {
+        return entilaytype;
+    }
+
+    @Override
+    public String toString() {
+        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
+            .append("id", getId())
+            .append("category", getCategory())
+            .append("firstcode", getFirstcode())
+            .append("firstcodename", getFirstcodename())
+            .append("twocode", getTwocode())
+            .append("twocodename", getTwocodename())
+            .append("threecode", getThreecode())
+            .append("threecodename", getThreecodename())
+            .append("fourcode", getFourcode())
+            .append("fourcodename", getFourcodename())
+            .append("featurecode", getFeaturecode())
+            .append("entilayer", getEntilayer())
+            .append("entilaytype", getEntilaytype())
+            .toString();
+    }
+}

+ 62 - 0
onemap-modules/onemap-system/src/main/java/com/onemap/system/mapper/TEntityCodeAttributeMapper.java

@@ -0,0 +1,62 @@
+package com.onemap.system.mapper;
+
+import com.onemap.system.domain.TEntityCodeAttribute;
+
+import java.util.List;
+
+/**
+ * 实体元素表Mapper接口
+ * 
+ * @author zhx
+ * @date 2024-12-27
+ */
+public interface TEntityCodeAttributeMapper 
+{
+    /**
+     * 查询实体元素表
+     * 
+     * @param id 实体元素表主键
+     * @return 实体元素表
+     */
+    public TEntityCodeAttribute selectTEntityCodeAttributeById(String id);
+
+    /**
+     * 查询实体元素表列表
+     * 
+     * @param tEntityCodeAttribute 实体元素表
+     * @return 实体元素表集合
+     */
+    public List<TEntityCodeAttribute> selectTEntityCodeAttributeList(TEntityCodeAttribute tEntityCodeAttribute);
+
+    /**
+     * 新增实体元素表
+     * 
+     * @param tEntityCodeAttribute 实体元素表
+     * @return 结果
+     */
+    public int insertTEntityCodeAttribute(TEntityCodeAttribute tEntityCodeAttribute);
+
+    /**
+     * 修改实体元素表
+     * 
+     * @param tEntityCodeAttribute 实体元素表
+     * @return 结果
+     */
+    public int updateTEntityCodeAttribute(TEntityCodeAttribute tEntityCodeAttribute);
+
+    /**
+     * 删除实体元素表
+     * 
+     * @param id 实体元素表主键
+     * @return 结果
+     */
+    public int deleteTEntityCodeAttributeById(String id);
+
+    /**
+     * 批量删除实体元素表
+     * 
+     * @param ids 需要删除的数据主键集合
+     * @return 结果
+     */
+    public int deleteTEntityCodeAttributeByIds(String[] ids);
+}

+ 61 - 0
onemap-modules/onemap-system/src/main/java/com/onemap/system/mapper/TEntityCodeTableMapper.java

@@ -0,0 +1,61 @@
+package com.onemap.system.mapper;
+
+import com.onemap.system.domain.TEntityCodeTable;
+
+import java.util.List;
+
+/**
+ * 实体编码表Mapper接口
+ *
+ * @author zhx
+ * &#064;date  2024-12-27
+ */
+public interface TEntityCodeTableMapper {
+    /**
+     * 查询实体编码表
+     *
+     * @param id 实体编码表主键
+     * @return 实体编码表
+     */
+    TEntityCodeTable selectTEntityCodeTableById(String id);
+
+    /**
+     * 查询实体编码表列表
+     *
+     * @param tEntityCodeTable 实体编码表
+     * @return 实体编码表集合
+     */
+    List<TEntityCodeTable> selectTEntityCodeTableList(TEntityCodeTable tEntityCodeTable);
+
+    /**
+     * 新增实体编码表
+     *
+     * @param tEntityCodeTable 实体编码表
+     * @return 结果
+     */
+    int insertTEntityCodeTable(TEntityCodeTable tEntityCodeTable);
+
+    /**
+     * 修改实体编码表
+     *
+     * @param tEntityCodeTable 实体编码表
+     * @return 结果
+     */
+    int updateTEntityCodeTable(TEntityCodeTable tEntityCodeTable);
+
+    /**
+     * 删除实体编码表
+     *
+     * @param id 实体编码表主键
+     * @return 结果
+     */
+    int deleteTEntityCodeTableById(String id);
+
+    /**
+     * 批量删除实体编码表
+     *
+     * @param ids 需要删除的数据主键集合
+     * @return 结果
+     */
+    int deleteTEntityCodeTableByIds(String[] ids);
+}

+ 62 - 0
onemap-modules/onemap-system/src/main/java/com/onemap/system/service/ITEntityCodeAttributeService.java

@@ -0,0 +1,62 @@
+package com.onemap.system.service;
+
+import com.onemap.system.domain.TEntityCodeAttribute;
+
+import java.util.List;
+
+/**
+ * 实体元素表Service接口
+ * 
+ * @author zhx
+ * @date 2024-12-27
+ */
+public interface ITEntityCodeAttributeService 
+{
+    /**
+     * 查询实体元素表
+     * 
+     * @param id 实体元素表主键
+     * @return 实体元素表
+     */
+    public TEntityCodeAttribute selectTEntityCodeAttributeById(String id);
+
+    /**
+     * 查询实体元素表列表
+     * 
+     * @param tEntityCodeAttribute 实体元素表
+     * @return 实体元素表集合
+     */
+    public List<TEntityCodeAttribute> selectTEntityCodeAttributeList(TEntityCodeAttribute tEntityCodeAttribute);
+
+    /**
+     * 新增实体元素表
+     * 
+     * @param tEntityCodeAttribute 实体元素表
+     * @return 结果
+     */
+    public int insertTEntityCodeAttribute(TEntityCodeAttribute tEntityCodeAttribute);
+
+    /**
+     * 修改实体元素表
+     * 
+     * @param tEntityCodeAttribute 实体元素表
+     * @return 结果
+     */
+    public int updateTEntityCodeAttribute(TEntityCodeAttribute tEntityCodeAttribute);
+
+    /**
+     * 批量删除实体元素表
+     * 
+     * @param ids 需要删除的实体元素表主键集合
+     * @return 结果
+     */
+    public int deleteTEntityCodeAttributeByIds(String[] ids);
+
+    /**
+     * 删除实体元素表信息
+     * 
+     * @param id 实体元素表主键
+     * @return 结果
+     */
+    public int deleteTEntityCodeAttributeById(String id);
+}

+ 62 - 0
onemap-modules/onemap-system/src/main/java/com/onemap/system/service/ITEntityCodeTableService.java

@@ -0,0 +1,62 @@
+package com.onemap.system.service;
+
+import com.onemap.system.domain.TEntityCodeTable;
+
+import java.util.List;
+
+/**
+ * 实体编码表Service接口
+ * 
+ * @author zhx
+ * @date 2024-12-27
+ */
+public interface ITEntityCodeTableService 
+{
+    /**
+     * 查询实体编码表
+     * 
+     * @param id 实体编码表主键
+     * @return 实体编码表
+     */
+    public TEntityCodeTable selectTEntityCodeTableById(String id);
+
+    /**
+     * 查询实体编码表列表
+     * 
+     * @param tEntityCodeTable 实体编码表
+     * @return 实体编码表集合
+     */
+    public List<TEntityCodeTable> selectTEntityCodeTableList(TEntityCodeTable tEntityCodeTable);
+
+    /**
+     * 新增实体编码表
+     * 
+     * @param tEntityCodeTable 实体编码表
+     * @return 结果
+     */
+    public int insertTEntityCodeTable(TEntityCodeTable tEntityCodeTable);
+
+    /**
+     * 修改实体编码表
+     * 
+     * @param tEntityCodeTable 实体编码表
+     * @return 结果
+     */
+    public int updateTEntityCodeTable(TEntityCodeTable tEntityCodeTable);
+
+    /**
+     * 批量删除实体编码表
+     * 
+     * @param ids 需要删除的实体编码表主键集合
+     * @return 结果
+     */
+    public int deleteTEntityCodeTableByIds(String[] ids);
+
+    /**
+     * 删除实体编码表信息
+     * 
+     * @param id 实体编码表主键
+     * @return 结果
+     */
+    public int deleteTEntityCodeTableById(String id);
+}

+ 94 - 0
onemap-modules/onemap-system/src/main/java/com/onemap/system/service/impl/TEntityCodeAttributeServiceImpl.java

@@ -0,0 +1,94 @@
+package com.onemap.system.service.impl;
+
+import java.util.List;
+
+import com.onemap.system.domain.TEntityCodeAttribute;
+import com.onemap.system.mapper.TEntityCodeAttributeMapper;
+import com.onemap.system.service.ITEntityCodeAttributeService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+/**
+ * 实体元素表Service业务层处理
+ * 
+ * @author zhx
+ * @date 2024-12-27
+ */
+@Service
+public class TEntityCodeAttributeServiceImpl implements ITEntityCodeAttributeService
+{
+    @Autowired
+    private TEntityCodeAttributeMapper tEntityCodeAttributeMapper;
+
+    /**
+     * 查询实体元素表
+     * 
+     * @param id 实体元素表主键
+     * @return 实体元素表
+     */
+    @Override
+    public TEntityCodeAttribute selectTEntityCodeAttributeById(String id)
+    {
+        return tEntityCodeAttributeMapper.selectTEntityCodeAttributeById(id);
+    }
+
+    /**
+     * 查询实体元素表列表
+     * 
+     * @param tEntityCodeAttribute 实体元素表
+     * @return 实体元素表
+     */
+    @Override
+    public List<TEntityCodeAttribute> selectTEntityCodeAttributeList(TEntityCodeAttribute tEntityCodeAttribute)
+    {
+        return tEntityCodeAttributeMapper.selectTEntityCodeAttributeList(tEntityCodeAttribute);
+    }
+
+    /**
+     * 新增实体元素表
+     * 
+     * @param tEntityCodeAttribute 实体元素表
+     * @return 结果
+     */
+    @Override
+    public int insertTEntityCodeAttribute(TEntityCodeAttribute tEntityCodeAttribute)
+    {
+        return tEntityCodeAttributeMapper.insertTEntityCodeAttribute(tEntityCodeAttribute);
+    }
+
+    /**
+     * 修改实体元素表
+     * 
+     * @param tEntityCodeAttribute 实体元素表
+     * @return 结果
+     */
+    @Override
+    public int updateTEntityCodeAttribute(TEntityCodeAttribute tEntityCodeAttribute)
+    {
+        return tEntityCodeAttributeMapper.updateTEntityCodeAttribute(tEntityCodeAttribute);
+    }
+
+    /**
+     * 批量删除实体元素表
+     * 
+     * @param ids 需要删除的实体元素表主键
+     * @return 结果
+     */
+    @Override
+    public int deleteTEntityCodeAttributeByIds(String[] ids)
+    {
+        return tEntityCodeAttributeMapper.deleteTEntityCodeAttributeByIds(ids);
+    }
+
+    /**
+     * 删除实体元素表信息
+     * 
+     * @param id 实体元素表主键
+     * @return 结果
+     */
+    @Override
+    public int deleteTEntityCodeAttributeById(String id)
+    {
+        return tEntityCodeAttributeMapper.deleteTEntityCodeAttributeById(id);
+    }
+}

+ 94 - 0
onemap-modules/onemap-system/src/main/java/com/onemap/system/service/impl/TEntityCodeTableServiceImpl.java

@@ -0,0 +1,94 @@
+package com.onemap.system.service.impl;
+
+import java.util.List;
+
+import com.onemap.system.domain.TEntityCodeTable;
+import com.onemap.system.mapper.TEntityCodeTableMapper;
+import com.onemap.system.service.ITEntityCodeTableService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+/**
+ * 实体编码表Service业务层处理
+ * 
+ * @author zhx
+ * @date 2024-12-27
+ */
+@Service
+public class TEntityCodeTableServiceImpl implements ITEntityCodeTableService
+{
+    @Autowired
+    private TEntityCodeTableMapper tEntityCodeTableMapper;
+
+    /**
+     * 查询实体编码表
+     * 
+     * @param id 实体编码表主键
+     * @return 实体编码表
+     */
+    @Override
+    public TEntityCodeTable selectTEntityCodeTableById(String id)
+    {
+        return tEntityCodeTableMapper.selectTEntityCodeTableById(id);
+    }
+
+    /**
+     * 查询实体编码表列表
+     * 
+     * @param tEntityCodeTable 实体编码表
+     * @return 实体编码表
+     */
+    @Override
+    public List<TEntityCodeTable> selectTEntityCodeTableList(TEntityCodeTable tEntityCodeTable)
+    {
+        return tEntityCodeTableMapper.selectTEntityCodeTableList(tEntityCodeTable);
+    }
+
+    /**
+     * 新增实体编码表
+     * 
+     * @param tEntityCodeTable 实体编码表
+     * @return 结果
+     */
+    @Override
+    public int insertTEntityCodeTable(TEntityCodeTable tEntityCodeTable)
+    {
+        return tEntityCodeTableMapper.insertTEntityCodeTable(tEntityCodeTable);
+    }
+
+    /**
+     * 修改实体编码表
+     * 
+     * @param tEntityCodeTable 实体编码表
+     * @return 结果
+     */
+    @Override
+    public int updateTEntityCodeTable(TEntityCodeTable tEntityCodeTable)
+    {
+        return tEntityCodeTableMapper.updateTEntityCodeTable(tEntityCodeTable);
+    }
+
+    /**
+     * 批量删除实体编码表
+     * 
+     * @param ids 需要删除的实体编码表主键
+     * @return 结果
+     */
+    @Override
+    public int deleteTEntityCodeTableByIds(String[] ids)
+    {
+        return tEntityCodeTableMapper.deleteTEntityCodeTableByIds(ids);
+    }
+
+    /**
+     * 删除实体编码表信息
+     * 
+     * @param id 实体编码表主键
+     * @return 结果
+     */
+    @Override
+    public int deleteTEntityCodeTableById(String id)
+    {
+        return tEntityCodeTableMapper.deleteTEntityCodeTableById(id);
+    }
+}

+ 108 - 0
onemap-modules/onemap-system/src/main/resources/mapper/postgresql/system/TEntityCodeAttributeMapper.xml

@@ -0,0 +1,108 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper
+PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.onemap.system.mapper.TEntityCodeAttributeMapper">
+    
+    <resultMap type="TEntityCodeAttribute" id="TEntityCodeAttributeResult">
+        <result property="id"    column="id"    />
+        <result property="twocode"    column="twocode"    />
+        <result property="twocodename"    column="twocodename"    />
+        <result property="entilayer"    column="entilayer"    />
+        <result property="attribute"    column="attribute"    />
+        <result property="attributezh"    column="attributezh"    />
+        <result property="fieldtype"    column="fieldtype"    />
+        <result property="constraints"    column="constraints"    />
+        <result property="length"    column="length"    />
+        <result property="examples"    column="examples"    />
+        <result property="remarks"    column="remarks"    />
+        <result property="sort"    column="sort"    />
+    </resultMap>
+
+    <sql id="selectTEntityCodeAttributeVo">
+        select id, twocode, twocodename, entilayer, attribute, attributezh, fieldtype, constraints, length, examples, remarks, sort from t_entity_code_attribute
+    </sql>
+
+    <select id="selectTEntityCodeAttributeList" parameterType="TEntityCodeAttribute" resultMap="TEntityCodeAttributeResult">
+        <include refid="selectTEntityCodeAttributeVo"/>
+        <where>  
+            <if test="twocode != null  and twocode != ''"> and twocode = #{twocode}</if>
+            <if test="twocodename != null  and twocodename != ''"> and twocodename like concat('%', #{twocodename}, '%')</if>
+            <if test="entilayer != null  and entilayer != ''"> and entilayer = #{entilayer}</if>
+            <if test="attribute != null  and attribute != ''"> and attribute like concat('%', #{attribute}, '%')</if>
+            <if test="attributezh != null  and attributezh != ''"> and attributezh like concat('%', #{attributezh}, '%')</if>
+            <if test="fieldtype != null  and fieldtype != ''"> and fieldtype = #{fieldtype}</if>
+            <if test="constraints != null  and constraints != ''"> and constraints = #{constraints}</if>
+            <if test="length != null  and length != ''"> and length = #{length}</if>
+            <if test="examples != null  and examples != ''"> and examples = #{examples}</if>
+            <if test="remarks != null  and remarks != ''"> and remarks = #{remarks}</if>
+            <if test="sort != null "> and sort = #{sort}</if>
+        </where>
+    </select>
+    
+    <select id="selectTEntityCodeAttributeById" parameterType="String" resultMap="TEntityCodeAttributeResult">
+        <include refid="selectTEntityCodeAttributeVo"/>
+        where id = #{id}
+    </select>
+
+    <insert id="insertTEntityCodeAttribute" parameterType="TEntityCodeAttribute">
+        insert into t_entity_code_attribute
+        <trim prefix="(" suffix=")" suffixOverrides=",">
+            <if test="id != null">id,</if>
+            <if test="twocode != null and twocode != ''">twocode,</if>
+            <if test="twocodename != null and twocodename != ''">twocodename,</if>
+            <if test="entilayer != null and entilayer != ''">entilayer,</if>
+            <if test="attribute != null and attribute != ''">attribute,</if>
+            <if test="attributezh != null and attributezh != ''">attributezh,</if>
+            <if test="fieldtype != null">fieldtype,</if>
+            <if test="constraints != null">constraints,</if>
+            <if test="length != null">length,</if>
+            <if test="examples != null">examples,</if>
+            <if test="remarks != null">remarks,</if>
+            <if test="sort != null">sort,</if>
+         </trim>
+        <trim prefix="values (" suffix=")" suffixOverrides=",">
+            <if test="id != null">#{id},</if>
+            <if test="twocode != null and twocode != ''">#{twocode},</if>
+            <if test="twocodename != null and twocodename != ''">#{twocodename},</if>
+            <if test="entilayer != null and entilayer != ''">#{entilayer},</if>
+            <if test="attribute != null and attribute != ''">#{attribute},</if>
+            <if test="attributezh != null and attributezh != ''">#{attributezh},</if>
+            <if test="fieldtype != null">#{fieldtype},</if>
+            <if test="constraints != null">#{constraints},</if>
+            <if test="length != null">#{length},</if>
+            <if test="examples != null">#{examples},</if>
+            <if test="remarks != null">#{remarks},</if>
+            <if test="sort != null">#{sort},</if>
+         </trim>
+    </insert>
+
+    <update id="updateTEntityCodeAttribute" parameterType="TEntityCodeAttribute">
+        update t_entity_code_attribute
+        <trim prefix="SET" suffixOverrides=",">
+            <if test="twocode != null and twocode != ''">twocode = #{twocode},</if>
+            <if test="twocodename != null and twocodename != ''">twocodename = #{twocodename},</if>
+            <if test="entilayer != null and entilayer != ''">entilayer = #{entilayer},</if>
+            <if test="attribute != null and attribute != ''">attribute = #{attribute},</if>
+            <if test="attributezh != null and attributezh != ''">attributezh = #{attributezh},</if>
+            <if test="fieldtype != null">fieldtype = #{fieldtype},</if>
+            <if test="constraints != null">constraints = #{constraints},</if>
+            <if test="length != null">length = #{length},</if>
+            <if test="examples != null">examples = #{examples},</if>
+            <if test="remarks != null">remarks = #{remarks},</if>
+            <if test="sort != null">sort = #{sort},</if>
+        </trim>
+        where id = #{id}
+    </update>
+
+    <delete id="deleteTEntityCodeAttributeById" parameterType="String">
+        delete from t_entity_code_attribute where id = #{id}
+    </delete>
+
+    <delete id="deleteTEntityCodeAttributeByIds" parameterType="String">
+        delete from t_entity_code_attribute where id in 
+        <foreach item="id" collection="array" open="(" separator="," close=")">
+            #{id}
+        </foreach>
+    </delete>
+</mapper>

+ 113 - 0
onemap-modules/onemap-system/src/main/resources/mapper/postgresql/system/TEntityCodeTableMapper.xml

@@ -0,0 +1,113 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper
+PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.onemap.system.mapper.TEntityCodeTableMapper">
+    
+    <resultMap type="TEntityCodeTable" id="TEntityCodeTableResult">
+        <result property="id"    column="id"    />
+        <result property="category"    column="category"    />
+        <result property="firstcode"    column="firstcode"    />
+        <result property="firstcodename"    column="firstcodename"    />
+        <result property="twocode"    column="twocode"    />
+        <result property="twocodename"    column="twocodename"    />
+        <result property="threecode"    column="threecode"    />
+        <result property="threecodename"    column="threecodename"    />
+        <result property="fourcode"    column="fourcode"    />
+        <result property="fourcodename"    column="fourcodename"    />
+        <result property="featurecode"    column="featurecode"    />
+        <result property="entilayer"    column="entilayer"    />
+        <result property="entilaytype"    column="entilaytype"    />
+    </resultMap>
+
+    <sql id="selectTEntityCodeTableVo">
+        select id, category, firstcode, firstcodename, twocode, twocodename, threecode, threecodename, fourcode, fourcodename, featurecode, entilayer, entilaytype from t_entity_code_table
+    </sql>
+
+    <select id="selectTEntityCodeTableList" parameterType="TEntityCodeTable" resultMap="TEntityCodeTableResult">
+        <include refid="selectTEntityCodeTableVo"/>
+        <where>  
+            <if test="category != null  and category != ''"> and category = #{category}</if>
+            <if test="firstcode != null  and firstcode != ''"> and firstcode = #{firstcode}</if>
+            <if test="firstcodename != null  and firstcodename != ''"> and firstcodename like concat('%', #{firstcodename}, '%')</if>
+            <if test="twocode != null  and twocode != ''"> and twocode = #{twocode}</if>
+            <if test="twocodename != null  and twocodename != ''"> and twocodename like concat('%', #{twocodename}, '%')</if>
+            <if test="threecode != null  and threecode != ''"> and threecode = #{threecode}</if>
+            <if test="threecodename != null  and threecodename != ''"> and threecodename like concat('%', #{threecodename}, '%')</if>
+            <if test="fourcode != null  and fourcode != ''"> and fourcode = #{fourcode}</if>
+            <if test="fourcodename != null  and fourcodename != ''"> and fourcodename like concat('%', #{fourcodename}, '%')</if>
+            <if test="featurecode != null  and featurecode != ''"> and featurecode = #{featurecode}</if>
+            <if test="entilayer != null  and entilayer != ''"> and entilayer = #{entilayer}</if>
+            <if test="entilaytype != null  and entilaytype != ''"> and entilaytype = #{entilaytype}</if>
+        </where>
+    </select>
+    
+    <select id="selectTEntityCodeTableById" parameterType="String" resultMap="TEntityCodeTableResult">
+        <include refid="selectTEntityCodeTableVo"/>
+        where id = #{id}
+    </select>
+
+    <insert id="insertTEntityCodeTable" parameterType="TEntityCodeTable">
+        insert into t_entity_code_table
+        <trim prefix="(" suffix=")" suffixOverrides=",">
+            <if test="id != null">id,</if>
+            <if test="category != null">category,</if>
+            <if test="firstcode != null">firstcode,</if>
+            <if test="firstcodename != null">firstcodename,</if>
+            <if test="twocode != null">twocode,</if>
+            <if test="twocodename != null">twocodename,</if>
+            <if test="threecode != null">threecode,</if>
+            <if test="threecodename != null">threecodename,</if>
+            <if test="fourcode != null">fourcode,</if>
+            <if test="fourcodename != null">fourcodename,</if>
+            <if test="featurecode != null">featurecode,</if>
+            <if test="entilayer != null">entilayer,</if>
+            <if test="entilaytype != null">entilaytype,</if>
+         </trim>
+        <trim prefix="values (" suffix=")" suffixOverrides=",">
+            <if test="id != null">#{id},</if>
+            <if test="category != null">#{category},</if>
+            <if test="firstcode != null">#{firstcode},</if>
+            <if test="firstcodename != null">#{firstcodename},</if>
+            <if test="twocode != null">#{twocode},</if>
+            <if test="twocodename != null">#{twocodename},</if>
+            <if test="threecode != null">#{threecode},</if>
+            <if test="threecodename != null">#{threecodename},</if>
+            <if test="fourcode != null">#{fourcode},</if>
+            <if test="fourcodename != null">#{fourcodename},</if>
+            <if test="featurecode != null">#{featurecode},</if>
+            <if test="entilayer != null">#{entilayer},</if>
+            <if test="entilaytype != null">#{entilaytype},</if>
+         </trim>
+    </insert>
+
+    <update id="updateTEntityCodeTable" parameterType="TEntityCodeTable">
+        update t_entity_code_table
+        <trim prefix="SET" suffixOverrides=",">
+            <if test="category != null">category = #{category},</if>
+            <if test="firstcode != null">firstcode = #{firstcode},</if>
+            <if test="firstcodename != null">firstcodename = #{firstcodename},</if>
+            <if test="twocode != null">twocode = #{twocode},</if>
+            <if test="twocodename != null">twocodename = #{twocodename},</if>
+            <if test="threecode != null">threecode = #{threecode},</if>
+            <if test="threecodename != null">threecodename = #{threecodename},</if>
+            <if test="fourcode != null">fourcode = #{fourcode},</if>
+            <if test="fourcodename != null">fourcodename = #{fourcodename},</if>
+            <if test="featurecode != null">featurecode = #{featurecode},</if>
+            <if test="entilayer != null">entilayer = #{entilayer},</if>
+            <if test="entilaytype != null">entilaytype = #{entilaytype},</if>
+        </trim>
+        where id = #{id}
+    </update>
+
+    <delete id="deleteTEntityCodeTableById" parameterType="String">
+        delete from t_entity_code_table where id = #{id}
+    </delete>
+
+    <delete id="deleteTEntityCodeTableByIds" parameterType="String">
+        delete from t_entity_code_table where id in 
+        <foreach item="id" collection="array" open="(" separator="," close=")">
+            #{id}
+        </foreach>
+    </delete>
+</mapper>