From 254e61ab019e7c6826b5811024b387dd495c2299 Mon Sep 17 00:00:00 2001
From: 疯狂的狮子Li <15040126243@163.com>
Date: 星期二, 07 一月 2025 13:52:29 +0800
Subject: [PATCH] fix 修复 postgresql的表元数据没有创建时间这个东西(好奇葩) 只能new Date代替

---
 ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java |   18 ++++++++++++------
 1 files changed, 12 insertions(+), 6 deletions(-)

diff --git a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java
index 3f9ef19..acf5bf8 100644
--- a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java
+++ b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/GenTableServiceImpl.java
@@ -106,7 +106,7 @@
             .like(StringUtils.isNotBlank(genTable.getTableComment()), "lower(table_comment)", StringUtils.lowerCase(genTable.getTableComment()))
             .between(params.get("beginTime") != null && params.get("endTime") != null,
                 "create_time", params.get("beginTime"), params.get("endTime"))
-            .orderByAsc("table_id");
+            .orderByDesc("update_time");
         return wrapper;
     }
 
@@ -162,10 +162,12 @@
                 GenTable gen = new GenTable();
                 gen.setTableName(x.getName());
                 gen.setTableComment(x.getComment());
-                gen.setCreateTime(x.getCreateTime());
+                // postgresql鐨勮〃鍏冩暟鎹病鏈夊垱寤烘椂闂磋繖涓笢瑗�(濂藉钁�) 鍙兘new Date浠f浛
+                gen.setCreateTime(ObjectUtil.defaultIfNull(x.getCreateTime(), new Date()));
                 gen.setUpdateTime(x.getUpdateTime());
                 return gen;
-            }).toList();
+            }).sorted(Comparator.comparing(GenTable::getCreateTime).reversed())
+            .toList();
 
         IPage<GenTable> page = pageQuery.build();
         page.setTotal(tables.size());
@@ -202,7 +204,7 @@
         }
 
         List<Table<?>> tableList = tablesMap.values().stream()
-            .filter(x -> !StringUtils.containsAnyIgnoreCase(x.getName(), TABLE_IGNORE))
+            .filter(x -> !startWithAnyIgnoreCase(x.getName(), TABLE_IGNORE))
             .filter(x -> tableNameSet.contains(x.getName())).toList();
 
         if (CollUtil.isEmpty(tableList)) {
@@ -303,14 +305,18 @@
     @DS("#dataName")
     @Override
     public List<GenTableColumn> selectDbTableColumnsByName(String tableName, String dataName) {
-        LinkedHashMap<String, Column> columns = ServiceProxy.metadata().columns(tableName);
+        Table<?> table = ServiceProxy.metadata().table(tableName);
+        if (ObjectUtil.isNull(table)) {
+            return new ArrayList<>();
+        }
+        LinkedHashMap<String, Column> columns = table.getColumns();
         List<GenTableColumn> tableColumns = new ArrayList<>();
         columns.forEach((columnName, column) -> {
             GenTableColumn tableColumn = new GenTableColumn();
             tableColumn.setIsPk(String.valueOf(column.isPrimaryKey()));
             tableColumn.setColumnName(column.getName());
             tableColumn.setColumnComment(column.getComment());
-            tableColumn.setColumnType(column.getTypeName().toLowerCase());
+            tableColumn.setColumnType(column.getOriginType().toLowerCase());
             tableColumn.setSort(column.getPosition());
             tableColumn.setIsRequired(column.isNullable() == 0 ? "1" : "0");
             tableColumn.setIsIncrement(column.isAutoIncrement() == -1 ? "0" : "1");

--
Gitblit v1.9.3