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 3fcd33f4d..6ee23bd64 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 @@ -3,6 +3,7 @@ package org.dromara.generator.service; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.io.IoUtil; import cn.hutool.core.lang.Dict; +import cn.hutool.core.util.ArrayUtil; import cn.hutool.core.util.ObjectUtil; import com.baomidou.dynamic.datasource.annotation.DS; import com.baomidou.dynamic.datasource.annotation.DSTransactional; @@ -124,8 +125,12 @@ public class GenTableServiceImpl implements IGenTableService { Integer pageNum = pageQuery.getPageNum(); Integer pageSize = pageQuery.getPageSize(); + LinkedHashMap tablesMap = ServiceProxy.metadata().tables(); + if (CollUtil.isEmpty(tablesMap)) { + return TableDataInfo.build(); + } // 过滤并转换表格数据 - List tables = ServiceProxy.metadata().tables().values().stream() + List tables = tablesMap.values().stream() .filter(x -> { boolean nameMatches = true; boolean commentMatches = true; @@ -167,9 +172,18 @@ public class GenTableServiceImpl implements IGenTableService { @Override public List selectDbTableListByNames(String[] tableNames, String dataName) { Set tableNameSet = new HashSet<>(List.of(tableNames)); - List tableList = ServiceProxy.metadata().tables().values().stream() + LinkedHashMap tablesMap = ServiceProxy.metadata().tables(); + + if (CollUtil.isEmpty(tablesMap)) { + return new ArrayList<>(); + } + + List
tableList = tablesMap.values().stream() .filter(x -> tableNameSet.contains(x.getName())).toList(); + if (ArrayUtil.isEmpty(tableList)) { + return new ArrayList<>(); + } return tableList.stream().map(x -> { GenTable gen = new GenTable(); gen.setDataName(dataName);