diff --git a/src/main/java/com/power/doc/builder/AdocDocBuilder.java b/src/main/java/com/power/doc/builder/AdocDocBuilder.java index 28ef741..a83183b 100644 --- a/src/main/java/com/power/doc/builder/AdocDocBuilder.java +++ b/src/main/java/com/power/doc/builder/AdocDocBuilder.java @@ -64,7 +64,7 @@ public class AdocDocBuilder { */ public static void buildApiDoc(ApiConfig config, JavaProjectBuilder javaProjectBuilder) { DocBuilderTemplate builderTemplate = new DocBuilderTemplate(); - builderTemplate.checkAndInit(config); + builderTemplate.checkAndInit(config,false); config.setParamsDataToTree(false); config.setAdoc(true); ProjectDocConfigBuilder configBuilder = new ProjectDocConfigBuilder(config, javaProjectBuilder); @@ -91,7 +91,7 @@ public class AdocDocBuilder { config.setAdoc(false); ProjectDocConfigBuilder configBuilder = new ProjectDocConfigBuilder(config, new JavaProjectBuilder()); DocBuilderTemplate builderTemplate = new DocBuilderTemplate(); - builderTemplate.checkAndInit(config); + builderTemplate.checkAndInit(config,false); builderTemplate.buildSingleApi(configBuilder, controllerName, API_DOC_ADOC_TPL, API_EXTENSION); } } diff --git a/src/main/java/com/power/doc/builder/ApiDocBuilder.java b/src/main/java/com/power/doc/builder/ApiDocBuilder.java index 1c97568..7521e8b 100644 --- a/src/main/java/com/power/doc/builder/ApiDocBuilder.java +++ b/src/main/java/com/power/doc/builder/ApiDocBuilder.java @@ -62,7 +62,7 @@ public class ApiDocBuilder { */ public static void buildApiDoc(ApiConfig config, JavaProjectBuilder javaProjectBuilder) { DocBuilderTemplate builderTemplate = new DocBuilderTemplate(); - builderTemplate.checkAndInit(config); + builderTemplate.checkAndInit(config,false); config.setAdoc(false); config.setParamsDataToTree(false); ProjectDocConfigBuilder configBuilder = new ProjectDocConfigBuilder(config, javaProjectBuilder); @@ -91,7 +91,7 @@ public class ApiDocBuilder { JavaProjectBuilder javaProjectBuilder = new JavaProjectBuilder(); ProjectDocConfigBuilder configBuilder = new ProjectDocConfigBuilder(config, javaProjectBuilder); DocBuilderTemplate builderTemplate = new DocBuilderTemplate(); - builderTemplate.checkAndInit(config); + builderTemplate.checkAndInit(config,false); builderTemplate.buildSingleApi(configBuilder, controllerName, API_DOC_MD_TPL, API_EXTENSION); } } diff --git a/src/main/java/com/power/doc/builder/BaseDocBuilderTemplate.java b/src/main/java/com/power/doc/builder/BaseDocBuilderTemplate.java index 1f69472..cb02824 100644 --- a/src/main/java/com/power/doc/builder/BaseDocBuilderTemplate.java +++ b/src/main/java/com/power/doc/builder/BaseDocBuilderTemplate.java @@ -58,9 +58,9 @@ public class BaseDocBuilderTemplate { * * @param config Api config */ - public void checkAndInit(ApiConfig config) { + public void checkAndInit(ApiConfig config,boolean torna) { this.checkAndInitForGetApiData(config); - if (StringUtil.isEmpty(config.getOutPath())) { + if (StringUtil.isEmpty(config.getOutPath())&&!torna) { throw new RuntimeException("doc output path can't be null or empty"); } } diff --git a/src/main/java/com/power/doc/builder/HtmlApiDocBuilder.java b/src/main/java/com/power/doc/builder/HtmlApiDocBuilder.java index a02b791..3c29774 100644 --- a/src/main/java/com/power/doc/builder/HtmlApiDocBuilder.java +++ b/src/main/java/com/power/doc/builder/HtmlApiDocBuilder.java @@ -72,7 +72,7 @@ public class HtmlApiDocBuilder { */ public static void buildApiDoc(ApiConfig config, JavaProjectBuilder javaProjectBuilder) { DocBuilderTemplate builderTemplate = new DocBuilderTemplate(); - builderTemplate.checkAndInit(config); + builderTemplate.checkAndInit(config,false); config.setParamsDataToTree(false); ProjectDocConfigBuilder configBuilder = new ProjectDocConfigBuilder(config, javaProjectBuilder); IDocBuildTemplate docBuildTemplate = BuildTemplateFactory.getDocBuildTemplate(config.getFramework()); diff --git a/src/main/java/com/power/doc/builder/OpenApiBuilder.java b/src/main/java/com/power/doc/builder/OpenApiBuilder.java index 0c2c067..6e23896 100644 --- a/src/main/java/com/power/doc/builder/OpenApiBuilder.java +++ b/src/main/java/com/power/doc/builder/OpenApiBuilder.java @@ -51,7 +51,7 @@ public class OpenApiBuilder { public static void buildOpenApi(ApiConfig config) { DocBuilderTemplate builderTemplate = new DocBuilderTemplate(); - builderTemplate.checkAndInit(config); + builderTemplate.checkAndInit(config,false); JavaProjectBuilder javaProjectBuilder = new JavaProjectBuilder(); ProjectDocConfigBuilder configBuilder = new ProjectDocConfigBuilder(config, javaProjectBuilder); openApiCreate(config, configBuilder); @@ -65,7 +65,7 @@ public class OpenApiBuilder { */ public static void buildOpenApi(ApiConfig config, JavaProjectBuilder projectBuilder) { DocBuilderTemplate builderTemplate = new DocBuilderTemplate(); - builderTemplate.checkAndInit(config); + builderTemplate.checkAndInit(config,false); ProjectDocConfigBuilder configBuilder = new ProjectDocConfigBuilder(config, projectBuilder); openApiCreate(config, configBuilder); } diff --git a/src/main/java/com/power/doc/builder/PostmanJsonBuilder.java b/src/main/java/com/power/doc/builder/PostmanJsonBuilder.java index b52c484..f752cd1 100644 --- a/src/main/java/com/power/doc/builder/PostmanJsonBuilder.java +++ b/src/main/java/com/power/doc/builder/PostmanJsonBuilder.java @@ -61,7 +61,7 @@ public class PostmanJsonBuilder { */ public static void buildPostmanCollection(ApiConfig config) { DocBuilderTemplate builderTemplate = new DocBuilderTemplate(); - builderTemplate.checkAndInit(config); + builderTemplate.checkAndInit(config,false); JavaProjectBuilder javaProjectBuilder = new JavaProjectBuilder(); ProjectDocConfigBuilder configBuilder = new ProjectDocConfigBuilder(config, javaProjectBuilder); postManCreate(config, configBuilder); @@ -75,7 +75,7 @@ public class PostmanJsonBuilder { */ public static void buildPostmanCollection(ApiConfig config, JavaProjectBuilder projectBuilder) { DocBuilderTemplate builderTemplate = new DocBuilderTemplate(); - builderTemplate.checkAndInit(config); + builderTemplate.checkAndInit(config,false); config.setParamsDataToTree(false); ProjectDocConfigBuilder configBuilder = new ProjectDocConfigBuilder(config, projectBuilder); postManCreate(config, configBuilder); diff --git a/src/main/java/com/power/doc/builder/TornaBuilder.java b/src/main/java/com/power/doc/builder/TornaBuilder.java index d08a1aa..39caffb 100644 --- a/src/main/java/com/power/doc/builder/TornaBuilder.java +++ b/src/main/java/com/power/doc/builder/TornaBuilder.java @@ -75,7 +75,7 @@ public class TornaBuilder { public static void buildApiDoc(ApiConfig config, JavaProjectBuilder javaProjectBuilder) { config.setParamsDataToTree(true); DocBuilderTemplate builderTemplate = new DocBuilderTemplate(); - builderTemplate.checkAndInit(config); + builderTemplate.checkAndInit(config,true); ProjectDocConfigBuilder configBuilder = new ProjectDocConfigBuilder(config, javaProjectBuilder); IDocBuildTemplate docBuildTemplate = BuildTemplateFactory.getDocBuildTemplate(config.getFramework()); List apiDocList = docBuildTemplate.getApiData(configBuilder); diff --git a/src/main/java/com/power/doc/builder/rpc/RpcDocBuilderTemplate.java b/src/main/java/com/power/doc/builder/rpc/RpcDocBuilderTemplate.java index 38f6a3a..d55e360 100644 --- a/src/main/java/com/power/doc/builder/rpc/RpcDocBuilderTemplate.java +++ b/src/main/java/com/power/doc/builder/rpc/RpcDocBuilderTemplate.java @@ -61,7 +61,7 @@ public class RpcDocBuilderTemplate extends BaseDocBuilderTemplate { if (StringUtil.isEmpty(config.getFramework())) { config.setFramework(FrameworkEnum.DUBBO.getFramework()); } - super.checkAndInit(config); + super.checkAndInit(config,false); config.setOutPath(config.getOutPath() + FILE_SEPARATOR + RPC_OUT_DIR); } diff --git a/src/main/java/com/power/doc/template/SpringBootDocBuildTemplate.java b/src/main/java/com/power/doc/template/SpringBootDocBuildTemplate.java index a82a277..0dc018c 100644 --- a/src/main/java/com/power/doc/template/SpringBootDocBuildTemplate.java +++ b/src/main/java/com/power/doc/template/SpringBootDocBuildTemplate.java @@ -1160,25 +1160,11 @@ public class SpringBootDocBuildTemplate implements IDocBuildTemplate { simpleGicType = gicType.substring(gicType.lastIndexOf(".") + 1).toLowerCase(); // is array if (JavaClassValidateUtil.isCollection(name) || JavaClassValidateUtil.isArray(name)) { - boolean hasRequestBody = false; - //param has @RequestBody ? - List annotations = parameter.getAnnotations(); - for (JavaAnnotation annotation : annotations) { - if (REQUEST_BODY_FULLY.equals(annotation.getType().getName())) { - hasRequestBody = true; - break; - } - } - //formData - multiple data - if (!hasRequestBody && javaParameters.size() > 1) { - return; + apiMethodDoc.setIsRequestArray(1); + if (JavaClassValidateUtil.isPrimitive(gicType)) { + apiMethodDoc.setRequestArrayType(simpleGicType); } else { - apiMethodDoc.setIsRequestArray(1); - if (JavaClassValidateUtil.isPrimitive(gicType)) { - apiMethodDoc.setRequestArrayType(simpleGicType); - } else { - apiMethodDoc.setRequestArrayType(OBJECT); - } + apiMethodDoc.setRequestArrayType(OBJECT); } } }