From f2892a672a495a78562836561f51a2a274cd16aa Mon Sep 17 00:00:00 2001 From: WangBQ Date: Mon, 29 May 2023 02:26:10 +0000 Subject: [PATCH] =?UTF-8?q?!349=20=E4=BB=A3=E7=A0=81=E7=94=9F=E6=88=90=20?= =?UTF-8?q?=E4=BB=8E=E5=AF=B9=E5=BA=94=E6=95=B0=E6=8D=AE=E6=BA=90=E5=8A=A0?= =?UTF-8?q?=E8=BD=BD=E8=A1=A8=E7=BB=93=E6=9E=84=E4=BF=A1=E6=81=AF=20?= =?UTF-8?q?=E5=AD=98=E5=82=A8=E5=88=B0=E4=B8=BB=E6=95=B0=E6=8D=AE=E6=BA=90?= =?UTF-8?q?=20=E5=AE=9E=E7=8E=B0=E5=AD=98=E5=82=A8=E7=BB=9F=E4=B8=80=20*?= =?UTF-8?q?=20=E6=95=B0=E6=8D=AE=E5=BA=93=E8=84=9A=E6=9C=AC=E4=BF=AE?= =?UTF-8?q?=E6=94=B9=EF=BC=8Cgen=5Ftable=E5=A2=9E=E5=8A=A0data=5Fname?= =?UTF-8?q?=E5=AD=97=E6=AE=B5=EF=BC=8C=E5=AD=98=E5=82=A8=E5=AF=B9=E5=BA=94?= =?UTF-8?q?=E6=95=B0=E6=8D=AE=E6=BA=90=E5=90=8D=E7=A7=B0=20*=20=E4=BB=A3?= =?UTF-8?q?=E7=A0=81=E7=94=9F=E6=88=90=20=E4=BB=8E=E5=AF=B9=E5=BA=94?= =?UTF-8?q?=E6=95=B0=E6=8D=AE=E6=BA=90=E5=8A=A0=E8=BD=BD=E8=A1=A8=E7=BB=93?= =?UTF-8?q?=E6=9E=84=E4=BF=A1=E6=81=AF=20=E5=AD=98=E5=82=A8=E5=88=B0?= =?UTF-8?q?=E4=B8=BB=E6=95=B0=E6=8D=AE=E6=BA=90=20=E5=AE=9E=E7=8E=B0?= =?UTF-8?q?=E5=AD=98=E5=82=A8=E7=BB=9F=E4=B8=80(=E8=A1=A8=E7=BB=93?= =?UTF-8?q?=E6=9E=84=E9=9C=80=E8=A6=81=E5=A2=9E=E5=8A=A0=E5=AF=B9=E5=BA=94?= =?UTF-8?q?=E7=9A=84=E6=95=B0=E6=8D=AE=E6=9D=A5=E6=BA=90=E5=AD=97=E6=AE=B5?= =?UTF-8?q?)=20https://gitee.com/=E2=80=A6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/mybatis/helper/DataBaseHelper.java | 10 +++ .../generator/controller/GenController.java | 48 +++++++----- .../dromara/generator/domain/GenTable.java | 6 ++ .../mapper/GenTableColumnMapper.java | 5 +- .../generator/mapper/GenTableMapper.java | 3 + .../service/GenTableServiceImpl.java | 78 +++++++++++-------- .../generator/service/IGenTableService.java | 22 +++--- .../mapper/generator/GenTableMapper.xml | 37 +++++++-- script/sql/oracle/oracle_ry_vue_5.X.sql | 2 + script/sql/postgres/postgres_ry_vue_5.X.sql | 2 + script/sql/ry_vue_5.X.sql | 1 + script/sql/sqlserver/sqlserver_ry_vue_5.X.sql | 7 ++ 12 files changed, 152 insertions(+), 69 deletions(-) diff --git a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/helper/DataBaseHelper.java b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/helper/DataBaseHelper.java index 4da965930..bb20f4b3a 100644 --- a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/helper/DataBaseHelper.java +++ b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/helper/DataBaseHelper.java @@ -12,6 +12,9 @@ import javax.sql.DataSource; import java.sql.Connection; import java.sql.DatabaseMetaData; import java.sql.SQLException; +import java.util.ArrayList; +import java.util.List; +import java.util.Set; /** * 数据库助手 @@ -69,4 +72,11 @@ public class DataBaseHelper { // find_in_set(100 , '0,100,101') return "find_in_set('%s' , %s) <> 0".formatted(var, var2); } + + /** + * 获取当前加载的数据库名 + */ + public static List getDataSourceNameList() { + return new ArrayList<>(DS.getDataSources().keySet()); + } } diff --git a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/controller/GenController.java b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/controller/GenController.java index 32133c1af..25c510be3 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/controller/GenController.java +++ b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/controller/GenController.java @@ -4,6 +4,7 @@ import cn.dev33.satoken.annotation.SaCheckPermission; import cn.hutool.core.convert.Convert; import cn.hutool.core.io.IoUtil; import org.dromara.common.core.domain.R; +import org.dromara.common.mybatis.helper.DataBaseHelper; import org.dromara.common.web.core.BaseController; import org.dromara.common.mybatis.core.page.PageQuery; import org.dromara.common.mybatis.core.page.TableDataInfo; @@ -94,11 +95,11 @@ public class GenController extends BaseController { @SaCheckPermission("tool:gen:import") @Log(title = "代码生成", businessType = BusinessType.IMPORT) @PostMapping("/importTable") - public R importTableSave(String tables) { + public R importTableSave(String tables, String dataName) { String[] tableNames = Convert.toStrArray(tables); // 查询表信息 - List tableList = genTableService.selectDbTableListByNames(tableNames); - genTableService.importGenTable(tableList); + List tableList = genTableService.selectDbTableListByNames(tableNames, dataName); + genTableService.importGenTable(tableList, dataName); return R.ok(); } @@ -142,53 +143,53 @@ public class GenController extends BaseController { /** * 生成代码(下载方式) * - * @param tableName 表名 + * @param tableId 表ID */ @SaCheckPermission("tool:gen:code") @Log(title = "代码生成", businessType = BusinessType.GENCODE) - @GetMapping("/download/{tableName}") - public void download(HttpServletResponse response, @PathVariable("tableName") String tableName) throws IOException { - byte[] data = genTableService.downloadCode(tableName); + @GetMapping("/download/{tableId}") + public void download(HttpServletResponse response, @PathVariable("tableId") Long tableId) throws IOException { + byte[] data = genTableService.downloadCode(tableId); genCode(response, data); } /** * 生成代码(自定义路径) * - * @param tableName 表名 + * @param tableId 表ID */ @SaCheckPermission("tool:gen:code") @Log(title = "代码生成", businessType = BusinessType.GENCODE) - @GetMapping("/genCode/{tableName}") - public R genCode(@PathVariable("tableName") String tableName) { - genTableService.generatorCode(tableName); + @GetMapping("/genCode/{tableId}") + public R genCode(@PathVariable("tableId") Long tableId) { + genTableService.generatorCode(tableId); return R.ok(); } /** * 同步数据库 * - * @param tableName 表名 + * @param tableId 表ID */ @SaCheckPermission("tool:gen:edit") @Log(title = "代码生成", businessType = BusinessType.UPDATE) - @GetMapping("/synchDb/{tableName}") - public R synchDb(@PathVariable("tableName") String tableName) { - genTableService.synchDb(tableName); + @GetMapping("/synchDb/{tableId}") + public R synchDb(@PathVariable("tableId") Long tableId) { + genTableService.synchDb(tableId); return R.ok(); } /** * 批量生成代码 * - * @param tables 表名串 + * @param tableIdStr 表ID串 */ @SaCheckPermission("tool:gen:code") @Log(title = "代码生成", businessType = BusinessType.GENCODE) @GetMapping("/batchGenCode") - public void batchGenCode(HttpServletResponse response, String tables) throws IOException { - String[] tableNames = Convert.toStrArray(tables); - byte[] data = genTableService.downloadCode(tableNames); + public void batchGenCode(HttpServletResponse response, String tableIdStr) throws IOException { + String[] tableIds = Convert.toStrArray(tableIdStr); + byte[] data = genTableService.downloadCode(tableIds); genCode(response, data); } @@ -204,4 +205,13 @@ public class GenController extends BaseController { response.setContentType("application/octet-stream; charset=UTF-8"); IoUtil.write(response.getOutputStream(), false, data); } + + /** + * 查询数据源名称列表 + */ + @SaCheckPermission("tool:gen:list") + @GetMapping(value = "/getDataNames") + public R getCurrentDataSourceNameList(){ + return R.ok(DataBaseHelper.getDataSourceNameList()); + } } diff --git a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/domain/GenTable.java b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/domain/GenTable.java index 944fd2e91..f792cebc2 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/domain/GenTable.java +++ b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/domain/GenTable.java @@ -31,6 +31,12 @@ public class GenTable extends BaseEntity { @TableId(value = "table_id") private Long tableId; + /** + * 数据源名称 + */ + @NotBlank(message = "数据源名称不能为空") + private String dataName; + /** * 表名称 */ diff --git a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/mapper/GenTableColumnMapper.java b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/mapper/GenTableColumnMapper.java index 3b5cb60ae..87f4f1eb7 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/mapper/GenTableColumnMapper.java +++ b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/mapper/GenTableColumnMapper.java @@ -1,5 +1,6 @@ package org.dromara.generator.mapper; +import com.baomidou.dynamic.datasource.annotation.DS; import com.baomidou.mybatisplus.annotation.InterceptorIgnore; import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; import org.dromara.generator.domain.GenTableColumn; @@ -17,8 +18,10 @@ public interface GenTableColumnMapper extends BaseMapperPlus selectDbTableColumnsByName(String tableName); + @DS("#dataName") + List selectDbTableColumnsByName(String tableName, String dataName); } diff --git a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/mapper/GenTableMapper.java b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/mapper/GenTableMapper.java index 30e33e8ea..c2ff7b69e 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/mapper/GenTableMapper.java +++ b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/mapper/GenTableMapper.java @@ -1,5 +1,6 @@ package org.dromara.generator.mapper; +import com.baomidou.dynamic.datasource.annotation.DS; import com.baomidou.mybatisplus.annotation.InterceptorIgnore; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; @@ -55,4 +56,6 @@ public interface GenTableMapper extends BaseMapperPlus { */ GenTable selectGenTableByName(String tableName); + @DS("") + List selectTableNameList(String dataName); } 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 c505ec472..77ef30363 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 @@ -5,13 +5,18 @@ import cn.hutool.core.io.IoUtil; import cn.hutool.core.lang.Dict; import cn.hutool.core.util.ObjectUtil; import com.baomidou.dynamic.datasource.annotation.DS; +import com.baomidou.dynamic.datasource.annotation.DSTransactional; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.incrementer.IdentifierGenerator; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.apache.velocity.Template; +import org.apache.velocity.VelocityContext; +import org.apache.velocity.app.Velocity; import org.dromara.common.core.constant.Constants; -import org.dromara.generator.constant.GenConstants; import org.dromara.common.core.exception.ServiceException; import org.dromara.common.core.utils.StreamUtils; import org.dromara.common.core.utils.StringUtils; @@ -20,6 +25,7 @@ import org.dromara.common.json.utils.JsonUtils; import org.dromara.common.mybatis.core.page.PageQuery; import org.dromara.common.mybatis.core.page.TableDataInfo; import org.dromara.common.satoken.utils.LoginHelper; +import org.dromara.generator.constant.GenConstants; import org.dromara.generator.domain.GenTable; import org.dromara.generator.domain.GenTableColumn; import org.dromara.generator.mapper.GenTableColumnMapper; @@ -27,11 +33,6 @@ import org.dromara.generator.mapper.GenTableMapper; import org.dromara.generator.util.GenUtils; import org.dromara.generator.util.VelocityInitializer; import org.dromara.generator.util.VelocityUtils; -import lombok.RequiredArgsConstructor; -import lombok.extern.slf4j.Slf4j; -import org.apache.velocity.Template; -import org.apache.velocity.VelocityContext; -import org.apache.velocity.app.Velocity; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -40,7 +41,11 @@ import java.io.File; import java.io.IOException; import java.io.StringWriter; import java.nio.charset.StandardCharsets; -import java.util.*; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.LinkedHashMap; +import java.util.List; +import java.util.Map; import java.util.zip.ZipEntry; import java.util.zip.ZipOutputStream; @@ -49,7 +54,7 @@ import java.util.zip.ZipOutputStream; * * @author Lion Li */ -@DS("#header.datasource") +// @DS("#header.datasource") @Slf4j @RequiredArgsConstructor @Service @@ -94,16 +99,19 @@ public class GenTableServiceImpl implements IGenTableService { private QueryWrapper buildGenTableQueryWrapper(GenTable genTable) { Map params = genTable.getParams(); QueryWrapper wrapper = Wrappers.query(); - wrapper.like(StringUtils.isNotBlank(genTable.getTableName()), "lower(table_name)", StringUtils.lowerCase(genTable.getTableName())) + wrapper + .eq(StringUtils.isNotEmpty(genTable.getDataName()),"data_name", genTable.getDataName()) + .like(StringUtils.isNotBlank(genTable.getTableName()), "lower(table_name)", StringUtils.lowerCase(genTable.getTableName())) .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")); return wrapper; } - + @DS("#genTable.dataName") @Override public TableDataInfo selectPageDbTableList(GenTable genTable, PageQuery pageQuery) { + genTable.getParams().put("genTableNames",baseMapper.selectTableNameList(genTable.getDataName())); Page page = baseMapper.selectPageDbTableList(pageQuery.build(), genTable); return TableDataInfo.build(page); } @@ -112,10 +120,12 @@ public class GenTableServiceImpl implements IGenTableService { * 查询据库列表 * * @param tableNames 表名称组 + * @param dataName * @return 数据库表集合 */ + @DS("#dataName") @Override - public List selectDbTableListByNames(String[] tableNames) { + public List selectDbTableListByNames(String[] tableNames, String dataName) { return baseMapper.selectDbTableListByNames(tableNames); } @@ -166,19 +176,21 @@ public class GenTableServiceImpl implements IGenTableService { * 导入表结构 * * @param tableList 导入表列表 + * @param dataName */ - @Transactional(rollbackFor = Exception.class) + @DSTransactional @Override - public void importGenTable(List tableList) { + public void importGenTable(List tableList, String dataName) { String operName = LoginHelper.getUsername(); try { for (GenTable table : tableList) { String tableName = table.getTableName(); GenUtils.initTable(table, operName); + table.setDataName(dataName); int row = baseMapper.insert(table); if (row > 0) { // 保存列信息 - List genTableColumns = genTableColumnMapper.selectDbTableColumnsByName(tableName); + List genTableColumns = genTableColumnMapper.selectDbTableColumnsByName(tableName, dataName); List saveColumns = new ArrayList<>(); for (GenTableColumn column : genTableColumns) { GenUtils.initColumnField(column, table); @@ -231,14 +243,14 @@ public class GenTableServiceImpl implements IGenTableService { /** * 生成代码(下载方式) * - * @param tableName 表名称 + * @param tableId 表名称 * @return 数据 */ @Override - public byte[] downloadCode(String tableName) { + public byte[] downloadCode(Long tableId) { ByteArrayOutputStream outputStream = new ByteArrayOutputStream(); ZipOutputStream zip = new ZipOutputStream(outputStream); - generatorCode(tableName, zip); + generatorCode(tableId, zip); IoUtil.close(zip); return outputStream.toByteArray(); } @@ -246,12 +258,12 @@ public class GenTableServiceImpl implements IGenTableService { /** * 生成代码(自定义路径) * - * @param tableName 表名称 + * @param tableId 表名称 */ @Override - public void generatorCode(String tableName) { + public void generatorCode(Long tableId) { // 查询表信息 - GenTable table = baseMapper.selectGenTableByName(tableName); + GenTable table = baseMapper.selectGenTableById(tableId); // 设置主键列信息 setPkColumn(table); @@ -280,16 +292,16 @@ public class GenTableServiceImpl implements IGenTableService { /** * 同步数据库 * - * @param tableName 表名称 + * @param tableId 表名称 */ - @Transactional(rollbackFor = Exception.class) + @DSTransactional @Override - public void synchDb(String tableName) { - GenTable table = baseMapper.selectGenTableByName(tableName); + public void synchDb(Long tableId) { + GenTable table = baseMapper.selectGenTableById(tableId); List tableColumns = table.getColumns(); Map tableColumnMap = StreamUtils.toIdentityMap(tableColumns, GenTableColumn::getColumnName); - List dbTableColumns = genTableColumnMapper.selectDbTableColumnsByName(tableName); + List dbTableColumns = genTableColumnMapper.selectDbTableColumnsByName(table.getTableName(), table.getDataName()); if (CollUtil.isEmpty(dbTableColumns)) { throw new ServiceException("同步数据失败,原表结构不存在"); } @@ -322,22 +334,24 @@ public class GenTableServiceImpl implements IGenTableService { List delColumns = StreamUtils.filter(tableColumns, column -> !dbTableColumnNames.contains(column.getColumnName())); if (CollUtil.isNotEmpty(delColumns)) { List ids = StreamUtils.toList(delColumns, GenTableColumn::getColumnId); - genTableColumnMapper.deleteBatchIds(ids); + if (CollUtil.isNotEmpty(ids)) { + genTableColumnMapper.deleteBatchIds(ids); + } } } /** * 批量生成代码(下载方式) * - * @param tableNames 表数组 + * @param tableIds 表ID数组 * @return 数据 */ @Override - public byte[] downloadCode(String[] tableNames) { + public byte[] downloadCode(String[] tableIds) { ByteArrayOutputStream outputStream = new ByteArrayOutputStream(); ZipOutputStream zip = new ZipOutputStream(outputStream); - for (String tableName : tableNames) { - generatorCode(tableName, zip); + for (String tableId : tableIds) { + generatorCode(Long.parseLong(tableId), zip); } IoUtil.close(zip); return outputStream.toByteArray(); @@ -346,9 +360,9 @@ public class GenTableServiceImpl implements IGenTableService { /** * 查询表信息并生成代码 */ - private void generatorCode(String tableName, ZipOutputStream zip) { + private void generatorCode(Long tableId, ZipOutputStream zip) { // 查询表信息 - GenTable table = baseMapper.selectGenTableByName(tableName); + GenTable table = baseMapper.selectGenTableById(tableId); List menuIds = new ArrayList<>(); for (int i = 0; i < 6; i++) { menuIds.add(identifierGenerator.nextId(null).longValue()); diff --git a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/IGenTableService.java b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/IGenTableService.java index 643742b0c..51d3e230e 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/IGenTableService.java +++ b/ruoyi-modules/ruoyi-generator/src/main/java/org/dromara/generator/service/IGenTableService.java @@ -43,9 +43,10 @@ public interface IGenTableService { * 查询据库列表 * * @param tableNames 表名称组 + * @param dataName * @return 数据库表集合 */ - List selectDbTableListByNames(String[] tableNames); + List selectDbTableListByNames(String[] tableNames, String dataName); /** * 查询所有表信息 @@ -82,8 +83,9 @@ public interface IGenTableService { * 导入表结构 * * @param tableList 导入表列表 + * @param dataName */ - void importGenTable(List tableList); + void importGenTable(List tableList, String dataName); /** * 预览代码 @@ -96,33 +98,33 @@ public interface IGenTableService { /** * 生成代码(下载方式) * - * @param tableName 表名称 + * @param tableId 表名称 * @return 数据 */ - byte[] downloadCode(String tableName); + byte[] downloadCode(Long tableId); /** * 生成代码(自定义路径) * - * @param tableName 表名称 + * @param tableId 表名称 * @return 数据 */ - void generatorCode(String tableName); + void generatorCode(Long tableId); /** * 同步数据库 * - * @param tableName 表名称 + * @param tableId 表名称 */ - void synchDb(String tableName); + void synchDb(Long tableId); /** * 批量生成代码(下载方式) * - * @param tableNames 表数组 + * @param tableIds 表ID数组 * @return 数据 */ - byte[] downloadCode(String[] tableNames); + byte[] downloadCode(String[] tableIds); /** * 修改保存参数校验 diff --git a/ruoyi-modules/ruoyi-generator/src/main/resources/mapper/generator/GenTableMapper.xml b/ruoyi-modules/ruoyi-generator/src/main/resources/mapper/generator/GenTableMapper.xml index 1ae784fe5..5641f8530 100644 --- a/ruoyi-modules/ruoyi-generator/src/main/resources/mapper/generator/GenTableMapper.xml +++ b/ruoyi-modules/ruoyi-generator/src/main/resources/mapper/generator/GenTableMapper.xml @@ -20,7 +20,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" from information_schema.tables where table_schema = (select database()) AND table_name NOT LIKE 'xxl_job_%' AND table_name NOT LIKE 'gen_%' - AND table_name NOT IN (select table_name from gen_table) + + AND table_name NOT IN + + #{item} + + AND lower(table_name) like lower(concat('%', #{genTable.tableName}, '%')) @@ -36,7 +41,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and dt.table_name = uo.object_name and uo.object_type = 'TABLE' AND dt.table_name NOT LIKE 'XXL_JOB_%' AND dt.table_name NOT LIKE 'GEN_%' - AND lower(dt.table_name) NOT IN (select table_name from gen_table) + + AND lower(dt.table_name) NOT IN + + #{item} + + AND lower(dt.table_name) like lower(concat(concat('%', #{genTable.tableName}), '%')) @@ -60,7 +70,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" AND n.nspname ]]> ''::name ) list_table where table_name NOT LIKE 'xxl_job_%' AND table_name NOT LIKE 'gen_%' - AND table_name NOT IN (select table_name from gen_table) + + AND table_name NOT IN + + #{item} + + AND lower(table_name) like lower(concat('%', #{genTable.tableName}, '%')) @@ -78,7 +93,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" INNER JOIN SYS.EXTENDED_PROPERTIES F ON D.ID = F.MAJOR_ID AND F.MINOR_ID = 0 AND D.XTYPE = 'U' AND D.NAME != 'DTPROPERTIES' AND D.NAME NOT LIKE 'xxl_job_%' AND D.NAME NOT LIKE 'gen_%' - AND D.NAME NOT IN (select table_name from gen_table) + + AND D.NAME NOT IN + + #{item} + + AND lower(D.NAME) like lower(concat(N'%', N'${genTable.tableName}', N'%')) @@ -194,7 +214,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + diff --git a/script/sql/oracle/oracle_ry_vue_5.X.sql b/script/sql/oracle/oracle_ry_vue_5.X.sql index 0456f11ec..3e93ae98d 100644 --- a/script/sql/oracle/oracle_ry_vue_5.X.sql +++ b/script/sql/oracle/oracle_ry_vue_5.X.sql @@ -910,6 +910,7 @@ insert into sys_notice values('2', '000000', '维护通知:2018-07-01 系统 -- ---------------------------- create table gen_table ( table_id number(20) not null, + data_name varchar2(200) default '', table_name varchar2(200) default '', table_comment varchar2(500) default '', sub_table_name varchar(64) default null, @@ -936,6 +937,7 @@ alter table gen_table add constraint pk_gen_table primary key (table_id); comment on table gen_table is '代码生成业务表'; comment on column gen_table.table_id is '编号'; +comment on column gen_table.data_name is '数据源名称'; comment on column gen_table.table_name is '表名称'; comment on column gen_table.table_comment is '表描述'; comment on column gen_table.sub_table_name is '关联子表的表名'; diff --git a/script/sql/postgres/postgres_ry_vue_5.X.sql b/script/sql/postgres/postgres_ry_vue_5.X.sql index bdf28b493..b51004246 100644 --- a/script/sql/postgres/postgres_ry_vue_5.X.sql +++ b/script/sql/postgres/postgres_ry_vue_5.X.sql @@ -935,6 +935,7 @@ drop table if exists gen_table; create table if not exists gen_table ( table_id int8, + data_name varchar(200) default ''::varchar, table_name varchar(200) default ''::varchar, table_comment varchar(500) default ''::varchar, sub_table_name varchar(64) default ''::varchar, @@ -960,6 +961,7 @@ create table if not exists gen_table comment on table gen_table is '代码生成业务表'; comment on column gen_table.table_id is '编号'; +comment on column gen_table.data_name is '数据源名称'; comment on column gen_table.table_name is '表名称'; comment on column gen_table.table_comment is '表描述'; comment on column gen_table.sub_table_name is '关联子表的表名'; diff --git a/script/sql/ry_vue_5.X.sql b/script/sql/ry_vue_5.X.sql index 2b3ea0c1c..713d962d4 100644 --- a/script/sql/ry_vue_5.X.sql +++ b/script/sql/ry_vue_5.X.sql @@ -686,6 +686,7 @@ insert into sys_notice values('2', '000000', '维护通知:2018-07-01 系统 drop table if exists gen_table; create table gen_table ( table_id bigint(20) not null comment '编号', + data_name varchar(200) default '' comment '数据源名称', table_name varchar(200) default '' comment '表名称', table_comment varchar(500) default '' comment '表描述', sub_table_name varchar(64) default null comment '关联子表的表名', diff --git a/script/sql/sqlserver/sqlserver_ry_vue_5.X.sql b/script/sql/sqlserver/sqlserver_ry_vue_5.X.sql index f72dfffcd..4bff0ed57 100644 --- a/script/sql/sqlserver/sqlserver_ry_vue_5.X.sql +++ b/script/sql/sqlserver/sqlserver_ry_vue_5.X.sql @@ -254,6 +254,7 @@ GO CREATE TABLE gen_table ( table_id bigint NOT NULL, + data_name nvarchar(200) DEFAULT '' NULL, table_name nvarchar(200) DEFAULT '' NULL, table_comment nvarchar(500) DEFAULT '' NULL, sub_table_name nvarchar(64) NULL, @@ -287,6 +288,12 @@ EXEC sys.sp_addextendedproperty 'TABLE', N'gen_table', 'COLUMN', N'table_id' GO +EXEC sys.sp_addextendedproperty + 'MS_Description', N'数据源名称' , + 'SCHEMA', N'dbo', + 'TABLE', N'gen_table', + 'COLUMN', N'data_name' +GO EXEC sys.sp_addextendedproperty 'MS_Description', N'表名称' , 'SCHEMA', N'dbo',