add swagger-yml.ftl

This commit is contained in:
Fuuqiu 2021-04-22 11:25:59 +08:00
parent 3007dbac2e
commit ccf62a24b7
4 changed files with 37 additions and 2 deletions

View File

@ -13,6 +13,7 @@ public class FieldInfo {
private String columnName;
private String fieldName;
private String fieldClass;
private String swaggerClass;
private String fieldComment;
}

View File

@ -189,9 +189,24 @@ public class TableParseUtil {
} else {
fieldName = columnName;
}
// field class
columnLine = columnLine.substring(columnLine.indexOf("`") + 1).trim();
//swagger class
String swaggerClass = "string" ;
if (columnLine.contains(" tinyint")) {
swaggerClass = "integer";
} else if (columnLine.contains(" int") || columnLine.contains(" smallint")) {
swaggerClass = "integer";
} else if (columnLine.contains(" bigint")) {
swaggerClass = "integer";
} else if (columnLine.contains(" float")) {
swaggerClass = "number";
} else if (columnLine.contains(" double")) {
swaggerClass = "number";
} else if (columnLine.contains(" boolean")) {
swaggerClass = "boolean";
}
// field class
// int(11) NOT NULL AUTO_INCREMENT COMMENT '用户ID',
String fieldClass = Object.class.getSimpleName();
//2018-9-16 zhengk 补充char/clob/blob/json等类型如果类型未知默认为String
@ -287,9 +302,11 @@ public class TableParseUtil {
}
FieldInfo fieldInfo = new FieldInfo();
//
fieldInfo.setColumnName(columnName);
fieldInfo.setFieldName(fieldName);
fieldInfo.setFieldClass(fieldClass);
fieldInfo.setSwaggerClass(swaggerClass);
fieldInfo.setFieldComment(fieldComment);
fieldList.add(fieldInfo);

View File

@ -167,6 +167,11 @@
"id": "73",
"name": "sql",
"description": "sql"
},
{
"id": "74",
"name": "swagger-yml",
"description": "swagger-yml"
}
]
}

View File

@ -0,0 +1,12 @@
<#if classInfo.fieldList?exists && classInfo.fieldList?size gt 0>
${classInfo.className}:
type: "object"
properties:
<#list classInfo.fieldList as fieldItem >
${fieldItem.fieldName}:
type: ${fieldItem.swaggerClass}
description: <#if isComment?exists && isComment==true>"${fieldItem.fieldComment}"</#if>
</#list>
</#if>