Commit 63962d557a177d0646da756feb356652fe01e630

Authored by YunaiV
1 parent 54c98c3a

梳理代码生成器的配置

Showing 22 changed files with 237 additions and 97 deletions
src/main/java/cn/iocoder/dashboard/framework/codegen/config/CodegenConfiguration.java 0 → 100644
  1 +package cn.iocoder.dashboard.framework.codegen.config;
  2 +
  3 +import org.springframework.boot.context.properties.EnableConfigurationProperties;
  4 +import org.springframework.context.annotation.Configuration;
  5 +
  6 +@Configuration
  7 +@EnableConfigurationProperties(CodegenProperties.class)
  8 +public class CodegenConfiguration {
  9 +}
src/main/java/cn/iocoder/dashboard/framework/codegen/config/CodegenProperties.java 0 → 100644
  1 +package cn.iocoder.dashboard.framework.codegen.config;
  2 +
  3 +import lombok.Data;
  4 +import org.springframework.boot.context.properties.ConfigurationProperties;
  5 +import org.springframework.validation.annotation.Validated;
  6 +
  7 +import javax.validation.constraints.NotEmpty;
  8 +import javax.validation.constraints.NotNull;
  9 +import java.util.Collection;
  10 +
  11 +@ConfigurationProperties(prefix = "yudao.codegen")
  12 +@Validated
  13 +@Data
  14 +public class CodegenProperties {
  15 +
  16 + /**
  17 + * 生成的 Java 代码的基础包
  18 + */
  19 + @NotNull(message = "Java 代码的基础包不能为空")
  20 + private String basePackage;
  21 +
  22 + /**
  23 + * 数据库名数组
  24 + */
  25 + @NotEmpty(message = "数据库不能为空")
  26 + private Collection<String> dbSchemas;
  27 +
  28 +}
src/main/java/cn/iocoder/dashboard/framework/codegen/package-info.java 0 → 100644
  1 +/**
  2 + * 代码生成器
  3 + */
  4 +package cn.iocoder.dashboard.framework.codegen;
src/main/java/cn/iocoder/dashboard/framework/datasource/DataSourceConfiguration.java renamed to src/main/java/cn/iocoder/dashboard/framework/datasource/config/DataSourceConfiguration.java
1 -package cn.iocoder.dashboard.framework.datasource; 1 +package cn.iocoder.dashboard.framework.datasource.config;
2 2
3 import org.springframework.context.annotation.Configuration; 3 import org.springframework.context.annotation.Configuration;
4 import org.springframework.transaction.annotation.EnableTransactionManagement; 4 import org.springframework.transaction.annotation.EnableTransactionManagement;
src/main/java/cn/iocoder/dashboard/framework/mybatis/config/MybatisConfiguration.java
@@ -13,7 +13,7 @@ import org.springframework.context.annotation.Configuration; @@ -13,7 +13,7 @@ import org.springframework.context.annotation.Configuration;
13 * @author 芋道源码 13 * @author 芋道源码
14 */ 14 */
15 @Configuration 15 @Configuration
16 -@MapperScan(value = "cn.iocoder.dashboard", annotationClass = Mapper.class) 16 +@MapperScan(value = "${yudao.info.base-package}", annotationClass = Mapper.class)
17 public class MybatisConfiguration { 17 public class MybatisConfiguration {
18 18
19 @Bean 19 @Bean
src/main/java/cn/iocoder/dashboard/framework/mybatis/core/query/QueryWrapperX.java
@@ -104,4 +104,10 @@ public class QueryWrapperX&lt;T&gt; extends QueryWrapper&lt;T&gt; { @@ -104,4 +104,10 @@ public class QueryWrapperX&lt;T&gt; extends QueryWrapper&lt;T&gt; {
104 return this; 104 return this;
105 } 105 }
106 106
  107 + @Override
  108 + public QueryWrapperX<T> in(String column, Collection<?> coll) {
  109 + super.in(column, coll);
  110 + return this;
  111 + }
  112 +
107 } 113 }
src/main/java/cn/iocoder/dashboard/modules/tool/controller/codegen/ToolCodegenController.java
@@ -9,13 +9,16 @@ import cn.iocoder.dashboard.modules.tool.controller.codegen.vo.ToolCodegenPrevie @@ -9,13 +9,16 @@ import cn.iocoder.dashboard.modules.tool.controller.codegen.vo.ToolCodegenPrevie
9 import cn.iocoder.dashboard.modules.tool.controller.codegen.vo.ToolCodegenUpdateReqVO; 9 import cn.iocoder.dashboard.modules.tool.controller.codegen.vo.ToolCodegenUpdateReqVO;
10 import cn.iocoder.dashboard.modules.tool.controller.codegen.vo.table.ToolCodegenTablePageReqVO; 10 import cn.iocoder.dashboard.modules.tool.controller.codegen.vo.table.ToolCodegenTablePageReqVO;
11 import cn.iocoder.dashboard.modules.tool.controller.codegen.vo.table.ToolCodegenTableRespVO; 11 import cn.iocoder.dashboard.modules.tool.controller.codegen.vo.table.ToolCodegenTableRespVO;
  12 +import cn.iocoder.dashboard.modules.tool.controller.codegen.vo.table.ToolSchemaTableRespVO;
12 import cn.iocoder.dashboard.modules.tool.convert.codegen.ToolCodegenConvert; 13 import cn.iocoder.dashboard.modules.tool.convert.codegen.ToolCodegenConvert;
13 import cn.iocoder.dashboard.modules.tool.dal.dataobject.codegen.ToolCodegenColumnDO; 14 import cn.iocoder.dashboard.modules.tool.dal.dataobject.codegen.ToolCodegenColumnDO;
14 import cn.iocoder.dashboard.modules.tool.dal.dataobject.codegen.ToolCodegenTableDO; 15 import cn.iocoder.dashboard.modules.tool.dal.dataobject.codegen.ToolCodegenTableDO;
  16 +import cn.iocoder.dashboard.modules.tool.dal.dataobject.codegen.ToolSchemaTableDO;
15 import cn.iocoder.dashboard.modules.tool.service.codegen.ToolCodegenService; 17 import cn.iocoder.dashboard.modules.tool.service.codegen.ToolCodegenService;
16 import cn.iocoder.dashboard.util.servlet.ServletUtils; 18 import cn.iocoder.dashboard.util.servlet.ServletUtils;
17 import io.swagger.annotations.Api; 19 import io.swagger.annotations.Api;
18 import io.swagger.annotations.ApiImplicitParam; 20 import io.swagger.annotations.ApiImplicitParam;
  21 +import io.swagger.annotations.ApiImplicitParams;
