Merge branch 'develop'

This commit is contained in:
ray
2024-07-31 07:48:29 +08:00
6 changed files with 96 additions and 39 deletions

View File

@@ -40,7 +40,7 @@ public class GenFieldConfig extends BaseEntity {
/**
* 字段长度
*/
private String columnLength;
private Integer maxLength;
/**
* 字段名称

View File

@@ -75,6 +75,9 @@ public class GenConfigForm {
@Schema(description = "是否必填")
private Integer isRequired;
@Schema(description = "最大长度")
private Integer maxLength;
@Schema(description = "表单类型")
private FormTypeEnum formType;

View File

@@ -140,18 +140,19 @@ public class GeneratorServiceImpl implements GeneratorService {
/**
* 创建默认字段配置
*
* @param tableColumn 表字段元数据
* @param columnMetaData 表字段元数据
* @return
*/
private GenFieldConfig createDefaultFieldConfig(ColumnMetaData tableColumn) {
private GenFieldConfig createDefaultFieldConfig(ColumnMetaData columnMetaData) {
GenFieldConfig fieldConfig = new GenFieldConfig();
fieldConfig.setColumnName(tableColumn.getColumnName());
fieldConfig.setColumnType(tableColumn.getDataType());
fieldConfig.setFieldComment(tableColumn.getColumnComment());
fieldConfig.setFieldName(StrUtil.toCamelCase(tableColumn.getColumnName()));
fieldConfig.setIsRequired("YES".equals(tableColumn.getIsNullable()) ? 1 : 0);
fieldConfig.setColumnName(columnMetaData.getColumnName());
fieldConfig.setColumnType(columnMetaData.getDataType());
fieldConfig.setFieldComment(columnMetaData.getColumnComment());
fieldConfig.setFieldName(StrUtil.toCamelCase(columnMetaData.getColumnName()));
fieldConfig.setIsRequired("YES".equals(columnMetaData.getIsNullable()) ? 1 : 0);
fieldConfig.setFormType(FormTypeEnum.INPUT);
fieldConfig.setQueryType(QueryTypeEnum.EQ);
fieldConfig.setMaxLength(columnMetaData.getCharacterMaximumLength());
return fieldConfig;
}
@@ -316,13 +317,27 @@ public class GeneratorServiceImpl implements GeneratorService {
bindMap.put("businessName", genConfig.getBusinessName());
bindMap.put("fieldConfigs", fieldConfigs);
boolean hasLocalDateTime = false;
boolean hasBigDecimal = false;
boolean hasRequiredField = false;
for (GenFieldConfig fieldConfig : fieldConfigs) {
bindMap.put("hasLocalDateTime", "LocalDateTime".equals(fieldConfig.getFieldType()));
bindMap.put("hasBigDecimal", "BigDecimal".equals(fieldConfig.getFieldType()));
bindMap.put("hasRequiredField", ObjectUtil.equals(fieldConfig.getIsRequired(), 1));
if ("LocalDateTime".equals(fieldConfig.getFieldType())) {
hasLocalDateTime = true;
}
if ("BigDecimal".equals(fieldConfig.getFieldType())) {
hasBigDecimal = true;
}
if (ObjectUtil.equals(fieldConfig.getIsRequired(), 1)) {
hasRequiredField = true;
}
fieldConfig.setTsType(JavaTypeEnum.getTsTypeByJavaType(fieldConfig.getFieldType()));
}
bindMap.put("hasLocalDateTime", hasLocalDateTime);
bindMap.put("hasBigDecimal", hasBigDecimal);
bindMap.put("hasRequiredField", hasRequiredField);
TemplateEngine templateEngine = TemplateUtil.createEngine(new TemplateConfig("templates", TemplateConfig.ResourceMode.CLASSPATH));
Template template = templateEngine.getTemplate(templateConfig.getTemplatePath());
String content = template.render(bindMap);