Merge pull request #7232 from dataease/pr@dev-v2@perf_api_doc_sort

perf: api接口文档排序
This commit is contained in:
fit2cloud-chenyw 2023-12-20 15:19:15 +08:00 committed by GitHub
commit 672879fb31
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
29 changed files with 121 additions and 47 deletions

View File

@ -22,12 +22,6 @@ spring:
port: 6379
password: 123456
database: 0
swagger-ui:
path: /swagger-ui.html
tags-sorter: alpha
operations-sorter: alpha
api-docs:
path: /v3/api-docs
jackson:
parser:
allow-numeric-leading-zeros: true
@ -52,11 +46,19 @@ quartz:
dataease:
version: '@project.version@'
origin-list: localhost:8081,127.0.0.1:8081,https://de2.fit2cloud.com,http://localhost:8080
apisix-api:
domain: http://192.168.0.121:9180
key: edd1c9f034335f136f87ad84b625c8f1
# springdoc-openapi项目配置
springdoc:
swagger-ui:
path: /swagger-ui.html
tags-sorter: alpha
#operations-sorter: alpha
api-docs:
path: /v3/api-docs
# knife4j的增强配置不需要增强可以不配
knife4j:
enable: true
setting:

View File

@ -24,7 +24,7 @@
<maven.compiler.target>17</maven.compiler.target>
<mybatis-plus.version>3.5.3.1</mybatis-plus.version>
<h2.version>2.2.220</h2.version>
<knife4j.version>4.1.0</knife4j.version>
<knife4j.version>4.4.0</knife4j.version>
<calcite-core.version>1.35.1</calcite-core.version>
<commons-dbcp2.version>2.6.0</commons-dbcp2.version>
<antlr.version>3.5.2</antlr.version>

View File

