From 2a7de6868026a712033955ec0d6a1150f5bf4010 Mon Sep 17 00:00:00 2001 From: vran Date: Tue, 17 May 2022 16:47:45 +0800 Subject: [PATCH] fix: trigger diff failed --- .../document/converter/DatabaseMetaConverter.java | 8 ++++---- .../meta/provider/jdbc/JdbcIndexMetaProvider.java | 13 ++++++++----- 2 files changed, 12 insertions(+), 9 deletions(-) diff --git a/core/src/main/java/com/databasir/core/domain/document/converter/DatabaseMetaConverter.java b/core/src/main/java/com/databasir/core/domain/document/converter/DatabaseMetaConverter.java index 220dc7b..b693874 100644 --- a/core/src/main/java/com/databasir/core/domain/document/converter/DatabaseMetaConverter.java +++ b/core/src/main/java/com/databasir/core/domain/document/converter/DatabaseMetaConverter.java @@ -2,10 +2,7 @@ package com.databasir.core.domain.document.converter; import com.databasir.core.domain.document.data.TableDocumentResponse; import com.databasir.core.infrastructure.converter.JsonConverter; -import com.databasir.core.meta.data.ColumnMeta; -import com.databasir.core.meta.data.DatabaseMeta; -import com.databasir.core.meta.data.IndexMeta; -import com.databasir.core.meta.data.TableMeta; +import com.databasir.core.meta.data.*; import com.databasir.dao.tables.pojos.*; import org.mapstruct.Mapper; import org.mapstruct.Mapping; @@ -65,6 +62,9 @@ public interface DatabaseMetaConverter { @Mapping(target = "columnNames", source = "pojo.columnNameArray") IndexMeta of(TableIndexDocumentPojo pojo); + @Mapping(target = "createAt", source = "pojo.triggerCreateAt") + TriggerMeta of(TableTriggerDocumentPojo pojo); + List of(List table); TableMeta of(TableDocumentResponse table); diff --git a/meta/src/main/java/com/databasir/core/meta/provider/jdbc/JdbcIndexMetaProvider.java b/meta/src/main/java/com/databasir/core/meta/provider/jdbc/JdbcIndexMetaProvider.java index 3a8ddf5..e61326b 100644 --- a/meta/src/main/java/com/databasir/core/meta/provider/jdbc/JdbcIndexMetaProvider.java +++ b/meta/src/main/java/com/databasir/core/meta/provider/jdbc/JdbcIndexMetaProvider.java @@ -35,14 +35,17 @@ public class JdbcIndexMetaProvider implements IndexMetaProvider { return indexMetas; } - Map pojoGroupByName = new HashMap<>(); + Map metaGroupByName = new HashMap<>(); try { while (indexResults.next()) { Boolean nonUnique = indexResults.getBoolean("NON_UNIQUE"); String indexName = indexResults.getString("INDEX_NAME"); String columnName = indexResults.getString("COLUMN_NAME"); - if (pojoGroupByName.containsKey(indexName)) { - pojoGroupByName.get(indexName).getColumnNames().add(columnName); + if (indexName == null) { + continue; + } + if (metaGroupByName.containsKey(indexName)) { + metaGroupByName.get(indexName).getColumnNames().add(columnName); } else { List columns = new ArrayList<>(); columns.add(columnName); @@ -51,13 +54,13 @@ public class JdbcIndexMetaProvider implements IndexMetaProvider { .columnNames(columns) .isUniqueKey(Objects.equals(nonUnique, false)) .build(); - pojoGroupByName.put(indexName, indexMeta); + metaGroupByName.put(indexName, indexMeta); } } } finally { indexResults.close(); } - return new ArrayList<>(pojoGroupByName.values()); + return new ArrayList<>(metaGroupByName.values()); } }