update: 增加去出列前缀功能

增加生成代码时对数据库中列前缀的去除
pull/725/head
Emil.Zhang 2022-02-10 15:50:39 +08:00
parent db4f4bb4b2
commit 48a3ce6fdd
4 changed files with 23 additions and 3 deletions

View File

@ -73,6 +73,9 @@ public class GenConfig implements Serializable {
@ApiModelProperty(value = "表前缀")
private String prefix;
@ApiModelProperty(value = "列前缀")
private String columnPrefix;
@ApiModelProperty(value = "是否覆盖")
private Boolean cover = false;
}

View File

@ -240,7 +240,8 @@ public class GenUtil {
List<Map<String, Object>> betweens = new ArrayList<>();
// 存储不为空的字段信息
List<Map<String, Object>> isNotNullColumns = new ArrayList<>();
// 列前缀
String columnPrefix = genConfig.getColumnPrefix();
for (ColumnInfo column : columnInfos) {
Map<String, Object> listMap = new HashMap<>(16);
// 字段描述
@ -250,9 +251,20 @@ public class GenUtil {
// 主键类型
String colType = ColUtil.cloToJava(column.getColumnType());
// 小写开头的字段名
String changeColumnName = StringUtils.toCamelCase(column.getColumnName());
String changeColumnName = "";
if (StrUtil.isNotBlank(columnPrefix)) {
changeColumnName = StringUtils.toCamelCase(StrUtil.removePrefix(column.getColumnName(), columnPrefix));
} else {
changeColumnName = StringUtils.toCamelCase(column.getColumnName());
}
// 大写开头的字段名
String capitalColumnName = StringUtils.toCapitalizeCamelCase(column.getColumnName());
String capitalColumnName = "";
if (StrUtil.isNotBlank(columnPrefix)) {
capitalColumnName = StringUtils.toCapitalizeCamelCase(
StrUtil.removePrefix(column.getColumnName(), columnPrefix));
} else {
capitalColumnName = StringUtils.toCapitalizeCamelCase(column.getColumnName());
}
if (PK.equals(column.getKeyType())) {
// 存储主键类型
genMap.put("pkColumnType", colType);

3
sql/update.sql Normal file
View File

@ -0,0 +1,3 @@
# 20220210 代码生成配置表新增列前缀字段
alter table code_gen_config
add column column_prefix varchar(255) null comment '列前缀';

View File

@ -9,3 +9,5 @@
eladmin.sql 为 eladmin 项目完整的 sql 脚本,适合于初次使用的用户
### 更新迭代
update.sql 为 eladmin 项目更新迭代的 sql 脚本版本更新后务必检查是否运行过对应版本sql