@ -1,7 +1,9 @@
package io.dataease.api.chart;
import com.github.xiaoymin.knife4j.annotations.ApiSupport;
import io.dataease.api.chart.dto.ChartViewDTO;
import io.dataease.api.chart.request.ChartExcelRequest;
import io.swagger.v3.oas.annotations.tags.Tag;
import jakarta.servlet.http.HttpServletResponse;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
@ -13,6 +15,8 @@ import java.util.List;
/**
* @Author Junjun
*/
@Tag(name = "视图管理:数据")
@ApiSupport(order = 989)
public interface ChartDataApi {
@PostMapping("getData")
ChartViewDTO getData(@RequestBody ChartViewDTO chartViewDTO) throws Exception;

View File

@ -1,7 +1,9 @@
package io.dataease.api.chart;
import com.github.xiaoymin.knife4j.annotations.ApiSupport;
import io.dataease.api.chart.dto.ChartViewDTO;
import io.dataease.api.chart.dto.ChartViewFieldDTO;
import io.swagger.v3.oas.annotations.tags.Tag;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
@ -13,6 +15,8 @@ import java.util.Map;
/**
* @Author Junjun
*/
@Tag(name = "视图管理:查看")
@ApiSupport(order = 988)
public interface ChartViewApi {
@PostMapping("getChart/{id}")
ChartViewDTO getData(@PathVariable Long id) throws Exception;

View File

@ -1,9 +1,11 @@
package io.dataease.api.dataset;
import com.github.xiaoymin.knife4j.annotations.ApiSupport;
import io.dataease.api.dataset.dto.DatasetTableDTO;
import io.dataease.api.dataset.dto.PreviewSqlDTO;
import io.dataease.api.dataset.union.DatasetGroupInfoDTO;
import io.dataease.dto.dataset.DatasetTableFieldDTO;
import io.swagger.v3.oas.annotations.tags.Tag;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
@ -13,6 +15,8 @@ import java.util.Map;
/**
* @Author Junjun
*/
@Tag(name = "数据集管理:数据")
@ApiSupport(order = 978)
public interface DatasetDataApi {
@PostMapping("previewData")
Map<String, Object> previewData(@RequestBody DatasetGroupInfoDTO datasetGroupInfoDTO) throws Exception;

View File

@ -1,8 +1,10 @@
package io.dataease.api.dataset;
import com.github.xiaoymin.knife4j.annotations.ApiSupport;
import io.dataease.api.dataset.dto.MultFieldValuesRequest;
import io.dataease.api.dataset.engine.SQLFunctionDTO;
import io.dataease.dto.dataset.DatasetTableFieldDTO;
import io.swagger.v3.oas.annotations.tags.Tag;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
@ -14,6 +16,8 @@ import java.util.Map;
/**
* @Author Junjun
*/
@Tag(name = "数据集管理:表")
@ApiSupport(order = 977)
public interface DatasetTableApi {
/**

View File

@ -1,6 +1,8 @@
package io.dataease.api.dataset;
import com.github.xiaoymin.knife4j.annotations.ApiSupport;
import io.dataease.api.dataset.dto.SqlLogDTO;
import io.swagger.v3.oas.annotations.tags.Tag;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
@ -10,6 +12,8 @@ import java.util.List;
/**
* @Author Junjun
*/
@Tag(name = "数据集管理:SQL日志")
@ApiSupport(order = 977)
public interface DatasetTableSqlLogApi {
@PostMapping("save")
void save(@RequestBody SqlLogDTO sqlLogDTO) throws Exception;

View File

@ -1,5 +1,6 @@
package io.dataease.api.dataset;
import com.github.xiaoymin.knife4j.annotations.ApiSupport;
import io.dataease.api.dataset.dto.DatasetNodeDTO;
import io.dataease.api.dataset.dto.DatasetTableDTO;
import io.dataease.api.dataset.dto.SqlVariableDetails;
@ -9,6 +10,7 @@ import io.dataease.auth.DeApiPath;
import io.dataease.auth.DePermit;
import io.dataease.model.BusiNodeRequest;
import io.dataease.model.BusiNodeVO;
import io.swagger.v3.oas.annotations.tags.Tag;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
@ -17,7 +19,8 @@ import org.springframework.web.bind.annotation.RequestBody;
import java.util.List;
import static io.dataease.constant.AuthResourceEnum.DATASET;
@Tag(name = "数据集管理:树")
@ApiSupport(order = 979)
@DeApiPath(value = "/datasetTree", rt = DATASET)
public interface DatasetTreeApi {

View File

@ -1,6 +1,7 @@
package io.dataease.api.ds;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.github.xiaoymin.knife4j.annotations.ApiSupport;
import io.dataease.api.dataset.dto.DatasetTableDTO;
import io.dataease.api.ds.vo.*;
import io.dataease.auth.DeApiPath;
@ -8,6 +9,7 @@ import io.dataease.auth.DePermit;
import io.dataease.exception.DEException;
import io.dataease.model.BusiNodeRequest;
import io.dataease.model.BusiNodeVO;
import io.swagger.v3.oas.annotations.tags.Tag;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
@ -16,7 +18,8 @@ import java.util.Map;
import static io.dataease.constant.AuthResourceEnum.DATASOURCE;
@Tag(name = "数据源管理:基础")
@ApiSupport(order = 969)
@DeApiPath(value = "/datasource", rt = DATASOURCE)
public interface DatasourceApi {
/**

View File

@ -1,14 +1,17 @@
package io.dataease.api.ds;
import com.github.xiaoymin.knife4j.annotations.ApiSupport;
import io.dataease.api.ds.vo.DatasourceDTO;
import io.dataease.api.ds.vo.DriveDTO;
import io.dataease.api.ds.vo.DriveJarDTO;
import io.swagger.v3.oas.annotations.tags.Tag;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import java.util.List;
@Tag(name = "数据源管理:驱动")
@ApiSupport(order = 968)
public interface DatasourceDriverApi {
/**
* 查询数据源树

View File

@ -1,5 +1,6 @@
package io.dataease.api.lark.api;
import com.github.xiaoymin.knife4j.annotations.ApiSupport;
import io.dataease.api.lark.dto.LarkEnableEditor;
import io.dataease.api.lark.dto.LarkTokenRequest;
import io.dataease.api.lark.vo.LarkInfoVO;
@ -11,6 +12,7 @@ import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
@Tag(name = "飞书设置")
@ApiSupport(order = 898)
public interface LarkApi {
@Operation(summary = "查询飞书信息")

View File

@ -2,6 +2,7 @@ package io.dataease.api.visualization;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.github.xiaoymin.knife4j.annotations.ApiSupport;
import io.dataease.api.visualization.request.DataVisualizationBaseRequest;
import io.dataease.api.visualization.request.VisualizationWorkbranchQueryRequest;
import io.dataease.api.visualization.vo.DataVisualizationVO;
@ -10,6 +11,7 @@ import io.dataease.auth.DeApiPath;
import io.dataease.auth.DePermit;
import io.dataease.model.BusiNodeRequest;
import io.dataease.model.BusiNodeVO;
import io.swagger.v3.oas.annotations.tags.Tag;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
@ -17,6 +19,8 @@ import java.util.List;
import static io.dataease.constant.AuthResourceEnum.PANEL;
@Tag(name = "可视化管理:基础")
@ApiSupport(order = 999)
@DeApiPath(value = "/dataVisualization", rt = PANEL)
public interface DataVisualizationApi {
/**

View File

@ -1,5 +1,6 @@
package io.dataease.api.visualization;
import com.github.xiaoymin.knife4j.annotations.ApiSupport;
import io.dataease.api.visualization.request.StaticResourceRequest;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag;
@ -7,8 +8,8 @@ import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import java.util.Map;
@Tag(name = "静态文件")
@Tag(name = "可视化管理:静态文件")
@ApiSupport(order = 998)
public interface StaticResourceApi {
@PostMapping("upload/{fileId}")
@Operation(summary = "上传静态文件")

View File

@ -1,7 +1,9 @@
package io.dataease.api.visualization;
import com.github.xiaoymin.knife4j.annotations.ApiSupport;
import io.dataease.api.visualization.request.VisualizationBackgroundRequest;
import io.dataease.api.visualization.vo.VisualizationBackgroundVO;
import io.swagger.v3.oas.annotations.tags.Tag;
import org.springframework.web.bind.annotation.GetMapping;
import java.util.List;
@ -11,6 +13,9 @@ import java.util.Map;
* @author : WangJiaHao
* @date : 2023/6/12 19:19
*/
@Tag(name = "可视化管理:背景")
@ApiSupport(order = 997)
public interface VisualizationBackgroundApi {
@GetMapping("/findAll")
Map<String, List<VisualizationBackgroundVO>> findAll();

View File

@ -1,10 +1,12 @@
package io.dataease.api.visualization;
import com.github.xiaoymin.knife4j.annotations.ApiSupport;
import io.dataease.api.visualization.dto.VisualizationLinkJumpDTO;
import io.dataease.api.visualization.request.VisualizationLinkJumpBaseRequest;
import io.dataease.api.visualization.response.VisualizationLinkJumpBaseResponse;
import io.dataease.api.visualization.vo.VisualizationViewTableVO;
import io.dataease.dto.dataset.DatasetTableFieldDTO;
import io.swagger.v3.oas.annotations.tags.Tag;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
@ -16,6 +18,8 @@ import java.util.List;
* @author : WangJiaHao
* @date : 2023/7/13
*/
@Tag(name = "可视化管理:跳转")
@ApiSupport(order = 995)
public interface VisualizationLinkJumpApi {

View File

@ -1,7 +1,9 @@
package io.dataease.api.visualization;
import com.github.xiaoymin.knife4j.annotations.ApiSupport;
import io.dataease.api.commons.BaseRspModel;
import io.dataease.api.visualization.request.VisualizationLinkageRequest;
import io.swagger.v3.oas.annotations.tags.Tag;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
@ -14,6 +16,9 @@ import java.util.Map;
* @author : WangJiaHao
* @date : 2023/7/13
*/
@Tag(name = "可视化管理:链接")
@ApiSupport(order = 996)
public interface VisualizationLinkageApi {

View File

@ -1,8 +1,10 @@
package io.dataease.api.visualization;
import com.github.xiaoymin.knife4j.annotations.ApiSupport;
import io.dataease.api.visualization.request.VisualizationStoreRequest;
import io.dataease.api.visualization.request.VisualizationWorkbranchQueryRequest;
import io.dataease.api.visualization.vo.VisualizationStoreVO;
import io.swagger.v3.oas.annotations.tags.Tag;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
@ -10,6 +12,8 @@ import org.springframework.web.bind.annotation.RequestBody;
import java.util.List;
@Tag(name = "可视化管理:收藏")
@ApiSupport(order = 994)
public interface VisualizationStoreApi {
@PostMapping("/execute")

View File

@ -1,11 +1,15 @@
package io.dataease.api.visualization;
import com.github.xiaoymin.knife4j.annotations.ApiSupport;
import io.dataease.api.visualization.request.VisualizationSubjectRequest;
import io.dataease.api.visualization.vo.VisualizationSubjectVO;
import io.swagger.v3.oas.annotations.tags.Tag;
import org.springframework.web.bind.annotation.*;
import java.util.List;
@Tag(name = "可视化管理:主题")
@ApiSupport(order = 993)
public interface VisualizationSubjectApi {
@PostMapping("/query")

View File

@ -1,5 +1,6 @@
package io.dataease.api.xpack.settings;
import com.github.xiaoymin.knife4j.annotations.ApiSupport;
import io.dataease.api.xpack.settings.request.XpackAuthenticationEditor;
import io.dataease.api.xpack.settings.vo.XpackAuthenticationStatusVO;
import io.dataease.api.xpack.settings.vo.XpackAuthenticationVO;
@ -12,6 +13,7 @@ import org.springframework.web.bind.annotation.RequestBody;
import java.util.List;
@Tag(name = "认证设置")
@ApiSupport(order = 899)
public interface XpackAuthenticationApi {
@Operation(summary = "同步")

View File

@ -16,7 +16,7 @@ import org.springframework.web.bind.annotation.RequestBody;
import java.util.List;
@Tag(name = "API Key")
@ApiSupport(order = 7, author = "fit2cloud-someone")
@ApiSupport(order = 884, author = "fit2cloud-someone")
public interface ApiKeyApi {
@Operation(summary = "生成")

View File

@ -17,7 +17,7 @@ import org.springframework.web.bind.annotation.RequestBody;
import java.util.List;
@Tag(name = "权限管理")
@ApiSupport(order = 5, author = "fit2cloud-someone")
@ApiSupport(order = 885, author = "fit2cloud-someone")
public interface AuthApi {
@Operation(summary = "查询资源树")

View File

@ -18,7 +18,7 @@ import org.springframework.web.bind.annotation.RequestBody;
import java.util.List;
@Tag(name = "嵌入式")
@ApiSupport(order = 6, author = "fit2cloud-someone")
@ApiSupport(order = 883, author = "fit2cloud-someone")
public interface EmbeddedApi {
@Operation(summary = "查询")

View File

@ -19,7 +19,7 @@ import org.springframework.web.bind.annotation.RequestBody;
* oidc登录回调请求头部X-Userinfo中获取用户 根据用户信息(没有就新建用户)再换取token
*/
@Tag(name = "登录")
@ApiSupport(order = 1, author = "fit2cloud-someone")
@ApiSupport(order = 889, author = "fit2cloud-someone")
public interface LoginApi {
/**
* 本地登录

View File

@ -24,7 +24,7 @@ import static io.dataease.constant.AuthResourceEnum.ORG;
import static io.dataease.constant.AuthResourceEnum.ROLE;
@Tag(name = "组织")
@ApiSupport(order = 4, author = "fit2cloud-someone")
@ApiSupport(order = 886, author = "fit2cloud-someone")
@DeApiPath(value = "/org", rt = ORG)
public interface OrgApi {

View File

@ -22,7 +22,7 @@ import java.util.List;
import static io.dataease.constant.AuthResourceEnum.ROLE;
@Tag(name = "角色")
@ApiSupport(order = 3, author = "fit2cloud-someone")
@ApiSupport(order = 887, author = "fit2cloud-someone")
@DeApiPath(value = "/role", rt = ROLE)
public interface RoleApi {

View File

@ -1,19 +1,25 @@
package io.dataease.api.permissions.setting.api;
import com.github.xiaoymin.knife4j.annotations.ApiSupport;
import io.dataease.api.permissions.setting.vo.PerSettingItemVO;
import io.swagger.v3.oas.annotations.Hidden;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import java.util.List;
@Hidden
@Tag(name = "认证相关设置")
@ApiSupport(order = 882)
public interface PerSettingApi {
@Operation(summary = "查询设置")
@GetMapping("/basic/query")
List<PerSettingItemVO> basicSetting();
@Operation(summary = "保存设置")
@PostMapping("/baisc/save")
void saveBasic(@RequestBody List<Object> settings);
}

View File

@ -1,19 +1,21 @@
package io.dataease.api.permissions.setting.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
@Schema(description = "设置项VO")
@Data
@NoArgsConstructor
public class PerSettingItemVO implements Serializable {
@Schema(description = "key")
private String pkey;
@Schema(description = "value")
private String pval;
@Schema(description = "类型")
private String type;
@Schema(description = "顺序")
private Integer sort;
}

View File

@ -25,7 +25,7 @@ import static io.dataease.constant.AuthResourceEnum.USER;
@Tag(name = "用户")
@ApiSupport(order = 2, author = "fit2cloud-someone")
@ApiSupport(order = 888, author = "fit2cloud-someone")
@DeApiPath(value = "/user", rt = USER)
public interface UserApi {

View File

@ -19,23 +19,18 @@ public class SwaggerConfig {
@Value("${dataease.version}")
private String version;
/*@Bean
@Bean
public GlobalOpenApiCustomizer orderGlobalOpenApiCustomizer() {
return openApi -> {
if (openApi.getTags() != null) {
if (openApi.getTags()!=null){
openApi.getTags().forEach(tag -> {
Map<String, Object> map = new HashMap<>();
map.put("x-order", RandomUtil.randomInt(0, 100));
Map<String,Object> map=new HashMap<>();
map.put("x-order", RandomUtil.randomInt(0,100));
tag.setExtensions(map);
});
}
if (openApi.getPaths() != null) {
openApi.addExtension("x-test123", "333");
openApi.getPaths().addExtension("x-abb", RandomUtil.randomInt(1, 100));
}
};
}*/
}
@Bean
public OpenAPI customOpenAPI() {
@ -52,28 +47,37 @@ public class SwaggerConfig {
.version(version));
}
@Bean
public GroupedOpenApi systemApi() {
return GroupedOpenApi.builder().group("权限相关xpack").packagesToScan("io.dataease.xpack.permissions").build();
}
@Bean
public GroupedOpenApi baseXpackApi() {
return GroupedOpenApi.builder().group("基础xpack").packagesToScan("io.dataease.xpack.base").build();
}
@Bean
public GroupedOpenApi visualizationApi() {
return GroupedOpenApi.builder().group("可视化管理").packagesToScan("io.dataease.visualization").build();
return GroupedOpenApi.builder().group("1-visualization").displayName("可视化管理").packagesToScan("io.dataease.visualization").build();
}
@Bean
public GroupedOpenApi chartApi() {
return GroupedOpenApi.builder().group("视图管理").packagesToScan("io.dataease.chart").build();
return GroupedOpenApi.builder().group("2-view").displayName("视图管理").packagesToScan("io.dataease.chart").build();
}
@Bean
public GroupedOpenApi datasetApi() {
return GroupedOpenApi.builder().group("数据集管理").packagesToScan("io.dataease.dataset").build();
return GroupedOpenApi.builder().group("3-dataset").displayName("数据集管理").packagesToScan("io.dataease.dataset").build();
}
@Bean
public GroupedOpenApi dsApi() {
return GroupedOpenApi.builder().group("数据源管理").packagesToScan("io.dataease.datasource").build();
return GroupedOpenApi.builder().group("4-datasource").displayName("数据源管理").packagesToScan("io.dataease.datasource").build();
}
@Bean
public GroupedOpenApi baseXpackApi() {
return GroupedOpenApi.builder().group("5-xpackbase").displayName("基础xpack").packagesToScan("io.dataease.xpack.base").build();
}
@Bean
public GroupedOpenApi systemApi() {
return GroupedOpenApi.builder().group("6-xpackpermission").displayName("权限相关xpack").packagesToScan("io.dataease.xpack.permissions").build();
}
}