From 5d3e84edfbf657fad24d8e29c6d8fbbca404bcce Mon Sep 17 00:00:00 2001 From: "Captain.B" Date: Thu, 5 Aug 2021 10:03:40 +0800 Subject: [PATCH] =?UTF-8?q?refactor(=E6=80=A7=E8=83=BD=E6=B5=8B=E8=AF=95):?= =?UTF-8?q?=20=E6=80=A7=E8=83=BD=E6=B5=8B=E8=AF=95=E9=87=8D=E6=9E=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../domain/LoadTestReportResultRealtime.java | 15 + .../LoadTestReportResultRealtimeExample.java | 460 ++++++++++++++++++ .../LoadTestReportResultRealtimeKey.java | 17 + .../LoadTestReportResultRealtimeMapper.java | 35 ++ .../LoadTestReportResultRealtimeMapper.xml | 244 ++++++++++ .../service/PerformanceReportService.java | 7 + .../src/main/resources/generatorConfig.xml | 6 +- 7 files changed, 779 insertions(+), 5 deletions(-) create mode 100644 backend/src/main/java/io/metersphere/base/domain/LoadTestReportResultRealtime.java create mode 100644 backend/src/main/java/io/metersphere/base/domain/LoadTestReportResultRealtimeExample.java create mode 100644 backend/src/main/java/io/metersphere/base/domain/LoadTestReportResultRealtimeKey.java create mode 100644 backend/src/main/java/io/metersphere/base/mapper/LoadTestReportResultRealtimeMapper.java create mode 100644 backend/src/main/java/io/metersphere/base/mapper/LoadTestReportResultRealtimeMapper.xml diff --git a/backend/src/main/java/io/metersphere/base/domain/LoadTestReportResultRealtime.java b/backend/src/main/java/io/metersphere/base/domain/LoadTestReportResultRealtime.java new file mode 100644 index 0000000000..2d6af4b99b --- /dev/null +++ b/backend/src/main/java/io/metersphere/base/domain/LoadTestReportResultRealtime.java @@ -0,0 +1,15 @@ +package io.metersphere.base.domain; + +import java.io.Serializable; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.ToString; + +@Data +@EqualsAndHashCode(callSuper = true) +@ToString(callSuper = true) +public class LoadTestReportResultRealtime extends LoadTestReportResultRealtimeKey implements Serializable { + private String reportValue; + + private static final long serialVersionUID = 1L; +} \ No newline at end of file diff --git a/backend/src/main/java/io/metersphere/base/domain/LoadTestReportResultRealtimeExample.java b/backend/src/main/java/io/metersphere/base/domain/LoadTestReportResultRealtimeExample.java new file mode 100644 index 0000000000..eb47b1c4dd --- /dev/null +++ b/backend/src/main/java/io/metersphere/base/domain/LoadTestReportResultRealtimeExample.java @@ -0,0 +1,460 @@ +package io.metersphere.base.domain; + +import java.util.ArrayList; +import java.util.List; + +public class LoadTestReportResultRealtimeExample { + protected String orderByClause; + + protected boolean distinct; + + protected List oredCriteria; + + public LoadTestReportResultRealtimeExample() { + 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 andReportIdIsNull() { + addCriterion("report_id is null"); + return (Criteria) this; + } + + public Criteria andReportIdIsNotNull() { + addCriterion("report_id is not null"); + return (Criteria) this; + } + + public Criteria andReportIdEqualTo(String value) { + addCriterion("report_id =", value, "reportId"); + return (Criteria) this; + } + + public Criteria andReportIdNotEqualTo(String value) { + addCriterion("report_id <>", value, "reportId"); + return (Criteria) this; + } + + public Criteria andReportIdGreaterThan(String value) { + addCriterion("report_id >", value, "reportId"); + return (Criteria) this; + } + + public Criteria andReportIdGreaterThanOrEqualTo(String value) { + addCriterion("report_id >=", value, "reportId"); + return (Criteria) this; + } + + public Criteria andReportIdLessThan(String value) { + addCriterion("report_id <", value, "reportId"); + return (Criteria) this; + } + + public Criteria andReportIdLessThanOrEqualTo(String value) { + addCriterion("report_id <=", value, "reportId"); + return (Criteria) this; + } + + public Criteria andReportIdLike(String value) { + addCriterion("report_id like", value, "reportId"); + return (Criteria) this; + } + + public Criteria andReportIdNotLike(String value) { + addCriterion("report_id not like", value, "reportId"); + return (Criteria) this; + } + + public Criteria andReportIdIn(List values) { + addCriterion("report_id in", values, "reportId"); + return (Criteria) this; + } + + public Criteria andReportIdNotIn(List values) { + addCriterion("report_id not in", values, "reportId"); + return (Criteria) this; + } + + public Criteria andReportIdBetween(String value1, String value2) { + addCriterion("report_id between", value1, value2, "reportId"); + return (Criteria) this; + } + + public Criteria andReportIdNotBetween(String value1, String value2) { + addCriterion("report_id not between", value1, value2, "reportId"); + return (Criteria) this; + } + + public Criteria andReportKeyIsNull() { + addCriterion("report_key is null"); + return (Criteria) this; + } + + public Criteria andReportKeyIsNotNull() { + addCriterion("report_key is not null"); + return (Criteria) this; + } + + public Criteria andReportKeyEqualTo(String value) { + addCriterion("report_key =", value, "reportKey"); + return (Criteria) this; + } + + public Criteria andReportKeyNotEqualTo(String value) { + addCriterion("report_key <>", value, "reportKey"); + return (Criteria) this; + } + + public Criteria andReportKeyGreaterThan(String value) { + addCriterion("report_key >", value, "reportKey"); + return (Criteria) this; + } + + public Criteria andReportKeyGreaterThanOrEqualTo(String value) { + addCriterion("report_key >=", value, "reportKey"); + return (Criteria) this; + } + + public Criteria andReportKeyLessThan(String value) { + addCriterion("report_key <", value, "reportKey"); + return (Criteria) this; + } + + public Criteria andReportKeyLessThanOrEqualTo(String value) { + addCriterion("report_key <=", value, "reportKey"); + return (Criteria) this; + } + + public Criteria andReportKeyLike(String value) { + addCriterion("report_key like", value, "reportKey"); + return (Criteria) this; + } + + public Criteria andReportKeyNotLike(String value) { + addCriterion("report_key not like", value, "reportKey"); + return (Criteria) this; + } + + public Criteria andReportKeyIn(List values) { + addCriterion("report_key in", values, "reportKey"); + return (Criteria) this; + } + + public Criteria andReportKeyNotIn(List values) { + addCriterion("report_key not in", values, "reportKey"); + return (Criteria) this; + } + + public Criteria andReportKeyBetween(String value1, String value2) { + addCriterion("report_key between", value1, value2, "reportKey"); + return (Criteria) this; + } + + public Criteria andReportKeyNotBetween(String value1, String value2) { + addCriterion("report_key not between", value1, value2, "reportKey"); + return (Criteria) this; + } + + public Criteria andResourceIndexIsNull() { + addCriterion("resource_index is null"); + return (Criteria) this; + } + + public Criteria andResourceIndexIsNotNull() { + addCriterion("resource_index is not null"); + return (Criteria) this; + } + + public Criteria andResourceIndexEqualTo(Integer value) { + addCriterion("resource_index =", value, "resourceIndex"); + return (Criteria) this; + } + + public Criteria andResourceIndexNotEqualTo(Integer value) { + addCriterion("resource_index <>", value, "resourceIndex"); + return (Criteria) this; + } + + public Criteria andResourceIndexGreaterThan(Integer value) { + addCriterion("resource_index >", value, "resourceIndex"); + return (Criteria) this; + } + + public Criteria andResourceIndexGreaterThanOrEqualTo(Integer value) { + addCriterion("resource_index >=", value, "resourceIndex"); + return (Criteria) this; + } + + public Criteria andResourceIndexLessThan(Integer value) { + addCriterion("resource_index <", value, "resourceIndex"); + return (Criteria) this; + } + + public Criteria andResourceIndexLessThanOrEqualTo(Integer value) { + addCriterion("resource_index <=", value, "resourceIndex"); + return (Criteria) this; + } + + public Criteria andResourceIndexIn(List values) { + addCriterion("resource_index in", values, "resourceIndex"); + return (Criteria) this; + } + + public Criteria andResourceIndexNotIn(List values) { + addCriterion("resource_index not in", values, "resourceIndex"); + return (Criteria) this; + } + + public Criteria andResourceIndexBetween(Integer value1, Integer value2) { + addCriterion("resource_index between", value1, value2, "resourceIndex"); + return (Criteria) this; + } + + public Criteria andResourceIndexNotBetween(Integer value1, Integer value2) { + addCriterion("resource_index not between", value1, value2, "resourceIndex"); + return (Criteria) this; + } + + public Criteria andSortIsNull() { + addCriterion("sort is null"); + return (Criteria) this; + } + + public Criteria andSortIsNotNull() { + addCriterion("sort is not null"); + return (Criteria) this; + } + + public Criteria andSortEqualTo(Integer value) { + addCriterion("sort =", value, "sort"); + return (Criteria) this; + } + + public Criteria andSortNotEqualTo(Integer value) { + addCriterion("sort <>", value, "sort"); + return (Criteria) this; + } + + public Criteria andSortGreaterThan(Integer value) { + addCriterion("sort >", value, "sort"); + return (Criteria) this; + } + + public Criteria andSortGreaterThanOrEqualTo(Integer value) { + addCriterion("sort >=", value, "sort"); + return (Criteria) this; + } + + public Criteria andSortLessThan(Integer value) { + addCriterion("sort <", value, "sort"); + return (Criteria) this; + } + + public Criteria andSortLessThanOrEqualTo(Integer value) { + addCriterion("sort <=", value, "sort"); + return (Criteria) this; + } + + public Criteria andSortIn(List values) { + addCriterion("sort in", values, "sort"); + return (Criteria) this; + } + + public Criteria andSortNotIn(List values) { + addCriterion("sort not in", values, "sort"); + return (Criteria) this; + } + + public Criteria andSortBetween(Integer value1, Integer value2) { + addCriterion("sort between", value1, value2, "sort"); + return (Criteria) this; + } + + public Criteria andSortNotBetween(Integer value1, Integer value2) { + addCriterion("sort not between", value1, value2, "sort"); + 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/domain/LoadTestReportResultRealtimeKey.java b/backend/src/main/java/io/metersphere/base/domain/LoadTestReportResultRealtimeKey.java new file mode 100644 index 0000000000..55f083f1d9 --- /dev/null +++ b/backend/src/main/java/io/metersphere/base/domain/LoadTestReportResultRealtimeKey.java @@ -0,0 +1,17 @@ +package io.metersphere.base.domain; + +import java.io.Serializable; +import lombok.Data; + +@Data +public class LoadTestReportResultRealtimeKey implements Serializable { + private String reportId; + + private String reportKey; + + private Integer resourceIndex; + + private Integer sort; + + private static final long serialVersionUID = 1L; +} \ No newline at end of file diff --git a/backend/src/main/java/io/metersphere/base/mapper/LoadTestReportResultRealtimeMapper.java b/backend/src/main/java/io/metersphere/base/mapper/LoadTestReportResultRealtimeMapper.java new file mode 100644 index 0000000000..fe08f197ee --- /dev/null +++ b/backend/src/main/java/io/metersphere/base/mapper/LoadTestReportResultRealtimeMapper.java @@ -0,0 +1,35 @@ +package io.metersphere.base.mapper; + +import io.metersphere.base.domain.LoadTestReportResultRealtime; +import io.metersphere.base.domain.LoadTestReportResultRealtimeExample; +import io.metersphere.base.domain.LoadTestReportResultRealtimeKey; +import java.util.List; +import org.apache.ibatis.annotations.Param; + +public interface LoadTestReportResultRealtimeMapper { + long countByExample(LoadTestReportResultRealtimeExample example); + + int deleteByExample(LoadTestReportResultRealtimeExample example); + + int deleteByPrimaryKey(LoadTestReportResultRealtimeKey key); + + int insert(LoadTestReportResultRealtime record); + + int insertSelective(LoadTestReportResultRealtime record); + + List selectByExampleWithBLOBs(LoadTestReportResultRealtimeExample example); + + List selectByExample(LoadTestReportResultRealtimeExample example); + + LoadTestReportResultRealtime selectByPrimaryKey(LoadTestReportResultRealtimeKey key); + + int updateByExampleSelective(@Param("record") LoadTestReportResultRealtime record, @Param("example") LoadTestReportResultRealtimeExample example); + + int updateByExampleWithBLOBs(@Param("record") LoadTestReportResultRealtime record, @Param("example") LoadTestReportResultRealtimeExample example); + + int updateByExample(@Param("record") LoadTestReportResultRealtime record, @Param("example") LoadTestReportResultRealtimeExample example); + + int updateByPrimaryKeySelective(LoadTestReportResultRealtime record); + + int updateByPrimaryKeyWithBLOBs(LoadTestReportResultRealtime record); +} \ No newline at end of file diff --git a/backend/src/main/java/io/metersphere/base/mapper/LoadTestReportResultRealtimeMapper.xml b/backend/src/main/java/io/metersphere/base/mapper/LoadTestReportResultRealtimeMapper.xml new file mode 100644 index 0000000000..0c1a5973ca --- /dev/null +++ b/backend/src/main/java/io/metersphere/base/mapper/LoadTestReportResultRealtimeMapper.xml @@ -0,0 +1,244 @@ + + + + + + + + + + + + + + + + + + + + + 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} + + + + + + + + + + + report_id, report_key, resource_index, sort + + + report_value + + + + + + delete from load_test_report_result_realtime + where report_id = #{reportId,jdbcType=VARCHAR} + and report_key = #{reportKey,jdbcType=VARCHAR} + and resource_index = #{resourceIndex,jdbcType=INTEGER} + and sort = #{sort,jdbcType=INTEGER} + + + delete from load_test_report_result_realtime + + + + + + insert into load_test_report_result_realtime (report_id, report_key, resource_index, + sort, report_value) + values (#{reportId,jdbcType=VARCHAR}, #{reportKey,jdbcType=VARCHAR}, #{resourceIndex,jdbcType=INTEGER}, + #{sort,jdbcType=INTEGER}, #{reportValue,jdbcType=LONGVARCHAR}) + + + insert into load_test_report_result_realtime + + + report_id, + + + report_key, + + + resource_index, + + + sort, + + + report_value, + + + + + #{reportId,jdbcType=VARCHAR}, + + + #{reportKey,jdbcType=VARCHAR}, + + + #{resourceIndex,jdbcType=INTEGER}, + + + #{sort,jdbcType=INTEGER}, + + + #{reportValue,jdbcType=LONGVARCHAR}, + + + + + + update load_test_report_result_realtime + + + report_id = #{record.reportId,jdbcType=VARCHAR}, + + + report_key = #{record.reportKey,jdbcType=VARCHAR}, + + + resource_index = #{record.resourceIndex,jdbcType=INTEGER}, + + + sort = #{record.sort,jdbcType=INTEGER}, + + + report_value = #{record.reportValue,jdbcType=LONGVARCHAR}, + + + + + + + + update load_test_report_result_realtime + set report_id = #{record.reportId,jdbcType=VARCHAR}, + report_key = #{record.reportKey,jdbcType=VARCHAR}, + resource_index = #{record.resourceIndex,jdbcType=INTEGER}, + sort = #{record.sort,jdbcType=INTEGER}, + report_value = #{record.reportValue,jdbcType=LONGVARCHAR} + + + + + + update load_test_report_result_realtime + set report_id = #{record.reportId,jdbcType=VARCHAR}, + report_key = #{record.reportKey,jdbcType=VARCHAR}, + resource_index = #{record.resourceIndex,jdbcType=INTEGER}, + sort = #{record.sort,jdbcType=INTEGER} + + + + + + update load_test_report_result_realtime + + + report_value = #{reportValue,jdbcType=LONGVARCHAR}, + + + where report_id = #{reportId,jdbcType=VARCHAR} + and report_key = #{reportKey,jdbcType=VARCHAR} + and resource_index = #{resourceIndex,jdbcType=INTEGER} + and sort = #{sort,jdbcType=INTEGER} + + + update load_test_report_result_realtime + set report_value = #{reportValue,jdbcType=LONGVARCHAR} + where report_id = #{reportId,jdbcType=VARCHAR} + and report_key = #{reportKey,jdbcType=VARCHAR} + and resource_index = #{resourceIndex,jdbcType=INTEGER} + and sort = #{sort,jdbcType=INTEGER} + + \ No newline at end of file diff --git a/backend/src/main/java/io/metersphere/performance/service/PerformanceReportService.java b/backend/src/main/java/io/metersphere/performance/service/PerformanceReportService.java index 174c8dfd48..6c1093f796 100644 --- a/backend/src/main/java/io/metersphere/performance/service/PerformanceReportService.java +++ b/backend/src/main/java/io/metersphere/performance/service/PerformanceReportService.java @@ -61,6 +61,8 @@ public class PerformanceReportService { @Resource private LoadTestReportResultPartMapper loadTestReportResultPartMapper; @Resource + private LoadTestReportResultRealtimeMapper loadTestReportResultRealtimeMapper; + @Resource private LoadTestReportLogMapper loadTestReportLogMapper; @Resource private TestResourceService testResourceService; @@ -130,6 +132,11 @@ public class PerformanceReportService { loadTestReportResultPartExample.createCriteria().andReportIdEqualTo(reportId); loadTestReportResultPartMapper.deleteByExample(loadTestReportResultPartExample); + // delete load_test_report_result + LoadTestReportResultRealtimeExample loadTestReportResultRealtimeExample = new LoadTestReportResultRealtimeExample(); + loadTestReportResultRealtimeExample.createCriteria().andReportIdEqualTo(reportId); + loadTestReportResultRealtimeMapper.deleteByExample(loadTestReportResultRealtimeExample); + // delete load_test_report_detail LoadTestReportDetailExample example = new LoadTestReportDetailExample(); example.createCriteria().andReportIdEqualTo(reportId); diff --git a/backend/src/main/resources/generatorConfig.xml b/backend/src/main/resources/generatorConfig.xml index 6e1f8c396f..0b88b8135d 100644 --- a/backend/src/main/resources/generatorConfig.xml +++ b/backend/src/main/resources/generatorConfig.xml @@ -78,21 +78,17 @@
--> -
+ -<<<<<<< HEAD -
-======= ->>>>>>> feat:azuredevops add issue