diff --git a/mybatis-flex-codegen/src/main/java/com/mybatisflex/codegen/entity/Column.java b/mybatis-flex-codegen/src/main/java/com/mybatisflex/codegen/entity/Column.java index 7e1c603d..1fc07bb0 100644 --- a/mybatis-flex-codegen/src/main/java/com/mybatisflex/codegen/entity/Column.java +++ b/mybatis-flex-codegen/src/main/java/com/mybatisflex/codegen/entity/Column.java @@ -311,12 +311,13 @@ public class Column { return importClasses; } - public boolean isLarge() { - if (columnConfig != null && columnConfig.getLarge() != null) { - return columnConfig.getLarge(); - } else { - return false; + public boolean isDefaultColumn() { + if (columnConfig == null) { + return true; } + boolean isLarge = columnConfig.getLarge() != null && columnConfig.getLarge(); + boolean isLogicDelete = columnConfig.getLogicDelete() != null && columnConfig.getLogicDelete(); + return !isLarge && !isLogicDelete; } @Override diff --git a/mybatis-flex-codegen/src/main/resources/templates/enjoy/tableDef.tpl b/mybatis-flex-codegen/src/main/resources/templates/enjoy/tableDef.tpl index c2089fa7..7bf6f3b1 100644 --- a/mybatis-flex-codegen/src/main/resources/templates/enjoy/tableDef.tpl +++ b/mybatis-flex-codegen/src/main/resources/templates/enjoy/tableDef.tpl @@ -20,7 +20,7 @@ public class #(tableDefClassName) extends TableDef { #end public final QueryColumn #(tableDefConfig.buildFieldName("allColumns")) = new QueryColumn(this, "*"); - public final QueryColumn[] #(tableDefConfig.buildFieldName("defaultColumns")) = new QueryColumn[]{#for(column: table.columns)#if(!column.isLarge())#(tableDefConfig.buildFieldName(column.property))#if(for.index + 1 != for.size), #end#end#end}; + public final QueryColumn[] #(tableDefConfig.buildFieldName("defaultColumns")) = new QueryColumn[]{#for(column: table.columns)#if(column.isDefaultColumn())#(tableDefConfig.buildFieldName(column.property))#if(for.index + 1 != for.size), #end#end#end}; public #(tableDefClassName)() { super("#(schema)", "#(table.name)"); diff --git a/mybatis-flex-codegen/src/test/java/com/mybatisflex/codegen/test/GeneratorTest.java b/mybatis-flex-codegen/src/test/java/com/mybatisflex/codegen/test/GeneratorTest.java index a3aa3dbe..97a501ce 100644 --- a/mybatis-flex-codegen/src/test/java/com/mybatisflex/codegen/test/GeneratorTest.java +++ b/mybatis-flex-codegen/src/test/java/com/mybatisflex/codegen/test/GeneratorTest.java @@ -16,7 +16,6 @@ package com.mybatisflex.codegen.test; -import com.mybatisflex.annotation.KeyType; import com.mybatisflex.codegen.Generator; import com.mybatisflex.codegen.config.ColumnConfig; import com.mybatisflex.codegen.config.GlobalConfig; @@ -24,6 +23,7 @@ import com.mybatisflex.codegen.config.TableConfig; import com.mybatisflex.codegen.config.TableDefConfig; import com.mybatisflex.spring.service.impl.CacheableServiceImpl; import com.zaxxer.hikari.HikariDataSource; +import org.junit.Test; import java.util.function.UnaryOperator; @@ -149,7 +149,7 @@ public class GeneratorTest { generator.generate(); } -// @Test + @Test public void testCodeGen3() { //配置数据源 HikariDataSource dataSource = new HikariDataSource(); @@ -176,16 +176,20 @@ public class GeneratorTest { ColumnConfig columnConfig = new ColumnConfig(); columnConfig.setColumnName("phonenumber"); columnConfig.setLarge(true); - columnConfig.setKeyType(KeyType.None); TableConfig tableConfig = new TableConfig(); tableConfig.setTableName("sys_user"); tableConfig.addColumnConfig(columnConfig); + ColumnConfig logicDelete = new ColumnConfig(); + logicDelete.setColumnName("del_flag"); + logicDelete.setLogicDelete(true); + //设置表前缀和只生成哪些表 globalConfig.getStrategyConfig() .setTablePrefix("sys_") .setGenerateTable("sys_user") + .setColumnConfig(logicDelete) .setTableConfig(tableConfig); //配置生成 tableDef