Skip to content

Commit ccf62a2

Browse files
committed
add swagger-yml.ftl
1 parent 3007dba commit ccf62a2

File tree

4 files changed

+36
-1
lines changed

4 files changed

+36
-1
lines changed

generator-web/src/main/java/com/softdev/system/generator/entity/FieldInfo.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ public class FieldInfo {
1313
private String columnName;
1414
private String fieldName;
1515
private String fieldClass;
16+
private String swaggerClass;
1617
private String fieldComment;
1718

1819
}

generator-web/src/main/java/com/softdev/system/generator/util/TableParseUtil.java

Lines changed: 18 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -189,9 +189,24 @@ public static ClassInfo processTableIntoClassInfo(ParamInfo paramInfo)
189189
} else {
190190
fieldName = columnName;
191191
}
192+
columnLine = columnLine.substring(columnLine.indexOf("`") + 1).trim();
192193

194+
//swagger class
195+
String swaggerClass = "string" ;
196+
if (columnLine.contains(" tinyint")) {
197+
swaggerClass = "integer";
198+
} else if (columnLine.contains(" int") || columnLine.contains(" smallint")) {
199+
swaggerClass = "integer";
200+
} else if (columnLine.contains(" bigint")) {
201+
swaggerClass = "integer";
202+
} else if (columnLine.contains(" float")) {
203+
swaggerClass = "number";
204+
} else if (columnLine.contains(" double")) {
205+
swaggerClass = "number";
206+
} else if (columnLine.contains(" boolean")) {
207+
swaggerClass = "boolean";
208+
}
193209
// field class
194-
columnLine = columnLine.substring(columnLine.indexOf("`") + 1).trim();
195210
// int(11) NOT NULL AUTO_INCREMENT COMMENT '用户ID',
196211
String fieldClass = Object.class.getSimpleName();
197212
//2018-9-16 zhengk 补充char/clob/blob/json等类型,如果类型未知,默认为String
@@ -287,9 +302,11 @@ public static ClassInfo processTableIntoClassInfo(ParamInfo paramInfo)
287302
}
288303

289304
FieldInfo fieldInfo = new FieldInfo();
305+
//
290306
fieldInfo.setColumnName(columnName);
291307
fieldInfo.setFieldName(fieldName);
292308
fieldInfo.setFieldClass(fieldClass);
309+
fieldInfo.setSwaggerClass(swaggerClass);
293310
fieldInfo.setFieldComment(fieldComment);
294311

295312
fieldList.add(fieldInfo);

generator-web/src/main/resources/template.json

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -167,6 +167,11 @@
167167
"id": "73",
168168
"name": "sql",
169169
"description": "sql"
170+
},
171+
{
172+
"id": "74",
173+
"name": "swagger-yml",
174+
"description": "swagger-yml"
170175
}
171176
]
172177
}
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
2+
<#if classInfo.fieldList?exists && classInfo.fieldList?size gt 0>
3+
${classInfo.className}:
4+
type: "object"
5+
properties:
6+
<#list classInfo.fieldList as fieldItem >
7+
${fieldItem.fieldName}:
8+
type: ${fieldItem.swaggerClass}
9+
description: <#if isComment?exists && isComment==true>"${fieldItem.fieldComment}"</#if>
10+
</#list>
11+
</#if>
12+

0 commit comments

Comments
 (0)