From 1ae70d71dc245911183fc3b26c7cc218ef7790b5 Mon Sep 17 00:00:00 2001 From: lvlivejp Date: Tue, 31 Aug 2021 02:02:25 +0000 Subject: [PATCH] update plugin/swagger-plugin/src/main/java/cn/torna/swaggerplugin/builder/ApiDocBuilder.java. --- .../torna/swaggerplugin/builder/ApiDocBuilder.java | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/plugin/swagger-plugin/src/main/java/cn/torna/swaggerplugin/builder/ApiDocBuilder.java b/plugin/swagger-plugin/src/main/java/cn/torna/swaggerplugin/builder/ApiDocBuilder.java index 368e7edb..a07fe1b8 100644 --- a/plugin/swagger-plugin/src/main/java/cn/torna/swaggerplugin/builder/ApiDocBuilder.java +++ b/plugin/swagger-plugin/src/main/java/cn/torna/swaggerplugin/builder/ApiDocBuilder.java @@ -113,7 +113,16 @@ public class ApiDocBuilder { * 从api参数中构建 */ protected List buildFieldDocInfosByType(Class clazz, boolean root) { - final Class targetClass = PluginUtil.isCollectionOrArray(clazz) ? getCollectionElementClass(clazz) : clazz; + Class targetClassRef = PluginUtil.isCollectionOrArray(clazz) ? getCollectionElementClass(clazz) : clazz; + + // 查找泛型 + if(targetClassRef.getName().equals("org.springframework.http.ResponseEntity")){ + Field body = ReflectionUtils.findField(targetClassRef, "body"); + String typeName = ((TypeVariable) body.getGenericType()).getName(); + targetClassRef = getGenericParamClass(targetClassRef, typeName); + } + + final Class targetClass = targetClassRef; // 如果是基本类型 if (!PluginUtil.isPojo(targetClass)) { return Collections.emptyList(); @@ -163,6 +172,9 @@ public class ApiDocBuilder { child.setExample(apiParamInfo.getExample()); child.setDescription(apiParamInfo.getValue()); child.setOrderIndex(apiParamInfo.getPosition()); + if(!StringUtils.isEmpty(apiParamInfo.getName())){ + child.setName(apiParamInfo.getName()); + } } } } -- Gitee