Merge pull request #4508 from dataease/pr@dev@refactor_api-doc

refactor: Api文档整理
This commit is contained in:
王嘉豪 2023-02-10 10:04:03 +08:00 committed by GitHub
commit a1ba140d32
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 19 additions and 15 deletions

View File

@ -6,14 +6,13 @@ import io.dataease.auth.api.dto.LoginDto;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.web.bind.annotation.GetMapping;
import springfox.documentation.annotations.ApiIgnore;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import springfox.documentation.annotations.ApiIgnore;
import java.util.Map;
@Api(tags = "权限:权限管理")
@Api(tags = "登录:登录管理")
@ApiSupport(order = 10)
@RequestMapping("/api/auth")
public interface AuthApi {

View File

@ -8,15 +8,17 @@ import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import java.util.List;
@Api(tags = "权限:动态菜单")
@Api(tags = "登录:动态菜单")
@ApiSupport(order = 20)
@RequestMapping("/api/dynamicMenu")
public interface DynamicMenuApi {
/**
* 根据heads中获取的token 获取username 获取对应权限的菜单
*
* @return
*/
@ApiOperation("查询")

View File

@ -7,15 +7,19 @@ import com.google.common.base.Predicate;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.beans.factory.config.BeanPostProcessor;
import org.springframework.context.annotation.*;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Import;
import springfox.bean.validators.configuration.BeanValidatorPluginsConfiguration;
import springfox.documentation.RequestHandler;
import springfox.documentation.builders.*;
import springfox.documentation.builders.ApiInfoBuilder;
import springfox.documentation.builders.PathSelectors;
import springfox.documentation.oas.annotations.EnableOpenApi;
import springfox.documentation.service.*;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spi.service.contexts.SecurityContext;
import springfox.documentation.spring.web.plugins.Docket;
import java.util.ArrayList;
import java.util.List;
@ -23,7 +27,7 @@ import java.util.List;
@EnableOpenApi
@Configuration
@Import(BeanValidatorPluginsConfiguration.class)
public class Knife4jConfiguration implements BeanPostProcessor{
public class Knife4jConfiguration implements BeanPostProcessor {
private static final String splitor = ",";
@ -33,7 +37,6 @@ public class Knife4jConfiguration implements BeanPostProcessor{
private String version;
@Autowired
public Knife4jConfiguration(OpenApiExtensionResolver openApiExtensionResolver) {
this.openApiExtensionResolver = openApiExtensionResolver;
@ -41,7 +44,7 @@ public class Knife4jConfiguration implements BeanPostProcessor{
@Bean(value = "authApi")
public Docket authApi() {
return defaultApi("权限管理", "io.dataease.auth");
return defaultApi("登录管理", "io.dataease.auth");
}
@Bean(value = "chartApi")
@ -69,24 +72,24 @@ public class Knife4jConfiguration implements BeanPostProcessor{
return defaultApi("系统管理", "io.dataease.controller.sys,io.dataease.plugins.server");
}
private ApiInfo apiInfo(){
private ApiInfo apiInfo() {
return new ApiInfoBuilder()
.title("DataEase")
.description("人人可用的开源数据可视化分析工具")
.termsOfServiceUrl("https://dataease.io")
.contact(new Contact("Dataease","https://www.fit2cloud.com/dataease/index.html","dataease@fit2cloud.com"))
.contact(new Contact("Dataease", "https://www.fit2cloud.com/dataease/index.html", "dataease@fit2cloud.com"))
.version(version)
.build();
}
private Docket defaultApi(String groupName, String packageName) {
List<SecurityScheme> securitySchemes=new ArrayList<>();
List<SecurityScheme> securitySchemes = new ArrayList<>();
securitySchemes.add(accessKey());
securitySchemes.add(signature());
List<SecurityContext> securityContexts = new ArrayList<>();
securityContexts.add(securityContext());
Docket docket=new Docket(DocumentationType.OAS_30)
Docket docket = new Docket(DocumentationType.OAS_30)
.apiInfo(apiInfo())
.groupName(groupName)
.select()
@ -131,7 +134,7 @@ public class Knife4jConfiguration implements BeanPostProcessor{
return input -> declaringClass(input).transform(handlerPackage(basePackage)).or(true);
}
private static Function<Class<?>, Boolean> handlerPackage(final String basePackage) {
private static Function<Class<?>, Boolean> handlerPackage(final String basePackage) {
return input -> {
// 循环判断匹配
for (String strPackage : basePackage.split(splitor)) {

View File

@ -29,7 +29,7 @@ import javax.annotation.Resource;
import java.util.*;
import java.util.stream.Collectors;
@Api(tags = "权限管理")
@Api(tags = "xpack权限管理")
@RequestMapping("/plugin/auth")
@RestController
public class XAuthServer {