|
@@ -0,0 +1,54 @@
|
|
|
+package com.aizuda.boot.config;
|
|
|
+
|
|
|
+import io.swagger.v3.oas.annotations.OpenAPIDefinition;
|
|
|
+import io.swagger.v3.oas.models.Components;
|
|
|
+import io.swagger.v3.oas.models.ExternalDocumentation;
|
|
|
+import io.swagger.v3.oas.models.OpenAPI;
|
|
|
+import io.swagger.v3.oas.models.info.Info;
|
|
|
+import io.swagger.v3.oas.models.security.SecurityRequirement;
|
|
|
+import io.swagger.v3.oas.models.security.SecurityScheme;
|
|
|
+import org.springdoc.core.models.GroupedOpenApi;
|
|
|
+import org.springframework.context.annotation.Bean;
|
|
|
+import org.springframework.context.annotation.Configuration;
|
|
|
+
|
|
|
+/**
|
|
|
+ * OpenApi 配置信息
|
|
|
+ *
|
|
|
+ * @author hubin
|
|
|
+ * @since 2023-07-19
|
|
|
+ */
|
|
|
+@OpenAPIDefinition
|
|
|
+@Configuration
|
|
|
+public class OpenApiConfiguration {
|
|
|
+
|
|
|
+ @Bean
|
|
|
+ public OpenAPI springShopOpenAPI() {
|
|
|
+ final String loginToken = "accessToken";
|
|
|
+ return new OpenAPI().info(new Info().title("AiZuDa Boot API")
|
|
|
+ .description("爱组搭 ~ 每个人都是架构师,组件搭配干活不累!")
|
|
|
+ .version("v1.0.0")).externalDocs(new ExternalDocumentation()
|
|
|
+ .description("爱组搭低代码组件化开发平台")
|
|
|
+ .url("http://aizuda.com"))
|
|
|
+ .components(new Components().addSecuritySchemes(loginToken, new SecurityScheme()
|
|
|
+ .type(SecurityScheme.Type.APIKEY)
|
|
|
+ .in(SecurityScheme.In.HEADER)
|
|
|
+ .name(loginToken)))
|
|
|
+ .addSecurityItem(new SecurityRequirement().addList(loginToken));
|
|
|
+ }
|
|
|
+
|
|
|
+ @Bean
|
|
|
+ public GroupedOpenApi v1Api() {
|
|
|
+ return GroupedOpenApi.builder().group("v1").pathsToMatch("/v1/**").build();
|
|
|
+ }
|
|
|
+
|
|
|
+ @Bean
|
|
|
+ public GroupedOpenApi authApi() {
|
|
|
+ return GroupedOpenApi.builder().group("系统授权").pathsToMatch("/auth/**").build();
|
|
|
+ }
|
|
|
+
|
|
|
+ @Bean
|
|
|
+ public GroupedOpenApi sysApi() {
|
|
|
+ return GroupedOpenApi.builder().group("系统管理").pathsToMatch("/sys/**").build();
|
|
|
+ }
|
|
|
+}
|
|
|
+
|