提交 356e4b2d authored 作者: mry's avatar mry

feat(web): 执行记录的基本操作,优化了Swagger解析

上级 edf256f5
package org.matrix.database.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import org.matrix.enums.ExecutionRecType;
/**
* @author mry
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
@EqualsAndHashCode(callSuper = true)
@ApiModel(value = "ExecutionRecord对象", description = "执行记录")
@TableName(autoResultMap = true, value = "kt_execution_record")
public class ExecutionRecord extends BaseEntity {
@ApiModelProperty("名称")
private String name;
@ApiModelProperty("测试任务id")
private Long testTaskId;
@ApiModelProperty("用户id")
private Long userId;
@ApiModelProperty("执行状态,0:关闭,1:开启")
private ExecutionRecType status;
}
......@@ -25,6 +25,9 @@ public class Project extends BaseEntity {
@ApiModelProperty("名称")
private String name;
@ApiModelProperty("项目/v2/api-docs地址")
private String projectUrl;
@JsonIgnore
@ApiModelProperty("所属的用户id")
private Integer userId;
......
package org.matrix.database.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.matrix.database.entity.ExecutionRecord;
/**
* @author mry
*/
public interface ExecutionRecordMapper extends BaseMapper<ExecutionRecord> {
}
package org.matrix.database.service;
import com.baomidou.mybatisplus.extension.service.IService;
import org.matrix.database.entity.ExecutionRecord;
/**
* @author mry
*/
public interface IExecutionRecordService extends IService<ExecutionRecord> {
}
package org.matrix.database.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.matrix.database.entity.ExecutionRecord;
import org.matrix.database.mapper.ExecutionRecordMapper;
import org.matrix.database.service.IExecutionRecordService;
import org.springframework.stereotype.Service;
/**
* @author mry
*/
@Service
public class ExecutionRecordImpl extends ServiceImpl<ExecutionRecordMapper, ExecutionRecord> implements IExecutionRecordService {
}
package org.matrix.enums;
import com.baomidou.mybatisplus.annotation.EnumValue;
import lombok.AllArgsConstructor;
import lombok.Getter;
/**
* @author mry
*/
@Getter
@AllArgsConstructor
public enum ExecutionRecType {
/**
* 1,表示正在执行
*/
RUN(1,"执行"),
/**
* 0,表示已经停止
*/
STOP(0,"停止");
@EnumValue
private final int code;
private final String des;
}
package org.matrix.autotest.controller;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.matrix.database.entity.ExecutionRecord;
import org.matrix.database.service.IExecutionRecordService;
import org.matrix.database.vo.CommonResult;
import org.matrix.database.vo.CommonResultObj;
import org.springframework.http.ResponseEntity;
import org.springframework.util.StringUtils;
import org.springframework.web.bind.annotation.*;
import java.util.Optional;
/**
* @author mry
*/
@CrossOrigin
@RestController
@RequestMapping("/executionRecords")
@Api(tags = "对执行记录execution_record的基本操作")
public class ExecutionRecordController {
private final IExecutionRecordService executionRecordService;
public ExecutionRecordController(IExecutionRecordService executionRecordService) {
this.executionRecordService = executionRecordService;
}
/**
* 分页查询执行记录
*
* @param pageSize 每页多少条数据
* @param pageNum 当前页数
* @param name 执行记录名称
* @return 分页查询的结果, 执行记录
*/
@ApiOperation("分页查询执行记录")
@GetMapping
public ResponseEntity<CommonResultObj<Page<ExecutionRecord>>> findPageExecutionRecord(
int pageSize,
int pageNum,
String name) {
Page<ExecutionRecord> results = Optional.of(executionRecordService.page(Page.of(pageNum, pageSize)
, Wrappers.lambdaQuery(ExecutionRecord.class)
.like(StringUtils.hasLength(name)
, ExecutionRecord::getName, name))).orElse(new Page<>());
return results.getRecords().size() != 0
? CommonResult.success(results, "查询成功")
: CommonResult.failed(results, "查询失败或无数据");
}
/**
* 添加执行记录
*
* @param executionRecord 执行记录对象
* @return 添加的执行记录, 以及是否添加成功的提示信息
*/
@ApiOperation("添加执行记录")
@PostMapping
public ResponseEntity<CommonResultObj<ExecutionRecord>> insertExecutionRecord(@RequestBody ExecutionRecord executionRecord) {
return CommonResult.pred(executionRecordService::save, executionRecord
, "添加成功", "添加失败");
}
/**
* 修改执行记录
*
* @param executionRecord 执行记录对象
* @return 修改的执行记录, 以及是否修改成功的提示信息
*/
@ApiOperation("修改执行记录")
@PutMapping
public ResponseEntity<CommonResultObj<ExecutionRecord>> updateExecutionRecord(@RequestBody ExecutionRecord executionRecord) {
return CommonResult.pred(executionRecordService::updateById, executionRecord
, "修改成功", "修改失败");
}
/**
* 根据之间id删除执行记录
*
* @param id 执行记录id
* @return 删除的环境id, 以及是否删除成功的提示信息
*/
@ApiOperation("根据主键id删除执行记录")
@DeleteMapping("/{id}")
public ResponseEntity<CommonResultObj<Long>> deleteExecutionRecord(@PathVariable Long id) {
return CommonResult.pred(executionRecordService::removeById, id
, "删除成功", "删除失败或id不存在");
}
}
......@@ -81,6 +81,8 @@ public class SwaggerController {
@SuppressWarnings(value = "unchecked")
Map<String, String> objRequestMaps = (Map<String, String>) objRequest;
Object parameters = objRequestMaps.get("parameters");
Object tags = objRequestMaps.get("tags");
Object summary = objRequestMaps.get("summary");
List<String> parameterAllList = new ArrayList<>();
if (parameters != null) {
@SuppressWarnings(value = "all")
......@@ -103,7 +105,7 @@ public class SwaggerController {
parameterAllList.add("name=" + name + " type=" + type + " in=" + in);
}
}
list.add("{host=" + host + ", basePath=" + basePath + ", request=" + request + ", methodUrl=" + methodUrl + ", parameters=" + parameterAllList + "}");
list.add("{host=" + host + ", basePath=" + basePath + ", request=" + request + ", name=" + tags + "-" + summary + ", methodUrl=" + methodUrl + ", parameters=" + parameterAllList + "}");
}
}
return JSON.toJSON(list);
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论