mirror of
http://git.pig4cloud.com/pig/pigx.git
synced 2026-11-14 22:29:00 +08:00
refactor(codegen): 代码生成表格列表根据表的元数据(createTime/updateTime)进行排序,最新有更新的表放在最前
This commit is contained in:
1 parent
f3ab8396bc
commit
4118d91756
1 file changed
+17
-8
+17
-8
@@ -19,6 +19,7 @@ package com.pig4cloud.pigx.codegen.service.impl;
|
||||
import cn.hutool.core.collection.CollUtil;
|
||||
import cn.hutool.core.text.NamingCase;
|
||||
import cn.hutool.core.util.EnumUtil;
|
||||
import cn.hutool.core.util.NumberUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import com.baomidou.dynamic.datasource.toolkit.DynamicDataSourceContextHolder;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
@@ -52,6 +53,7 @@ import java.util.ArrayList;
|
||||
import java.util.LinkedHashMap;
|
||||
import java.util.List;
|
||||
import java.util.Objects;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* 列属性
|
||||
@@ -113,15 +115,22 @@ public class GenTableServiceImpl extends ServiceImpl<GenTableMapper, GenTable> i
|
||||
public IPage queryTablePage(Page<Table> page, GenTable table) {
|
||||
// 手动切换数据源
|
||||
DynamicDataSourceContextHolder.push(table.getDsName());
|
||||
List<Table> tableList = ServiceProxy.metadata().tables().values().stream().filter(t -> {
|
||||
if (StrUtil.isBlank(table.getTableName())) {
|
||||
return true;
|
||||
}
|
||||
List<Table> tableList = ServiceProxy.metadata().tables()
|
||||
.values().stream().filter(t -> {
|
||||
if (StrUtil.isBlank(table.getTableName())) {
|
||||
return true;
|
||||
}
|
||||
|
||||
// 通过表名和表注释进行模糊查询
|
||||
return StrUtil.containsIgnoreCase(t.getName(false), table.getTableName())
|
||||
|| StrUtil.containsIgnoreCase(t.getComment(), table.getTableName());
|
||||
}).toList();
|
||||
// 通过表名和表注释进行模糊查询
|
||||
return StrUtil.containsIgnoreCase(t.getName(false), table.getTableName())
|
||||
|| StrUtil.containsIgnoreCase(t.getComment(), table.getTableName());
|
||||
})
|
||||
// 根据 createTime 、updateTime 倒序排序 ,如果有 updateTime 则按 updateTime ,如果有 createTime 则按 createTime
|
||||
.sorted((o1, o2) -> {
|
||||
long time1 = o1.getUpdateTime() == null ? o1.getCreateTime().getTime() : o1.getUpdateTime().getTime();
|
||||
long time2 = o2.getUpdateTime() == null ? o2.getCreateTime().getTime() : o2.getUpdateTime().getTime();
|
||||
return NumberUtil.compare(time2, time1);
|
||||
}).collect(Collectors.toList());
|
||||
|
||||
// 根据 page 进行分页
|
||||
List<Table> records = CollUtil.page((int) page.getCurrent() - 1, (int) page.getSize(), tableList);
|
||||
|
||||
Reference in new issue
Block a user