diff --git a/sop-website/src/main/java/com/gitee/sop/websiteserver/manager/SwaggerDocParser.java b/sop-website/src/main/java/com/gitee/sop/websiteserver/manager/SwaggerDocParser.java index af3b419a..c7e366d2 100644 --- a/sop-website/src/main/java/com/gitee/sop/websiteserver/manager/SwaggerDocParser.java +++ b/sop-website/src/main/java/com/gitee/sop/websiteserver/manager/SwaggerDocParser.java @@ -148,8 +148,15 @@ public class SwaggerDocParser implements DocParser { List docParameterList = new ArrayList<>(); for (int i = 0; i < parameters.size(); i++) { JSONObject fieldJson = parameters.getJSONObject(i); - DocParameter docParameter = fieldJson.toJavaObject(DocParameter.class); - docParameterList.add(docParameter); + JSONObject schema = fieldJson.getJSONObject("schema"); + if (schema != null) { + RefInfo refInfo = getRefInfo(schema); + List parameterList = this.buildDocParameters(refInfo.ref, docRoot, true); + docParameterList.addAll(parameterList); + } else { + DocParameter docParameter = fieldJson.toJavaObject(DocParameter.class); + docParameterList.add(docParameter); + } } Map> collect = docParameterList.stream()