From 4118d917567581496657272c20a0a2c10e579e98 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=86=B7=E5=86=B7?= <2270033969@qq.com> Date: Wed, 31 Jul 2024 15:36:09 +0800 Subject: [PATCH] =?UTF-8?q?refactor(codegen):=20=E4=BB=A3=E7=A0=81?= =?UTF-8?q?=E7=94=9F=E6=88=90=E8=A1=A8=E6=A0=BC=E5=88=97=E8=A1=A8=E6=A0=B9?= =?UTF-8?q?=E6=8D=AE=E8=A1=A8=E7=9A=84=E5=85=83=E6=95=B0=E6=8D=AE=EF=BC=88?= =?UTF-8?q?createTime/updateTime=EF=BC=89=E8=BF=9B=E8=A1=8C=E6=8E=92?= =?UTF-8?q?=E5=BA=8F=EF=BC=8C=E6=9C=80=E6=96=B0=E6=9C=89=E6=9B=B4=E6=96=B0?= =?UTF-8?q?=E7=9A=84=E8=A1=A8=E6=94=BE=E5=9C=A8=E6=9C=80=E5=89=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/GenTableServiceImpl.java | 25 +++++++++++++------ 1 file changed, 17 insertions(+), 8 deletions(-) diff --git a/pigx-visual/pigx-codegen/src/main/java/com/pig4cloud/pigx/codegen/service/impl/GenTableServiceImpl.java b/pigx-visual/pigx-codegen/src/main/java/com/pig4cloud/pigx/codegen/service/impl/GenTableServiceImpl.java index 381b2aa5a..2a86b418e 100644 --- a/pigx-visual/pigx-codegen/src/main/java/com/pig4cloud/pigx/codegen/service/impl/GenTableServiceImpl.java +++ b/pigx-visual/pigx-codegen/src/main/java/com/pig4cloud/pigx/codegen/service/impl/GenTableServiceImpl.java @@ -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 i public IPage queryTablePage(Page page, GenTable table) { // 手动切换数据源 DynamicDataSourceContextHolder.push(table.getDsName()); - List
tableList = ServiceProxy.metadata().tables().values().stream().filter(t -> { - if (StrUtil.isBlank(table.getTableName())) { - return true; - } + List
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
records = CollUtil.page((int) page.getCurrent() - 1, (int) page.getSize(), tableList);