19 import io.swagger.annotations.ApiOperation; 22 import io.swagger.annotations.ApiOperation;
20 import org.springframework.validation.annotation.Validated; 23 import org.springframework.validation.annotation.Validated;
21 import org.springframework.web.bind.annotation.*; 24 import org.springframework.web.bind.annotation.*;
@@ -40,6 +43,23 @@ public class ToolCodegenController { @@ -40,6 +43,23 @@ public class ToolCodegenController {
40 @Resource 43 @Resource
41 private ToolCodegenService codegenService; 44 private ToolCodegenService codegenService;
42 45
  46 + @ApiOperation(value = "获得数据库自带的表定义列表", notes = "会过滤掉已经导入 Codegen 的表")
  47 + @GetMapping("/db/table/list")
  48 + @ApiImplicitParams({
  49 + @ApiImplicitParam(name = "tableName", required = true, example = "yudao", dataTypeClass = String.class),
  50 + @ApiImplicitParam(name = "tableComment", required = true, example = "芋道", dataTypeClass = Long.class)
  51 + })
  52 +// @PreAuthorize("@ss.hasPermi('tool:gen:list')") TODO 权限
  53 + public CommonResult<List<ToolSchemaTableRespVO>> getSchemaTableList(
  54 + @RequestParam(value = "tableName", required = false) String tableName,
  55 + @RequestParam(value = "tableComment", required = false) String tableComment) {
  56 + // 获得数据库自带的表定义列表
  57 + List<ToolSchemaTableDO> schemaTables = codegenService.getSchemaTableList(tableName, tableComment);
  58 + // 移除在 Codegen 中,已经存在的
  59 +
  60 + return null;
  61 + }
  62 +
43 @ApiOperation("获得表定义分页") 63 @ApiOperation("获得表定义分页")
44 @GetMapping("/table/page") 64 @GetMapping("/table/page")
45 // TODO 权限 @PreAuthorize("@ss.hasPermi('tool:gen:list')") 65 // TODO 权限 @PreAuthorize("@ss.hasPermi('tool:gen:list')")
src/main/java/cn/iocoder/dashboard/modules/tool/controller/codegen/vo/table/ToolSchemaTableRespVO.java 0 → 100644
  1 +package cn.iocoder.dashboard.modules.tool.controller.codegen.vo.table;
  2 +
  3 +import io.swagger.annotations.ApiModel;
  4 +import io.swagger.annotations.ApiModelProperty;
  5 +import lombok.Data;
  6 +
  7 +import java.util.Date;
  8 +
  9 +@ApiModel("数据字典的表定义 Response VO")
  10 +@Data
  11 +public class ToolSchemaTableRespVO {
  12 +
  13 + @ApiModelProperty(value = "数据库", required = true, example = "yudao")
  14 + private String tableSchema;
  15 +
  16 + @ApiModelProperty(value = "表名称", required = true, example = "yuanma")
  17 + private String tableName;
  18 +
  19 + @ApiModelProperty(value = "表描述", required = true, example = "芋道源码")
  20 + private String tableComment;
  21 +
  22 + @ApiModelProperty(value = "创建时间", required = true)
  23 + private Date createTime;
  24 +
  25 +}
src/main/java/cn/iocoder/dashboard/modules/tool/convert/codegen/ToolCodegenConvert.java
@@ -8,8 +8,8 @@ import cn.iocoder.dashboard.modules.tool.controller.codegen.vo.column.ToolCodege @@ -8,8 +8,8 @@ import cn.iocoder.dashboard.modules.tool.controller.codegen.vo.column.ToolCodege
8 import cn.iocoder.dashboard.modules.tool.controller.codegen.vo.table.ToolCodegenTableRespVO; 8 import cn.iocoder.dashboard.modules.tool.controller.codegen.vo.table.ToolCodegenTableRespVO;
9 import cn.iocoder.dashboard.modules.tool.dal.dataobject.codegen.ToolCodegenColumnDO; 9 import cn.iocoder.dashboard.modules.tool.dal.dataobject.codegen.ToolCodegenColumnDO;
10 import cn.iocoder.dashboard.modules.tool.dal.dataobject.codegen.ToolCodegenTableDO; 10 import cn.iocoder.dashboard.modules.tool.dal.dataobject.codegen.ToolCodegenTableDO;
11 -import cn.iocoder.dashboard.modules.tool.dal.dataobject.codegen.ToolInformationSchemaColumnDO;  
12 -import cn.iocoder.dashboard.modules.tool.dal.dataobject.codegen.ToolInformationSchemaTableDO; 11 +import cn.iocoder.dashboard.modules.tool.dal.dataobject.codegen.ToolSchemaColumnDO;
  12 +import cn.iocoder.dashboard.modules.tool.dal.dataobject.codegen.ToolSchemaTableDO;
13 import org.mapstruct.Mapper; 13 import org.mapstruct.Mapper;
14 import org.mapstruct.factory.Mappers; 14 import org.mapstruct.factory.Mappers;
15 15
@@ -24,11 +24,11 @@ public interface ToolCodegenConvert { @@ -24,11 +24,11 @@ public interface ToolCodegenConvert {
24 24
25 // ========== ToolInformationSchemaTableDO 和 ToolInformationSchemaColumnDO 相关 ========== 25 // ========== ToolInformationSchemaTableDO 和 ToolInformationSchemaColumnDO 相关 ==========
26 26
27 - ToolCodegenTableDO convert(ToolInformationSchemaTableDO bean); 27 + ToolCodegenTableDO convert(ToolSchemaTableDO bean);
28 28
29 - List<ToolCodegenColumnDO> convertList(List<ToolInformationSchemaColumnDO> list); 29 + List<ToolCodegenColumnDO> convertList(List<ToolSchemaColumnDO> list);
30 30
31 - ToolCodegenTableRespVO convert(ToolInformationSchemaColumnDO bean); 31 + ToolCodegenTableRespVO convert(ToolSchemaColumnDO bean);
32 32
33 // ========== ToolCodegenTableDO 相关 ========== 33 // ========== ToolCodegenTableDO 相关 ==========
34 34
src/main/java/cn/iocoder/dashboard/modules/tool/dal/dataobject/codegen/ToolInformationSchemaColumnDO.java renamed to src/main/java/cn/iocoder/dashboard/modules/tool/dal/dataobject/codegen/ToolSchemaColumnDO.java
@@ -13,7 +13,7 @@ import lombok.Data; @@ -13,7 +13,7 @@ import lombok.Data;
13 @TableName(value = "information_schema.columns", autoResultMap = true) 13 @TableName(value = "information_schema.columns", autoResultMap = true)
14 @Data 14 @Data
15 @Builder 15 @Builder
16 -public class ToolInformationSchemaColumnDO { 16 +public class ToolSchemaColumnDO {
17 17
18 /** 18 /**
19 * 表名称 19 * 表名称
src/main/java/cn/iocoder/dashboard/modules/tool/dal/dataobject/codegen/ToolInformationSchemaTableDO.java renamed to src/main/java/cn/iocoder/dashboard/modules/tool/dal/dataobject/codegen/ToolSchemaTableDO.java
@@ -14,7 +14,7 @@ import java.util.Date; @@ -14,7 +14,7 @@ import java.util.Date;
14 @TableName(value = "information_schema.tables", autoResultMap = true) 14 @TableName(value = "information_schema.tables", autoResultMap = true)
15 @Data 15 @Data
16 @Builder 16 @Builder
17 -public class ToolInformationSchemaTableDO { 17 +public class ToolSchemaTableDO {
18 18
19 /** 19 /**
20 * 数据库 20 * 数据库
src/main/java/cn/iocoder/dashboard/modules/tool/dal/mysql/coegen/ToolInformationSchemaTableMapper.java deleted
1 -package cn.iocoder.dashboard.modules.tool.dal.mysql.coegen;  
2 -  
3 -import cn.iocoder.dashboard.framework.mybatis.core.mapper.BaseMapperX;  
4 -import cn.iocoder.dashboard.modules.tool.dal.dataobject.codegen.ToolInformationSchemaTableDO;  
5 -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;  
6 -import org.apache.ibatis.annotations.Mapper;  
7 -  
8 -import java.util.List;  
9 -  
10 -@Mapper  
11 -public interface ToolInformationSchemaTableMapper extends BaseMapperX<ToolInformationSchemaTableDO> {  
12 -  
13 - default List<ToolInformationSchemaTableDO> selectListByTableSchema(String tableSchema) {  
14 - return selectList(new QueryWrapper<ToolInformationSchemaTableDO>().eq("table_schema", tableSchema));  
15 - }  
16 -  
17 - default ToolInformationSchemaTableDO selectByTableName(String tableName) {  
18 - return selectOne(new QueryWrapper<ToolInformationSchemaTableDO>().eq("table_name", tableName));  
19 - }  
20 -  
21 -}  
src/main/java/cn/iocoder/dashboard/modules/tool/dal/mysql/coegen/ToolInformationSchemaColumnMapper.java renamed to src/main/java/cn/iocoder/dashboard/modules/tool/dal/mysql/coegen/ToolSchemaColumnMapper.java
1 package cn.iocoder.dashboard.modules.tool.dal.mysql.coegen; 1 package cn.iocoder.dashboard.modules.tool.dal.mysql.coegen;
2 2
3 import cn.iocoder.dashboard.framework.mybatis.core.mapper.BaseMapperX; 3 import cn.iocoder.dashboard.framework.mybatis.core.mapper.BaseMapperX;
4 -import cn.iocoder.dashboard.modules.tool.dal.dataobject.codegen.ToolInformationSchemaColumnDO; 4 +import cn.iocoder.dashboard.modules.tool.dal.dataobject.codegen.ToolSchemaColumnDO;
5 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; 5 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
6 import org.apache.ibatis.annotations.Mapper; 6 import org.apache.ibatis.annotations.Mapper;
7 7
8 import java.util.List; 8 import java.util.List;
9 9
10 @Mapper 10 @Mapper
11 -public interface ToolInformationSchemaColumnMapper extends BaseMapperX<ToolInformationSchemaColumnDO> { 11 +public interface ToolSchemaColumnMapper extends BaseMapperX<ToolSchemaColumnDO> {
12 12
13 - default List<ToolInformationSchemaColumnDO> selectListByTableName(String tableName) {  
14 - return selectList(new QueryWrapper<ToolInformationSchemaColumnDO>().eq("table_name", tableName) 13 + default List<ToolSchemaColumnDO> selectListByTableName(String tableName) {
  14 + return selectList(new QueryWrapper<ToolSchemaColumnDO>().eq("table_name", tableName)
15 .orderByAsc("ordinal_position")); 15 .orderByAsc("ordinal_position"));
16 } 16 }
17 17
src/main/java/cn/iocoder/dashboard/modules/tool/dal/mysql/coegen/ToolSchemaTableMapper.java 0 → 100644
  1 +package cn.iocoder.dashboard.modules.tool.dal.mysql.coegen;
  2 +
  3 +import cn.iocoder.dashboard.framework.mybatis.core.mapper.BaseMapperX;
  4 +import cn.iocoder.dashboard.framework.mybatis.core.query.QueryWrapperX;
  5 +import cn.iocoder.dashboard.modules.tool.dal.dataobject.codegen.ToolSchemaTableDO;
  6 +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
  7 +import org.apache.ibatis.annotations.Mapper;
  8 +
  9 +import java.util.Collection;
  10 +import java.util.List;
  11 +
  12 +@Mapper
  13 +public interface ToolSchemaTableMapper extends BaseMapperX<ToolSchemaTableDO> {
  14 +
  15 + default List<ToolSchemaTableDO> selectList(Collection<String> tableSchemas, String tableName, String tableComment) {
  16 + return selectList(new QueryWrapperX<ToolSchemaTableDO>().in("table_schema", tableSchemas)
  17 + .eqIfPresent("table_name", tableName)
  18 + .eqIfPresent("table_comment", tableComment));
  19 + }
  20 +
  21 + default List<ToolSchemaTableDO> selectListByTableSchema(String tableSchema) {
  22 + return selectList(new QueryWrapper<ToolSchemaTableDO>().eq("table_schema", tableSchema));
  23 + }
  24 +
  25 + default ToolSchemaTableDO selectByTableName(String tableName) {
  26 + return selectOne(new QueryWrapper<ToolSchemaTableDO>().eq("table_name", tableName));
  27 + }
  28 +
  29 +}
src/main/java/cn/iocoder/dashboard/modules/tool/service/codegen/ToolCodegenService.java
@@ -5,6 +5,7 @@ import cn.iocoder.dashboard.modules.tool.controller.codegen.vo.ToolCodegenUpdate @@ -5,6 +5,7 @@ import cn.iocoder.dashboard.modules.tool.controller.codegen.vo.ToolCodegenUpdate
5 import cn.iocoder.dashboard.modules.tool.controller.codegen.vo.table.ToolCodegenTablePageReqVO; 5 import cn.iocoder.dashboard.modules.tool.controller.codegen.vo.table.ToolCodegenTablePageReqVO;
6 import cn.iocoder.dashboard.modules.tool.dal.dataobject.codegen.ToolCodegenColumnDO; 6 import cn.iocoder.dashboard.modules.tool.dal.dataobject.codegen.ToolCodegenColumnDO;
7 import cn.iocoder.dashboard.modules.tool.dal.dataobject.codegen.ToolCodegenTableDO; 7 import cn.iocoder.dashboard.modules.tool.dal.dataobject.codegen.ToolCodegenTableDO;
  8 +import cn.iocoder.dashboard.modules.tool.dal.dataobject.codegen.ToolSchemaTableDO;
8 9
9 import java.util.List; 10 import java.util.List;
10 import java.util.Map; 11 import java.util.Map;
@@ -63,4 +64,13 @@ public interface ToolCodegenService { @@ -63,4 +64,13 @@ public interface ToolCodegenService {
63 */ 64 */
64 Map<String, String> generationCodes(Long tableId); 65 Map<String, String> generationCodes(Long tableId);
65 66
  67 + /**
  68 + * 获得数据库自带的表定义列表
  69 + *
  70 + * @param tableName 表名称
  71 + * @param tableComment 表描述
  72 + * @return 表定义列表
  73 + */
  74 + List<ToolSchemaTableDO> getSchemaTableList(String tableName, String tableComment);
  75 +
66 } 76 }
src/main/java/cn/iocoder/dashboard/modules/tool/service/codegen/impl/ToolCodegenBuilder.java
@@ -6,8 +6,8 @@ import cn.iocoder.dashboard.framework.mybatis.core.dataobject.BaseDO; @@ -6,8 +6,8 @@ import cn.iocoder.dashboard.framework.mybatis.core.dataobject.BaseDO;
6 import cn.iocoder.dashboard.modules.tool.convert.codegen.ToolCodegenConvert; 6 import cn.iocoder.dashboard.modules.tool.convert.codegen.ToolCodegenConvert;
7 import cn.iocoder.dashboard.modules.tool.dal.dataobject.codegen.ToolCodegenColumnDO; 7 import cn.iocoder.dashboard.modules.tool.dal.dataobject.codegen.ToolCodegenColumnDO;
8 import cn.iocoder.dashboard.modules.tool.dal.dataobject.codegen.ToolCodegenTableDO; 8 import cn.iocoder.dashboard.modules.tool.dal.dataobject.codegen.ToolCodegenTableDO;
9 -import cn.iocoder.dashboard.modules.tool.dal.dataobject.codegen.ToolInformationSchemaColumnDO;  
10 -import cn.iocoder.dashboard.modules.tool.dal.dataobject.codegen.ToolInformationSchemaTableDO; 9 +import cn.iocoder.dashboard.modules.tool.dal.dataobject.codegen.ToolSchemaColumnDO;
  10 +import cn.iocoder.dashboard.modules.tool.dal.dataobject.codegen.ToolSchemaTableDO;
11 import cn.iocoder.dashboard.modules.tool.enums.codegen.ToolCodegenColumnHtmlTypeEnum; 11 import cn.iocoder.dashboard.modules.tool.enums.codegen.ToolCodegenColumnHtmlTypeEnum;
12 import cn.iocoder.dashboard.modules.tool.enums.codegen.ToolCodegenColumnListConditionEnum; 12 import cn.iocoder.dashboard.modules.tool.enums.codegen.ToolCodegenColumnListConditionEnum;
13 import cn.iocoder.dashboard.modules.tool.enums.codegen.ToolCodegenTemplateTypeEnum; 13 import cn.iocoder.dashboard.modules.tool.enums.codegen.ToolCodegenTemplateTypeEnum;
@@ -21,8 +21,8 @@ import static cn.hutool.core.text.CharSequenceUtil.*; @@ -21,8 +21,8 @@ import static cn.hutool.core.text.CharSequenceUtil.*;
21 21
22 /** 22 /**
23 * 代码生成器的 Builder,负责: 23 * 代码生成器的 Builder,负责:
24 - * 1. 将数据库的表 {@link ToolInformationSchemaTableDO} 定义,构建成 {@link ToolCodegenTableDO}  
25 - * 2. 将数据库的列 {@link ToolInformationSchemaColumnDO} 构定义,建成 {@link ToolCodegenColumnDO} 24 + * 1. 将数据库的表 {@link ToolSchemaTableDO} 定义,构建成 {@link ToolCodegenTableDO}
  25 + * 2. 将数据库的列 {@link ToolSchemaColumnDO} 构定义,建成 {@link ToolCodegenColumnDO}
26 */ 26 */
27 @Component 27 @Component
28 public class ToolCodegenBuilder { 28 public class ToolCodegenBuilder {
@@ -112,7 +112,7 @@ public class ToolCodegenBuilder { @@ -112,7 +112,7 @@ public class ToolCodegenBuilder {
112 LIST_OPERATION_RESULT_EXCLUDE_COLUMN.remove("createTime"); // 创建时间,还是需要返回的 112 LIST_OPERATION_RESULT_EXCLUDE_COLUMN.remove("createTime"); // 创建时间,还是需要返回的
113 } 113 }
114 114
115 - public ToolCodegenTableDO buildTable(ToolInformationSchemaTableDO schemaTable) { 115 + public ToolCodegenTableDO buildTable(ToolSchemaTableDO schemaTable) {
116 ToolCodegenTableDO table = ToolCodegenConvert.INSTANCE.convert(schemaTable); 116 ToolCodegenTableDO table = ToolCodegenConvert.INSTANCE.convert(schemaTable);
117 initTableDefault(table); 117 initTableDefault(table);
118 return table; 118 return table;
@@ -135,7 +135,7 @@ public class ToolCodegenBuilder { @@ -135,7 +135,7 @@ public class ToolCodegenBuilder {
135 table.setTemplateType(ToolCodegenTemplateTypeEnum.CRUD.getType()); 135 table.setTemplateType(ToolCodegenTemplateTypeEnum.CRUD.getType());
136 } 136 }
137 137
138 - public List<ToolCodegenColumnDO> buildColumns(List<ToolInformationSchemaColumnDO> schemaColumns) { 138 + public List<ToolCodegenColumnDO> buildColumns(List<ToolSchemaColumnDO> schemaColumns) {
139 List<ToolCodegenColumnDO> columns = ToolCodegenConvert.INSTANCE.convertList(schemaColumns); 139 List<ToolCodegenColumnDO> columns = ToolCodegenConvert.INSTANCE.convertList(schemaColumns);
140 columns.forEach(this::initColumnDefault); 140 columns.forEach(this::initColumnDefault);
141 return columns; 141 return columns;
src/main/java/cn/iocoder/dashboard/modules/tool/service/codegen/impl/ToolCodegenEngine.java
@@ -9,6 +9,7 @@ import cn.iocoder.dashboard.common.exception.util.ServiceExceptionUtil; @@ -9,6 +9,7 @@ import cn.iocoder.dashboard.common.exception.util.ServiceExceptionUtil;
9 import cn.iocoder.dashboard.common.pojo.CommonResult; 9 import cn.iocoder.dashboard.common.pojo.CommonResult;
10 import cn.iocoder.dashboard.common.pojo.PageParam; 10 import cn.iocoder.dashboard.common.pojo.PageParam;
11 import cn.iocoder.dashboard.common.pojo.PageResult; 11 import cn.iocoder.dashboard.common.pojo.PageResult;
  12 +import cn.iocoder.dashboard.framework.codegen.config.CodegenProperties;
12 import cn.iocoder.dashboard.framework.mybatis.core.dataobject.BaseDO; 13 import cn.iocoder.dashboard.framework.mybatis.core.dataobject.BaseDO;
13 import cn.iocoder.dashboard.framework.mybatis.core.mapper.BaseMapperX; 14 import cn.iocoder.dashboard.framework.mybatis.core.mapper.BaseMapperX;
14 import cn.iocoder.dashboard.framework.mybatis.core.query.QueryWrapperX; 15 import cn.iocoder.dashboard.framework.mybatis.core.query.QueryWrapperX;
@@ -19,6 +20,7 @@ import cn.iocoder.dashboard.util.date.DateUtils; @@ -19,6 +20,7 @@ import cn.iocoder.dashboard.util.date.DateUtils;
19 import com.google.common.collect.Maps; 20 import com.google.common.collect.Maps;
20 import org.springframework.stereotype.Component; 21 import org.springframework.stereotype.Component;
21 22
  23 +import javax.annotation.PostConstruct;
22 import javax.annotation.Resource; 24 import javax.annotation.Resource;
23 import java.util.HashMap; 25 import java.util.HashMap;
24 import java.util.LinkedHashMap; 26 import java.util.LinkedHashMap;
@@ -45,18 +47,30 @@ public class ToolCodegenEngine { @@ -45,18 +47,30 @@ public class ToolCodegenEngine {
45 */ 47 */
46 private static final Map<String, String> TEMPLATES = MapUtil.<String, String>builder(new LinkedHashMap<>()) // 有序 48 private static final Map<String, String> TEMPLATES = MapUtil.<String, String>builder(new LinkedHashMap<>()) // 有序
47 // Java 49 // Java
48 - .put("codegen/java/controller/controller.vm", "java/${basePackage}/${table.moduleName}/controller/${table.businessName}/${table.className}Controller.java")  
49 - .put("codegen/java/controller/vo/baseVO.vm", "java/${basePackage}/${table.moduleName}/controller/${table.businessName}/vo/${table.className}BaseVO.java")  
50 - .put("codegen/java/controller/vo/createReqVO.vm", "java/${basePackage}/${table.moduleName}/controller/${table.businessName}/vo/${table.className}CreateReqVO.java")  
51 - .put("codegen/java/controller/vo/pageReqVO.vm", "java/${basePackage}/${table.moduleName}/controller/${table.businessName}/vo/${table.className}PageReqVO.java")  
52 - .put("codegen/java/controller/vo/respVO.vm", "java/${basePackage}/${table.moduleName}/controller/${table.businessName}/vo/${table.className}RespVO.java")  
53 - .put("codegen/java/controller/vo/updateReqVO.vm", "java/${basePackage}/${table.moduleName}/controller/${table.businessName}/vo/${table.className}UpdateReqVO.java")  
54 - .put("codegen/java/convert/convert.vm", "java/${basePackage}/${table.moduleName}/convert/${table.businessName}/${table.className}Convert.java")  
55 - .put("codegen/java/dal/do.vm", "java/${basePackage}/${table.moduleName}/dal/dataobject/${table.businessName}/${table.className}DO.java")  
56 - .put("codegen/java/dal/mapper.vm", "java/${basePackage}/${table.moduleName}/dal/mysql/${table.businessName}/${table.className}Mapper.java")  
57 - .put("codegen/java/enums/errorcode.vm", "java/${basePackage}/${table.moduleName}/enums/${simpleModuleName_upperFirst}ErrorCodeConstants.java")  
58 - .put("codegen/java/service/service.vm", "java/${basePackage}/${table.moduleName}/service/${table.businessName}/${table.className}Service.java")  
59 - .put("codegen/java/service/serviceImpl.vm", "java/${basePackage}/${table.moduleName}/service/${table.businessName}/impl/${table.className}ServiceImpl.java") 50 + .put(javaTemplatePath("controller/controller"),
  51 + javaFilePath("controller/${table.businessName}/${table.className}Controller"))
  52 + .put(javaTemplatePath("controller/vo/baseVO"),
  53 + javaFilePath("controller/${table.businessName}/vo/${table.className}BaseVO"))
  54 + .put(javaTemplatePath("controller/vo/createReqVO"),
  55 + javaFilePath("controller/${table.businessName}/vo/${table.className}CreateReqVO"))
  56 + .put(javaTemplatePath("controller/vo/pageReqVO"),
  57 + javaFilePath("controller/${table.businessName}/vo/${table.className}PageReqVO"))
  58 + .put(javaTemplatePath("controller/vo/respVO"),
  59 + javaFilePath("controller/${table.businessName}/vo/${table.className}RespVO"))
  60 + .put(javaTemplatePath("controller/vo/updateReqVO"),
  61 + javaFilePath("controller/${table.businessName}/vo/${table.className}UpdateReqVO"))
  62 + .put(javaTemplatePath("convert/convert"),
  63 + javaFilePath("convert/${table.businessName}/${table.className}Convert"))
  64 + .put(javaTemplatePath("dal/do"),
  65 + javaFilePath("dal/dataobject/${table.businessName}/${table.className}DO"))
  66 + .put(javaTemplatePath("dal/mapper"),
  67 + javaFilePath("dal/mysql/${table.businessName}/${table.className}Mapper"))
  68 + .put(javaTemplatePath("enums/errorcode"),
  69 + javaFilePath("enums/${simpleModuleName_upperFirst}ErrorCodeConstants"))
  70 + .put(javaTemplatePath("service/service"),
  71 + javaFilePath("service/${table.businessName}/${table.className}Service"))
  72 + .put(javaTemplatePath("service/serviceImpl"),
  73 + javaFilePath("service/${table.businessName}/impl/${table.className}ServiceImpl"))
60 // Vue 74 // Vue
61 // SQL 75 // SQL
62 .build(); 76 .build();
@@ -64,6 +78,9 @@ public class ToolCodegenEngine { @@ -64,6 +78,9 @@ public class ToolCodegenEngine {
64 @Resource 78 @Resource
65 private ToolCodegenBuilder codegenBuilder; 79 private ToolCodegenBuilder codegenBuilder;
66 80
  81 + @Resource
  82 + private CodegenProperties codegenProperties;
  83 +
67 /** 84 /**
68 * 模板引擎,由 hutool 实现 85 * 模板引擎,由 hutool 实现
69 */ 86 */
@@ -78,13 +95,12 @@ public class ToolCodegenEngine { @@ -78,13 +95,12 @@ public class ToolCodegenEngine {
78 TemplateConfig config = new TemplateConfig(); 95 TemplateConfig config = new TemplateConfig();
79 config.setResourceMode(TemplateConfig.ResourceMode.CLASSPATH); 96 config.setResourceMode(TemplateConfig.ResourceMode.CLASSPATH);
80 this.templateEngine = TemplateUtil.createEngine(config); 97 this.templateEngine = TemplateUtil.createEngine(config);
81 - // 初始化基础 bindingMap  
82 - initGlobalBindingMap();  
83 } 98 }
84 99
  100 + @PostConstruct
85 private void initGlobalBindingMap() { 101 private void initGlobalBindingMap() {
86 // 全局配置 102 // 全局配置
87 - globalBindingMap.put("basePackage", "cn.iocoder.dashboard.modules"); // TODO 基础包, 抽成参数 103 + globalBindingMap.put("basePackage", codegenProperties.getBasePackage());
88 // 全局 Java Bean 104 // 全局 Java Bean
89 globalBindingMap.put("CommonResultClassName", CommonResult.class.getName()); 105 globalBindingMap.put("CommonResultClassName", CommonResult.class.getName());
90 globalBindingMap.put("PageResultClassName", PageResult.class.getName()); 106 globalBindingMap.put("PageResultClassName", PageResult.class.getName());
@@ -137,4 +153,12 @@ public class ToolCodegenEngine { @@ -137,4 +153,12 @@ public class ToolCodegenEngine {
137 return filePath; 153 return filePath;
138 } 154 }
139 155
  156 + private static String javaTemplatePath(String path) {
  157 + return "codegen/java/" + path + ".vm";
  158 + }
  159 +
  160 + private static String javaFilePath(String path) {
  161 + return "java/${basePackage}/${table.moduleName}/" + path + ".java";
  162 + }
  163 +
140 } 164 }
src/main/java/cn/iocoder/dashboard/modules/tool/service/codegen/impl/ToolCodegenServiceImpl.java
@@ -2,17 +2,18 @@ package cn.iocoder.dashboard.modules.tool.service.codegen.impl; @@ -2,17 +2,18 @@ package cn.iocoder.dashboard.modules.tool.service.codegen.impl;
2 2
3 import cn.hutool.core.collection.CollUtil; 3 import cn.hutool.core.collection.CollUtil;
4 import cn.iocoder.dashboard.common.pojo.PageResult; 4 import cn.iocoder.dashboard.common.pojo.PageResult;
  5 +import cn.iocoder.dashboard.framework.codegen.config.CodegenProperties;
5 import cn.iocoder.dashboard.modules.tool.controller.codegen.vo.ToolCodegenUpdateReqVO; 6 import cn.iocoder.dashboard.modules.tool.controller.codegen.vo.ToolCodegenUpdateReqVO;
6 import cn.iocoder.dashboard.modules.tool.controller.codegen.vo.table.ToolCodegenTablePageReqVO; 7 import cn.iocoder.dashboard.modules.tool.controller.codegen.vo.table.ToolCodegenTablePageReqVO;
7 import cn.iocoder.dashboard.modules.tool.convert.codegen.ToolCodegenConvert; 8 import cn.iocoder.dashboard.modules.tool.convert.codegen.ToolCodegenConvert;
8 -import cn.iocoder.dashboard.modules.tool.dal.mysql.coegen.ToolCodegenColumnMapper;  
9 -import cn.iocoder.dashboard.modules.tool.dal.mysql.coegen.ToolCodegenTableMapper;  
10 -import cn.iocoder.dashboard.modules.tool.dal.mysql.coegen.ToolInformationSchemaColumnMapper;  
11 -import cn.iocoder.dashboard.modules.tool.dal.mysql.coegen.ToolInformationSchemaTableMapper;  
12 import cn.iocoder.dashboard.modules.tool.dal.dataobject.codegen.ToolCodegenColumnDO; 9 import cn.iocoder.dashboard.modules.tool.dal.dataobject.codegen.ToolCodegenColumnDO;
13 import cn.iocoder.dashboard.modules.tool.dal.dataobject.codegen.ToolCodegenTableDO; 10 import cn.iocoder.dashboard.modules.tool.dal.dataobject.codegen.ToolCodegenTableDO;
14 -import cn.iocoder.dashboard.modules.tool.dal.dataobject.codegen.ToolInformationSchemaColumnDO;  
15 -import cn.iocoder.dashboard.modules.tool.dal.dataobject.codegen.ToolInformationSchemaTableDO; 11 +import cn.iocoder.dashboard.modules.tool.dal.dataobject.codegen.ToolSchemaColumnDO;
  12 +import cn.iocoder.dashboard.modules.tool.dal.dataobject.codegen.ToolSchemaTableDO;
  13 +import cn.iocoder.dashboard.modules.tool.dal.mysql.coegen.ToolCodegenColumnMapper;
  14 +import cn.iocoder.dashboard.modules.tool.dal.mysql.coegen.ToolCodegenTableMapper;
  15 +import cn.iocoder.dashboard.modules.tool.dal.mysql.coegen.ToolSchemaColumnMapper;
  16 +import cn.iocoder.dashboard.modules.tool.dal.mysql.coegen.ToolSchemaTableMapper;
16 import cn.iocoder.dashboard.modules.tool.service.codegen.ToolCodegenService; 17 import cn.iocoder.dashboard.modules.tool.service.codegen.ToolCodegenService;
17 import org.springframework.stereotype.Service; 18 import org.springframework.stereotype.Service;
18 import org.springframework.transaction.annotation.Transactional; 19 import org.springframework.transaction.annotation.Transactional;
@@ -30,9 +31,9 @@ import java.util.Map; @@ -30,9 +31,9 @@ import java.util.Map;
30 public class ToolCodegenServiceImpl implements ToolCodegenService { 31 public class ToolCodegenServiceImpl implements ToolCodegenService {
31 32
32 @Resource 33 @Resource
33 - private ToolInformationSchemaTableMapper informationSchemaTableMapper; 34 + private ToolSchemaTableMapper schemaTableMapper;
34 @Resource 35 @Resource
35 - private ToolInformationSchemaColumnMapper informationSchemaColumnMapper; 36 + private ToolSchemaColumnMapper schemaColumnMapper;
36 @Resource 37 @Resource
37 private ToolCodegenTableMapper codegenTableMapper; 38 private ToolCodegenTableMapper codegenTableMapper;
38 @Resource 39 @Resource
@@ -43,15 +44,18 @@ public class ToolCodegenServiceImpl implements ToolCodegenService { @@ -43,15 +44,18 @@ public class ToolCodegenServiceImpl implements ToolCodegenService {
43 @Resource 44 @Resource
44 private ToolCodegenEngine codegenEngine; 45 private ToolCodegenEngine codegenEngine;
45 46
  47 + @Resource
  48 + private CodegenProperties codegenProperties;
  49 +
46 @Override 50 @Override
47 @Transactional 51 @Transactional
48 public Long createCodegen(String tableName) { 52 public Long createCodegen(String tableName) {
49 // 从数据库中,获得数据库表结构 53 // 从数据库中,获得数据库表结构
50 - ToolInformationSchemaTableDO schemaTable = informationSchemaTableMapper.selectByTableName(tableName); 54 + ToolSchemaTableDO schemaTable = schemaTableMapper.selectByTableName(tableName);
51 if (schemaTable == null) { 55 if (schemaTable == null) {
52 throw new RuntimeException(""); // TODO 56 throw new RuntimeException(""); // TODO
53 } 57 }
54 - List<ToolInformationSchemaColumnDO> schemaColumns = informationSchemaColumnMapper.selectListByTableName(tableName); 58 + List<ToolSchemaColumnDO> schemaColumns = schemaColumnMapper.selectListByTableName(tableName);
55 if (CollUtil.isEmpty(schemaColumns)) { 59 if (CollUtil.isEmpty(schemaColumns)) {
56 throw new RuntimeException(""); // TODO 60 throw new RuntimeException(""); // TODO
57 } 61 }
@@ -119,4 +123,9 @@ public class ToolCodegenServiceImpl implements ToolCodegenService { @@ -119,4 +123,9 @@ public class ToolCodegenServiceImpl implements ToolCodegenService {
119 return codegenEngine.execute(table, columns); 123 return codegenEngine.execute(table, columns);
120 } 124 }
121 125
  126 + @Override
  127 + public List<ToolSchemaTableDO> getSchemaTableList(String tableName, String tableComment) {
  128 + return schemaTableMapper.selectList(codegenProperties.getDbSchemas(), tableName, tableComment);
  129 + }
  130 +
122 } 131 }
src/main/resources/application.yaml
@@ -44,10 +44,12 @@ spring: @@ -44,10 +44,12 @@ spring:
44 44
45 # 芋道配置项,设置当前项目所有自定义的配置 45 # 芋道配置项,设置当前项目所有自定义的配置
46 yudao: 46 yudao:
47 - version: 1.0.0 47 + info:
  48 + version: 1.0.0
  49 + base-package: cn.iocoder.dashboard
48 web: 50 web:
49 api-prefix: /api 51 api-prefix: /api
50 - controller-package: cn.iocoder.dashboard 52 + controller-package: ${yudao.info.base-package}
51 security: 53 security:
52 token-header: Authorization 54 token-header: Authorization
53 token-secret: abcdefghijklmnopqrstuvwxyz 55 token-secret: abcdefghijklmnopqrstuvwxyz
@@ -66,6 +68,9 @@ yudao: @@ -66,6 +68,9 @@ yudao:
66 height: 60 68 height: 60
67 file: 69 file:
68 base-path: http://127.0.0.1:1024/api/file/get/ 70 base-path: http://127.0.0.1:1024/api/file/get/
  71 + codegen:
  72 + base-package: ${yudao.info.base-package}.modules
  73 + db-schemas: ruoyi-vue-pro
69 74
70 # Apollo 配置中心 75 # Apollo 配置中心
71 apollo: 76 apollo:
@@ -89,7 +94,7 @@ mybatis-plus: @@ -89,7 +94,7 @@ mybatis-plus:
89 logic-delete-value: 1 # 逻辑已删除值(默认为 1) 94 logic-delete-value: 1 # 逻辑已删除值(默认为 1)
90 logic-not-delete-value: 0 # 逻辑未删除值(默认为 0) 95 logic-not-delete-value: 0 # 逻辑未删除值(默认为 0)
91 mapper-locations: classpath*:mapper/*.xml 96 mapper-locations: classpath*:mapper/*.xml
92 - type-aliases-package: cn.iocoder.dashboard.modules.*.dal.mysql.dataobject 97 + type-aliases-package: ${yudao.info.base-package}.modules.*.dal.dataobject
93 98
94 # Actuator 监控端点的配置项 99 # Actuator 监控端点的配置项
95 management: 100 management:
src/main/resources/banner.txt
1 芋道源码 http://www.iocoder.cn 1 芋道源码 http://www.iocoder.cn
2 -Application Version: ${yudao.version} 2 +Application Version: ${yudao.info.version}
3 Spring Boot Version: ${spring-boot.version} 3 Spring Boot Version: ${spring-boot.version}
4 -////////////////////////////////////////////////////////////////////  
5 -// _ooOoo_ //  
6 -// o8888888o //  
7 -// 88" . "88 //  
8 -// (| ^_^ |) //  
9 -// O\ = /O //  
10 -// ____/`---'\____ //  
11 -// .' \\| |// `. //  
12 -// / \\||| : |||// \ //  
13 -// / _||||| -:- |||||- \ //  
14 -// | | \\\ - /// | | //  
15 -// | \_| ''\---/'' | | //  
16 -// \ .-\__ `-` ___/-. / //  
17 -// ___`. .' /--.--\ `. . ___ //  
18 -// ."" '< `.___\_<|>_/___.' >'"". //  
19 -// | | : `- \`.;`\ _ /`;.`/ - ` : | | //  
20 -// \ \ `-. \_ __\ /__ _/ .-` / / //  
21 -// ========`-.____`-.___\_____/___.-`____.-'======== //  
22 -// `=---=' //  
23 -// ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ //  
24 -// 佛祖保佑 永不宕机 永无BUG //  
25 -//////////////////////////////////////////////////////////////////// 4 +
  5 +.__ __. ______ .______ __ __ _______
  6 +| \ | | / __ \ | _ \ | | | | / _____|
  7 +| \| | | | | | | |_) | | | | | | | __
  8 +| . ` | | | | | | _ < | | | | | | |_ |
  9 +| |\ | | `--' | | |_) | | `--' | | |__| |
  10 +|__| \__| \______/ |______/ \______/ \______|
  11 +
  12 +███╗ ██╗ ██████╗ ██████╗ ██╗ ██╗ ██████╗
  13 +████╗ ██║██╔═══██╗ ██╔══██╗██║ ██║██╔════╝
  14 +██╔██╗ ██║██║ ██║ ██████╔╝██║ ██║██║ ███╗
  15 +██║╚██╗██║██║ ██║ ██╔══██╗██║ ██║██║ ██║
  16 +██║ ╚████║╚██████╔╝ ██████╔╝╚██████╔╝╚██████╔╝
  17 +╚═╝ ╚═══╝ ╚═════╝ ╚═════╝ ╚═════╝ ╚═════╝
src/test/java/cn/iocoder/dashboard/modules/tool/dal/mysql/coegen/ToolInformationSchemaColumnMapperTest.java
1 package cn.iocoder.dashboard.modules.tool.dal.mysql.coegen; 1 package cn.iocoder.dashboard.modules.tool.dal.mysql.coegen;
2 2
3 import cn.iocoder.dashboard.TestApplication; 3 import cn.iocoder.dashboard.TestApplication;
4 -import cn.iocoder.dashboard.modules.tool.dal.dataobject.codegen.ToolInformationSchemaColumnDO; 4 +import cn.iocoder.dashboard.modules.tool.dal.dataobject.codegen.ToolSchemaColumnDO;
5 import org.junit.jupiter.api.Test; 5 import org.junit.jupiter.api.Test;
6 import org.springframework.boot.test.context.SpringBootTest; 6 import org.springframework.boot.test.context.SpringBootTest;
7 7
@@ -15,11 +15,11 @@ import static org.junit.jupiter.api.Assertions.assertTrue; @@ -15,11 +15,11 @@ import static org.junit.jupiter.api.Assertions.assertTrue;
15 public class ToolInformationSchemaColumnMapperTest { 15 public class ToolInformationSchemaColumnMapperTest {
16 16
17 @Resource 17 @Resource
18 - private ToolInformationSchemaColumnMapper toolInformationSchemaColumnMapper; 18 + private ToolSchemaColumnMapper toolInformationSchemaColumnMapper;
19 19
20 @Test 20 @Test
21 public void testSelectListByTableName() { 21 public void testSelectListByTableName() {
22 - List<ToolInformationSchemaColumnDO> columns = toolInformationSchemaColumnMapper 22 + List<ToolSchemaColumnDO> columns = toolInformationSchemaColumnMapper
23 .selectListByTableName("inf_config"); 23 .selectListByTableName("inf_config");
24 assertTrue(columns.size() > 0); 24 assertTrue(columns.size() > 0);
25 } 25 }
src/test/java/cn/iocoder/dashboard/modules/tool/dal/mysql/coegen/ToolInformationSchemaTableMapperTest.java
1 package cn.iocoder.dashboard.modules.tool.dal.mysql.coegen; 1 package cn.iocoder.dashboard.modules.tool.dal.mysql.coegen;
2 2
3 import cn.iocoder.dashboard.TestApplication; 3 import cn.iocoder.dashboard.TestApplication;
4 -import cn.iocoder.dashboard.modules.tool.dal.dataobject.codegen.ToolInformationSchemaTableDO; 4 +import cn.iocoder.dashboard.modules.tool.dal.dataobject.codegen.ToolSchemaTableDO;
5 import org.junit.jupiter.api.Test; 5 import org.junit.jupiter.api.Test;
6 import org.springframework.boot.test.context.SpringBootTest; 6 import org.springframework.boot.test.context.SpringBootTest;
7 7
@@ -14,11 +14,11 @@ import static org.junit.jupiter.api.Assertions.assertTrue; @@ -14,11 +14,11 @@ import static org.junit.jupiter.api.Assertions.assertTrue;
14 class ToolInformationSchemaTableMapperTest { 14 class ToolInformationSchemaTableMapperTest {
15 15
16 @Resource 16 @Resource
17 - private ToolInformationSchemaTableMapper toolInformationSchemaTableMapper; 17 + private ToolSchemaTableMapper toolInformationSchemaTableMapper;
18 18
19 @Test 19 @Test
20 public void tstSelectListByTableSchema() { 20 public void tstSelectListByTableSchema() {
21 - List<ToolInformationSchemaTableDO> tables = toolInformationSchemaTableMapper 21 + List<ToolSchemaTableDO> tables = toolInformationSchemaTableMapper
22 .selectListByTableSchema("ruoyi-vue-pro"); 22 .selectListByTableSchema("ruoyi-vue-pro");
23 assertTrue(tables.size() > 0); 23 assertTrue(tables.size() > 0);
24 } 24 }