提交 28e54d9b authored 作者: mry's avatar mry

fix(web): 修改了swaggerController

上级 6c6790e3
...@@ -26,6 +26,7 @@ import java.util.ArrayList; ...@@ -26,6 +26,7 @@ import java.util.ArrayList;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.Set; import java.util.Set;
import java.util.regex.Pattern;
/** /**
* @author mry * @author mry
...@@ -36,10 +37,10 @@ import java.util.Set; ...@@ -36,10 +37,10 @@ import java.util.Set;
@Api(tags = "Swagger接口读取与解析") @Api(tags = "Swagger接口读取与解析")
public class SwaggerController { public class SwaggerController {
private final IEnvironmentService service; private final IEnvironmentService environmentService;
public SwaggerController(IEnvironmentService service) { public SwaggerController(IEnvironmentService environmentService) {
this.service = service; this.environmentService = environmentService;
} }
public String loadJson(String url) { public String loadJson(String url) {
...@@ -61,15 +62,26 @@ public class SwaggerController { ...@@ -61,15 +62,26 @@ public class SwaggerController {
return json.toString(); return json.toString();
} }
/**
* 快速添加接口
*
* @param projectId 项目id
* @param id 环境id
* @param pageSize 每页多少条数据
* @param pageNum 当前第几页
* @return Swagger中的数据
*/
@PostMapping @PostMapping
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
@ApiOperation(value = "快速添加接口") @ApiOperation(value = "快速添加接口")
public List<InterfaceInformation> parameter(Long projectId, Long id) { public List<InterfaceInformation> parameter(Long projectId, Long id, int pageSize, int pageNum, String name) {
service.setIsDefaultByWrapper(false, //将所有的默认选项置为false
environmentService.setIsDefaultByWrapper(false,
Wrappers.lambdaQuery(Environment.class).eq(Environment::getProjectId, projectId)); Wrappers.lambdaQuery(Environment.class).eq(Environment::getProjectId, projectId));
service.setIsDefaultByWrapper(true, //将选中的环境置为true,后续默认选择这个环境
environmentService.setIsDefaultByWrapper(true,
Wrappers.lambdaQuery(Environment.class).eq(Environment::getId, id)); Wrappers.lambdaQuery(Environment.class).eq(Environment::getId, id));
Environment environment = service.getById(id); Environment environment = environmentService.getById(id);
String url = String.format("%s/v2/api-docs", environment.getIp()); String url = String.format("%s/v2/api-docs", environment.getIp());
//获得json字符串 //获得json字符串
String json = loadJson(url); String json = loadJson(url);
...@@ -131,7 +143,7 @@ public class SwaggerController { ...@@ -131,7 +143,7 @@ public class SwaggerController {
} }
} }
} }
return list; int total = list.size();
return list.subList(pageSize * (pageNum - 1), (Math.min((pageNum * pageSize), total)));
} }
} }
package org.matrix.autotest.swaggerData.swaggerEntity; package org.matrix.autotest.swaggerData.swaggerEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data; import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.List; import java.util.List;
...@@ -8,41 +12,51 @@ import java.util.List; ...@@ -8,41 +12,51 @@ import java.util.List;
* @author mry * @author mry
*/ */
@Data @Data
@AllArgsConstructor
@NoArgsConstructor
@ApiModel(value = "接口信息")
public class InterfaceInformation { public class InterfaceInformation {
/** /**
* ip 以及端口信息 * ip 以及端口信息
*/ */
@ApiModelProperty(value = "ip以及端口信息")
private String host; private String host;
/** /**
* / * /
*/ */
@ApiModelProperty(value = "/")
private String basePath; private String basePath;
/** /**
* 请求方式 * 请求方式
*/ */
@ApiModelProperty(value = "请求方式")
private String request; private String request;
/** /**
* 标签 * 标签
*/ */
@ApiModelProperty(value = "标签")
private String tags; private String tags;
/** /**
* 总结 * 总结
*/ */
@ApiModelProperty(value = "总结")
private String summary; private String summary;
/** /**
* 方法拼接的url * 方法拼接的url
*/ */
@ApiModelProperty(value = "方法拼接的url")
private String methodUrl; private String methodUrl;
/** /**
* 参数 * 参数
*/ */
@ApiModelProperty(value = "参数")
private List<Parameter> parameterAllList; private List<Parameter> parameterAllList;
} }
package org.matrix.autotest.swaggerData.swaggerEntity; package org.matrix.autotest.swaggerData.swaggerEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data; import lombok.Data;
import lombok.NoArgsConstructor;
/** /**
* @author mry * @author mry
*/ */
@Data @Data
@AllArgsConstructor
@NoArgsConstructor
@ApiModel(value = "参数信息")
public class Parameter { public class Parameter {
/** /**
* 名称 * 名称
*/ */
@ApiModelProperty(value = "参数名称")
private String name; private String name;
/** /**
* 类型 * 类型
*/ */
@ApiModelProperty(value = "参数类型")
private String type; private String type;
/** /**
* in * in
*/ */
@ApiModelProperty(value = "in")
private String in; private String in;
} }
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论