From 88280b61aae0545ad2b59743a595475a0bb60af0 Mon Sep 17 00:00:00 2001 From: wenyann <64353056+wenyann@users.noreply.github.com> Date: Tue, 26 Jan 2021 10:17:19 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20swagger=E5=AE=9A=E6=97=B6=E5=90=8C?= =?UTF-8?q?=E6=AD=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../api/jmeter/APIBackendListenerClient.java | 3 + .../api/service/ApiTestCaseService.java | 12 +- .../base/domain/SwaggerUrlProject.java | 22 + .../base/domain/SwaggerUrlProjectExample.java | 620 ++++++++++++++++++ .../base/mapper/SwaggerUrlProjectMapper.java | 31 + .../base/mapper/SwaggerUrlProjectMapper.xml | 231 +++++++ .../commons/constants/ApiRunMode.java | 2 +- .../io/metersphere/track/dto/TestCaseDTO.java | 1 + 8 files changed, 914 insertions(+), 8 deletions(-) create mode 100644 backend/src/main/java/io/metersphere/base/domain/SwaggerUrlProject.java create mode 100644 backend/src/main/java/io/metersphere/base/domain/SwaggerUrlProjectExample.java create mode 100644 backend/src/main/java/io/metersphere/base/mapper/SwaggerUrlProjectMapper.java create mode 100644 backend/src/main/java/io/metersphere/base/mapper/SwaggerUrlProjectMapper.xml diff --git a/backend/src/main/java/io/metersphere/api/jmeter/APIBackendListenerClient.java b/backend/src/main/java/io/metersphere/api/jmeter/APIBackendListenerClient.java index e5c421006e..ba7836e762 100644 --- a/backend/src/main/java/io/metersphere/api/jmeter/APIBackendListenerClient.java +++ b/backend/src/main/java/io/metersphere/api/jmeter/APIBackendListenerClient.java @@ -174,6 +174,9 @@ public class APIBackendListenerClient extends AbstractBackendListenerClient impl if (StringUtils.isBlank(debugReportId)) { apiDefinitionExecResultService.saveApiResult(testResult, ApiRunMode.DEFINITION.name()); } + } else if (StringUtils.equals(this.runMode, ApiRunMode.JENKINS.name())) { + apiDefinitionService.addResult(testResult); + apiDefinitionExecResultService.saveApiResult(testResult, ApiRunMode.DEFINITION.name()); } else if (StringUtils.equalsAny(this.runMode, ApiRunMode.API_PLAN.name(), ApiRunMode.SCHEDULE_API_PLAN.name())) { apiDefinitionService.addResult(testResult); diff --git a/backend/src/main/java/io/metersphere/api/service/ApiTestCaseService.java b/backend/src/main/java/io/metersphere/api/service/ApiTestCaseService.java index 88fa857651..f612b84f64 100644 --- a/backend/src/main/java/io/metersphere/api/service/ApiTestCaseService.java +++ b/backend/src/main/java/io/metersphere/api/service/ApiTestCaseService.java @@ -22,7 +22,6 @@ import io.metersphere.base.mapper.ext.ExtApiDefinitionExecResultMapper; import io.metersphere.base.mapper.ext.ExtApiTestCaseMapper; import io.metersphere.base.mapper.ext.ExtTestPlanApiCaseMapper; import io.metersphere.base.mapper.ext.ExtTestPlanTestCaseMapper; -import io.metersphere.commons.constants.ApiRunMode; import io.metersphere.commons.exception.MSException; import io.metersphere.commons.utils.*; import io.metersphere.i18n.Translator; @@ -470,9 +469,11 @@ public class ApiTestCaseService { if (testCaseWithBLOBs != null && StringUtils.isNotEmpty(testCaseWithBLOBs.getRequest())) { try { HashTree jmeterHashTree = this.generateHashTree(request, testCaseWithBLOBs); - String runMode = ApiRunMode.DEFINITION.name(); +/* + String runMode = ApiRunMode.JENKINS.name(); +*/ // 调用执行方法 - jMeterService.runDefinition(request.getReportId(), jmeterHashTree, request.getReportId(), runMode); + jMeterService.runDefinition(request.getReportId(), jmeterHashTree, request.getReportId(), request.getRunMode()); } catch (Exception ex) { LogUtil.error(ex.getMessage()); @@ -540,10 +541,7 @@ public class ApiTestCaseService { } public String getExecResult(String id) { - ApiDefinitionExecResultExample apidefinitionexecresultexample = new ApiDefinitionExecResultExample(); - ApiDefinitionExecResultExample.Criteria criteria = apidefinitionexecresultexample.createCriteria(); - criteria.andResourceIdEqualTo(id); - String status = apiDefinitionExecResultMapper.selectByExample(apidefinitionexecresultexample).get(0).getStatus(); + String status = apiDefinitionExecResultMapper.selectExecResult(id); return status; } } diff --git a/backend/src/main/java/io/metersphere/base/domain/SwaggerUrlProject.java b/backend/src/main/java/io/metersphere/base/domain/SwaggerUrlProject.java new file mode 100644 index 0000000000..025660bfbc --- /dev/null +++ b/backend/src/main/java/io/metersphere/base/domain/SwaggerUrlProject.java @@ -0,0 +1,22 @@ +package io.metersphere.base.domain; + +import lombok.Data; + +import java.io.Serializable; + +@Data +public class SwaggerUrlProject implements Serializable { + private String id; + + private String projectId; + + private String swaggerUrl; + + private String moduleId; + + private String modulePath; + + private String modeId; + + private static final long serialVersionUID = 1L; +} \ No newline at end of file diff --git a/backend/src/main/java/io/metersphere/base/domain/SwaggerUrlProjectExample.java b/backend/src/main/java/io/metersphere/base/domain/SwaggerUrlProjectExample.java new file mode 100644 index 0000000000..a2e92e7a4f --- /dev/null +++ b/backend/src/main/java/io/metersphere/base/domain/SwaggerUrlProjectExample.java @@ -0,0 +1,620 @@ +package io.metersphere.base.domain; + +import java.util.ArrayList; +import java.util.List; + +public class SwaggerUrlProjectExample { + protected String orderByClause; + + protected boolean distinct; + + protected List oredCriteria; + + public SwaggerUrlProjectExample() { + oredCriteria = new ArrayList(); + } + + public void setOrderByClause(String orderByClause) { + this.orderByClause = orderByClause; + } + + public String getOrderByClause() { + return orderByClause; + } + + public void setDistinct(boolean distinct) { + this.distinct = distinct; + } + + public boolean isDistinct() { + return distinct; + } + + public List getOredCriteria() { + return oredCriteria; + } + + public void or(Criteria criteria) { + oredCriteria.add(criteria); + } + + public Criteria or() { + Criteria criteria = createCriteriaInternal(); + oredCriteria.add(criteria); + return criteria; + } + + public Criteria createCriteria() { + Criteria criteria = createCriteriaInternal(); + if (oredCriteria.size() == 0) { + oredCriteria.add(criteria); + } + return criteria; + } + + protected Criteria createCriteriaInternal() { + Criteria criteria = new Criteria(); + return criteria; + } + + public void clear() { + oredCriteria.clear(); + orderByClause = null; + distinct = false; + } + + protected abstract static class GeneratedCriteria { + protected List criteria; + + protected GeneratedCriteria() { + super(); + criteria = new ArrayList(); + } + + public boolean isValid() { + return criteria.size() > 0; + } + + public List getAllCriteria() { + return criteria; + } + + public List getCriteria() { + return criteria; + } + + protected void addCriterion(String condition) { + if (condition == null) { + throw new RuntimeException("Value for condition cannot be null"); + } + criteria.add(new Criterion(condition)); + } + + protected void addCriterion(String condition, Object value, String property) { + if (value == null) { + throw new RuntimeException("Value for " + property + " cannot be null"); + } + criteria.add(new Criterion(condition, value)); + } + + protected void addCriterion(String condition, Object value1, Object value2, String property) { + if (value1 == null || value2 == null) { + throw new RuntimeException("Between values for " + property + " cannot be null"); + } + criteria.add(new Criterion(condition, value1, value2)); + } + + public Criteria andIdIsNull() { + addCriterion("id is null"); + return (Criteria) this; + } + + public Criteria andIdIsNotNull() { + addCriterion("id is not null"); + return (Criteria) this; + } + + public Criteria andIdEqualTo(String value) { + addCriterion("id =", value, "id"); + return (Criteria) this; + } + + public Criteria andIdNotEqualTo(String value) { + addCriterion("id <>", value, "id"); + return (Criteria) this; + } + + public Criteria andIdGreaterThan(String value) { + addCriterion("id >", value, "id"); + return (Criteria) this; + } + + public Criteria andIdGreaterThanOrEqualTo(String value) { + addCriterion("id >=", value, "id"); + return (Criteria) this; + } + + public Criteria andIdLessThan(String value) { + addCriterion("id <", value, "id"); + return (Criteria) this; + } + + public Criteria andIdLessThanOrEqualTo(String value) { + addCriterion("id <=", value, "id"); + return (Criteria) this; + } + + public Criteria andIdLike(String value) { + addCriterion("id like", value, "id"); + return (Criteria) this; + } + + public Criteria andIdNotLike(String value) { + addCriterion("id not like", value, "id"); + return (Criteria) this; + } + + public Criteria andIdIn(List values) { + addCriterion("id in", values, "id"); + return (Criteria) this; + } + + public Criteria andIdNotIn(List values) { + addCriterion("id not in", values, "id"); + return (Criteria) this; + } + + public Criteria andIdBetween(String value1, String value2) { + addCriterion("id between", value1, value2, "id"); + return (Criteria) this; + } + + public Criteria andIdNotBetween(String value1, String value2) { + addCriterion("id not between", value1, value2, "id"); + return (Criteria) this; + } + + public Criteria andProjectIdIsNull() { + addCriterion("project_id is null"); + return (Criteria) this; + } + + public Criteria andProjectIdIsNotNull() { + addCriterion("project_id is not null"); + return (Criteria) this; + } + + public Criteria andProjectIdEqualTo(String value) { + addCriterion("project_id =", value, "projectId"); + return (Criteria) this; + } + + public Criteria andProjectIdNotEqualTo(String value) { + addCriterion("project_id <>", value, "projectId"); + return (Criteria) this; + } + + public Criteria andProjectIdGreaterThan(String value) { + addCriterion("project_id >", value, "projectId"); + return (Criteria) this; + } + + public Criteria andProjectIdGreaterThanOrEqualTo(String value) { + addCriterion("project_id >=", value, "projectId"); + return (Criteria) this; + } + + public Criteria andProjectIdLessThan(String value) { + addCriterion("project_id <", value, "projectId"); + return (Criteria) this; + } + + public Criteria andProjectIdLessThanOrEqualTo(String value) { + addCriterion("project_id <=", value, "projectId"); + return (Criteria) this; + } + + public Criteria andProjectIdLike(String value) { + addCriterion("project_id like", value, "projectId"); + return (Criteria) this; + } + + public Criteria andProjectIdNotLike(String value) { + addCriterion("project_id not like", value, "projectId"); + return (Criteria) this; + } + + public Criteria andProjectIdIn(List values) { + addCriterion("project_id in", values, "projectId"); + return (Criteria) this; + } + + public Criteria andProjectIdNotIn(List values) { + addCriterion("project_id not in", values, "projectId"); + return (Criteria) this; + } + + public Criteria andProjectIdBetween(String value1, String value2) { + addCriterion("project_id between", value1, value2, "projectId"); + return (Criteria) this; + } + + public Criteria andProjectIdNotBetween(String value1, String value2) { + addCriterion("project_id not between", value1, value2, "projectId"); + return (Criteria) this; + } + + public Criteria andSwaggerUrlIsNull() { + addCriterion("swagger_url is null"); + return (Criteria) this; + } + + public Criteria andSwaggerUrlIsNotNull() { + addCriterion("swagger_url is not null"); + return (Criteria) this; + } + + public Criteria andSwaggerUrlEqualTo(String value) { + addCriterion("swagger_url =", value, "swaggerUrl"); + return (Criteria) this; + } + + public Criteria andSwaggerUrlNotEqualTo(String value) { + addCriterion("swagger_url <>", value, "swaggerUrl"); + return (Criteria) this; + } + + public Criteria andSwaggerUrlGreaterThan(String value) { + addCriterion("swagger_url >", value, "swaggerUrl"); + return (Criteria) this; + } + + public Criteria andSwaggerUrlGreaterThanOrEqualTo(String value) { + addCriterion("swagger_url >=", value, "swaggerUrl"); + return (Criteria) this; + } + + public Criteria andSwaggerUrlLessThan(String value) { + addCriterion("swagger_url <", value, "swaggerUrl"); + return (Criteria) this; + } + + public Criteria andSwaggerUrlLessThanOrEqualTo(String value) { + addCriterion("swagger_url <=", value, "swaggerUrl"); + return (Criteria) this; + } + + public Criteria andSwaggerUrlLike(String value) { + addCriterion("swagger_url like", value, "swaggerUrl"); + return (Criteria) this; + } + + public Criteria andSwaggerUrlNotLike(String value) { + addCriterion("swagger_url not like", value, "swaggerUrl"); + return (Criteria) this; + } + + public Criteria andSwaggerUrlIn(List values) { + addCriterion("swagger_url in", values, "swaggerUrl"); + return (Criteria) this; + } + + public Criteria andSwaggerUrlNotIn(List values) { + addCriterion("swagger_url not in", values, "swaggerUrl"); + return (Criteria) this; + } + + public Criteria andSwaggerUrlBetween(String value1, String value2) { + addCriterion("swagger_url between", value1, value2, "swaggerUrl"); + return (Criteria) this; + } + + public Criteria andSwaggerUrlNotBetween(String value1, String value2) { + addCriterion("swagger_url not between", value1, value2, "swaggerUrl"); + return (Criteria) this; + } + + public Criteria andModuleIdIsNull() { + addCriterion("module_id is null"); + return (Criteria) this; + } + + public Criteria andModuleIdIsNotNull() { + addCriterion("module_id is not null"); + return (Criteria) this; + } + + public Criteria andModuleIdEqualTo(String value) { + addCriterion("module_id =", value, "moduleId"); + return (Criteria) this; + } + + public Criteria andModuleIdNotEqualTo(String value) { + addCriterion("module_id <>", value, "moduleId"); + return (Criteria) this; + } + + public Criteria andModuleIdGreaterThan(String value) { + addCriterion("module_id >", value, "moduleId"); + return (Criteria) this; + } + + public Criteria andModuleIdGreaterThanOrEqualTo(String value) { + addCriterion("module_id >=", value, "moduleId"); + return (Criteria) this; + } + + public Criteria andModuleIdLessThan(String value) { + addCriterion("module_id <", value, "moduleId"); + return (Criteria) this; + } + + public Criteria andModuleIdLessThanOrEqualTo(String value) { + addCriterion("module_id <=", value, "moduleId"); + return (Criteria) this; + } + + public Criteria andModuleIdLike(String value) { + addCriterion("module_id like", value, "moduleId"); + return (Criteria) this; + } + + public Criteria andModuleIdNotLike(String value) { + addCriterion("module_id not like", value, "moduleId"); + return (Criteria) this; + } + + public Criteria andModuleIdIn(List values) { + addCriterion("module_id in", values, "moduleId"); + return (Criteria) this; + } + + public Criteria andModuleIdNotIn(List values) { + addCriterion("module_id not in", values, "moduleId"); + return (Criteria) this; + } + + public Criteria andModuleIdBetween(String value1, String value2) { + addCriterion("module_id between", value1, value2, "moduleId"); + return (Criteria) this; + } + + public Criteria andModuleIdNotBetween(String value1, String value2) { + addCriterion("module_id not between", value1, value2, "moduleId"); + return (Criteria) this; + } + + public Criteria andModulePathIsNull() { + addCriterion("module_path is null"); + return (Criteria) this; + } + + public Criteria andModulePathIsNotNull() { + addCriterion("module_path is not null"); + return (Criteria) this; + } + + public Criteria andModulePathEqualTo(String value) { + addCriterion("module_path =", value, "modulePath"); + return (Criteria) this; + } + + public Criteria andModulePathNotEqualTo(String value) { + addCriterion("module_path <>", value, "modulePath"); + return (Criteria) this; + } + + public Criteria andModulePathGreaterThan(String value) { + addCriterion("module_path >", value, "modulePath"); + return (Criteria) this; + } + + public Criteria andModulePathGreaterThanOrEqualTo(String value) { + addCriterion("module_path >=", value, "modulePath"); + return (Criteria) this; + } + + public Criteria andModulePathLessThan(String value) { + addCriterion("module_path <", value, "modulePath"); + return (Criteria) this; + } + + public Criteria andModulePathLessThanOrEqualTo(String value) { + addCriterion("module_path <=", value, "modulePath"); + return (Criteria) this; + } + + public Criteria andModulePathLike(String value) { + addCriterion("module_path like", value, "modulePath"); + return (Criteria) this; + } + + public Criteria andModulePathNotLike(String value) { + addCriterion("module_path not like", value, "modulePath"); + return (Criteria) this; + } + + public Criteria andModulePathIn(List values) { + addCriterion("module_path in", values, "modulePath"); + return (Criteria) this; + } + + public Criteria andModulePathNotIn(List values) { + addCriterion("module_path not in", values, "modulePath"); + return (Criteria) this; + } + + public Criteria andModulePathBetween(String value1, String value2) { + addCriterion("module_path between", value1, value2, "modulePath"); + return (Criteria) this; + } + + public Criteria andModulePathNotBetween(String value1, String value2) { + addCriterion("module_path not between", value1, value2, "modulePath"); + return (Criteria) this; + } + + public Criteria andModeIdIsNull() { + addCriterion("mode_id is null"); + return (Criteria) this; + } + + public Criteria andModeIdIsNotNull() { + addCriterion("mode_id is not null"); + return (Criteria) this; + } + + public Criteria andModeIdEqualTo(String value) { + addCriterion("mode_id =", value, "modeId"); + return (Criteria) this; + } + + public Criteria andModeIdNotEqualTo(String value) { + addCriterion("mode_id <>", value, "modeId"); + return (Criteria) this; + } + + public Criteria andModeIdGreaterThan(String value) { + addCriterion("mode_id >", value, "modeId"); + return (Criteria) this; + } + + public Criteria andModeIdGreaterThanOrEqualTo(String value) { + addCriterion("mode_id >=", value, "modeId"); + return (Criteria) this; + } + + public Criteria andModeIdLessThan(String value) { + addCriterion("mode_id <", value, "modeId"); + return (Criteria) this; + } + + public Criteria andModeIdLessThanOrEqualTo(String value) { + addCriterion("mode_id <=", value, "modeId"); + return (Criteria) this; + } + + public Criteria andModeIdLike(String value) { + addCriterion("mode_id like", value, "modeId"); + return (Criteria) this; + } + + public Criteria andModeIdNotLike(String value) { + addCriterion("mode_id not like", value, "modeId"); + return (Criteria) this; + } + + public Criteria andModeIdIn(List values) { + addCriterion("mode_id in", values, "modeId"); + return (Criteria) this; + } + + public Criteria andModeIdNotIn(List values) { + addCriterion("mode_id not in", values, "modeId"); + return (Criteria) this; + } + + public Criteria andModeIdBetween(String value1, String value2) { + addCriterion("mode_id between", value1, value2, "modeId"); + return (Criteria) this; + } + + public Criteria andModeIdNotBetween(String value1, String value2) { + addCriterion("mode_id not between", value1, value2, "modeId"); + return (Criteria) this; + } + } + + public static class Criteria extends GeneratedCriteria { + + protected Criteria() { + super(); + } + } + + public static class Criterion { + private String condition; + + private Object value; + + private Object secondValue; + + private boolean noValue; + + private boolean singleValue; + + private boolean betweenValue; + + private boolean listValue; + + private String typeHandler; + + public String getCondition() { + return condition; + } + + public Object getValue() { + return value; + } + + public Object getSecondValue() { + return secondValue; + } + + public boolean isNoValue() { + return noValue; + } + + public boolean isSingleValue() { + return singleValue; + } + + public boolean isBetweenValue() { + return betweenValue; + } + + public boolean isListValue() { + return listValue; + } + + public String getTypeHandler() { + return typeHandler; + } + + protected Criterion(String condition) { + super(); + this.condition = condition; + this.typeHandler = null; + this.noValue = true; + } + + protected Criterion(String condition, Object value, String typeHandler) { + super(); + this.condition = condition; + this.value = value; + this.typeHandler = typeHandler; + if (value instanceof List) { + this.listValue = true; + } else { + this.singleValue = true; + } + } + + protected Criterion(String condition, Object value) { + this(condition, value, null); + } + + protected Criterion(String condition, Object value, Object secondValue, String typeHandler) { + super(); + this.condition = condition; + this.value = value; + this.secondValue = secondValue; + this.typeHandler = typeHandler; + this.betweenValue = true; + } + + protected Criterion(String condition, Object value, Object secondValue) { + this(condition, value, secondValue, null); + } + } +} \ No newline at end of file diff --git a/backend/src/main/java/io/metersphere/base/mapper/SwaggerUrlProjectMapper.java b/backend/src/main/java/io/metersphere/base/mapper/SwaggerUrlProjectMapper.java new file mode 100644 index 0000000000..3984f00183 --- /dev/null +++ b/backend/src/main/java/io/metersphere/base/mapper/SwaggerUrlProjectMapper.java @@ -0,0 +1,31 @@ +package io.metersphere.base.mapper; + +import io.metersphere.base.domain.SwaggerUrlProject; +import io.metersphere.base.domain.SwaggerUrlProjectExample; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +public interface SwaggerUrlProjectMapper { + long countByExample(SwaggerUrlProjectExample example); + + int deleteByExample(SwaggerUrlProjectExample example); + + int deleteByPrimaryKey(String id); + + int insert(SwaggerUrlProject record); + + int insertSelective(SwaggerUrlProject record); + + List selectByExample(SwaggerUrlProjectExample example); + + SwaggerUrlProject selectByPrimaryKey(String id); + + int updateByExampleSelective(@Param("record") SwaggerUrlProject record, @Param("example") SwaggerUrlProjectExample example); + + int updateByExample(@Param("record") SwaggerUrlProject record, @Param("example") SwaggerUrlProjectExample example); + + int updateByPrimaryKeySelective(SwaggerUrlProject record); + + int updateByPrimaryKey(SwaggerUrlProject record); +} \ No newline at end of file diff --git a/backend/src/main/java/io/metersphere/base/mapper/SwaggerUrlProjectMapper.xml b/backend/src/main/java/io/metersphere/base/mapper/SwaggerUrlProjectMapper.xml new file mode 100644 index 0000000000..e520c74530 --- /dev/null +++ b/backend/src/main/java/io/metersphere/base/mapper/SwaggerUrlProjectMapper.xml @@ -0,0 +1,231 @@ + + + + + + + + + + + + + + + + + + + + and ${criterion.condition} + + + and ${criterion.condition} #{criterion.value} + + + and ${criterion.condition} #{criterion.value} and #{criterion.secondValue} + + + and ${criterion.condition} + + #{listItem} + + + + + + + + + + + + + + + + + + and ${criterion.condition} + + + and ${criterion.condition} #{criterion.value} + + + and ${criterion.condition} #{criterion.value} and #{criterion.secondValue} + + + and ${criterion.condition} + + #{listItem} + + + + + + + + + + + id, project_id, swagger_url, module_id, module_path, mode_id + + + + + delete + from swagger_url_project + where id = #{id,jdbcType=VARCHAR} + + + delete from swagger_url_project + + + + + + insert into swagger_url_project (id, project_id, swagger_url, + module_id, module_path, mode_id) + values (#{id,jdbcType=VARCHAR}, #{projectId,jdbcType=VARCHAR}, #{swaggerUrl,jdbcType=VARCHAR}, + #{moduleId,jdbcType=VARCHAR}, #{modulePath,jdbcType=VARCHAR}, #{modeId,jdbcType=VARCHAR}) + + + insert into swagger_url_project + + + id, + + + project_id, + + + swagger_url, + + + module_id, + + + module_path, + + + mode_id, + + + + + #{id,jdbcType=VARCHAR}, + + + #{projectId,jdbcType=VARCHAR}, + + + #{swaggerUrl,jdbcType=VARCHAR}, + + + #{moduleId,jdbcType=VARCHAR}, + + + #{modulePath,jdbcType=VARCHAR}, + + + #{modeId,jdbcType=VARCHAR}, + + + + + + update swagger_url_project + + + id = #{record.id,jdbcType=VARCHAR}, + + + project_id = #{record.projectId,jdbcType=VARCHAR}, + + + swagger_url = #{record.swaggerUrl,jdbcType=VARCHAR}, + + + module_id = #{record.moduleId,jdbcType=VARCHAR}, + + + module_path = #{record.modulePath,jdbcType=VARCHAR}, + + + mode_id = #{record.modeId,jdbcType=VARCHAR}, + + + + + + + + update swagger_url_project + set id = #{record.id,jdbcType=VARCHAR}, + project_id = #{record.projectId,jdbcType=VARCHAR}, + swagger_url = #{record.swaggerUrl,jdbcType=VARCHAR}, + module_id = #{record.moduleId,jdbcType=VARCHAR}, + module_path = #{record.modulePath,jdbcType=VARCHAR}, + mode_id = #{record.modeId,jdbcType=VARCHAR} + + + + + + update swagger_url_project + + + project_id = #{projectId,jdbcType=VARCHAR}, + + + swagger_url = #{swaggerUrl,jdbcType=VARCHAR}, + + + module_id = #{moduleId,jdbcType=VARCHAR}, + + + module_path = #{modulePath,jdbcType=VARCHAR}, + + + mode_id = #{modeId,jdbcType=VARCHAR}, + + + where id = #{id,jdbcType=VARCHAR} + + + update swagger_url_project + set project_id = #{projectId,jdbcType=VARCHAR}, + swagger_url = #{swaggerUrl,jdbcType=VARCHAR}, + module_id = #{moduleId,jdbcType=VARCHAR}, + module_path = #{modulePath,jdbcType=VARCHAR}, + mode_id = #{modeId,jdbcType=VARCHAR} + where id = #{id,jdbcType=VARCHAR} + + \ No newline at end of file diff --git a/backend/src/main/java/io/metersphere/commons/constants/ApiRunMode.java b/backend/src/main/java/io/metersphere/commons/constants/ApiRunMode.java index ce34788c98..6497517644 100644 --- a/backend/src/main/java/io/metersphere/commons/constants/ApiRunMode.java +++ b/backend/src/main/java/io/metersphere/commons/constants/ApiRunMode.java @@ -1,5 +1,5 @@ package io.metersphere.commons.constants; public enum ApiRunMode { - RUN, DEBUG, DEFINITION,SCENARIO, API_PLAN, SCENARIO_PLAN,API,SCHEDULE_API_PLAN,SCHEDULE_SCENARIO_PLAN,SCHEDULE_PERFORMANCE_TEST + RUN, DEBUG, DEFINITION, SCENARIO, API_PLAN, JENKINS, SCENARIO_PLAN, API, SCHEDULE_API_PLAN, SCHEDULE_SCENARIO_PLAN, SCHEDULE_PERFORMANCE_TEST } diff --git a/backend/src/main/java/io/metersphere/track/dto/TestCaseDTO.java b/backend/src/main/java/io/metersphere/track/dto/TestCaseDTO.java index d927138635..8db63a2f6d 100644 --- a/backend/src/main/java/io/metersphere/track/dto/TestCaseDTO.java +++ b/backend/src/main/java/io/metersphere/track/dto/TestCaseDTO.java @@ -14,6 +14,7 @@ public class TestCaseDTO extends TestCaseWithBLOBs { private String maintainerName; private String apiName; private String performName; + private String lastResultId; private List caseTags = new ArrayList<>(); }