From 0c250601ec0043efe30f0de2681def3129efd479 Mon Sep 17 00:00:00 2001 From: pfl <14579250+shadowman1@user.noreply.gitee.com> Date: Tue, 29 Apr 2025 21:44:04 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B5=8B=E8=AF=95=E8=AE=A1=E5=88=92=E5=89=8D?= =?UTF-8?q?=E7=AB=AF=E5=8F=8A=E5=90=8E=E7=AB=AF=E4=BB=A3=E7=A0=81=E5=AE=8C?= =?UTF-8?q?=E5=96=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/TestPlanProjectController.java | 4 +- .../test/controller/TestReportController.java | 18 +- .../test/test/domain/qo/TestReportAddQO.java | 49 +++ .../test/mapper/TestPlanReportMapper.java | 13 + .../test/test/mapper/TestReportMapper.java | 8 + .../test/test/service/ITestReportService.java | 9 + .../service/impl/TestReportServiceImpl.java | 40 +++ .../mapper/test/TestPlanReportMapper.xml | 28 ++ .../mapper/test/TestReportMapper.xml | 27 ++ test-ui/src/api/test/testPlan.js | 47 ++- test-ui/src/router/index.js | 14 - test-ui/src/views/test/project/index.vue | 1 - .../test/testplan/caseReport/caseReport.vue | 160 +++++++++ .../execute/{index.vue => caseExecute.vue} | 14 +- test-ui/src/views/test/testplan/index.vue | 13 +- test-ui/src/views/test/testplan/overview.vue | 136 ++++++- .../testplan/probablyView/probablyView.vue | 335 ++++++++++++++++++ 17 files changed, 869 insertions(+), 47 deletions(-) create mode 100644 test-test/src/main/java/com/test/test/domain/qo/TestReportAddQO.java create mode 100644 test-test/src/main/java/com/test/test/mapper/TestPlanReportMapper.java create mode 100644 test-test/src/main/resources/mapper/test/TestPlanReportMapper.xml create mode 100644 test-ui/src/views/test/testplan/caseReport/caseReport.vue rename test-ui/src/views/test/testplan/execute/{index.vue => caseExecute.vue} (97%) create mode 100644 test-ui/src/views/test/testplan/probablyView/probablyView.vue diff --git a/test-test/src/main/java/com/test/test/controller/TestPlanProjectController.java b/test-test/src/main/java/com/test/test/controller/TestPlanProjectController.java index b6d4a22..138ed8c 100644 --- a/test-test/src/main/java/com/test/test/controller/TestPlanProjectController.java +++ b/test-test/src/main/java/com/test/test/controller/TestPlanProjectController.java @@ -8,7 +8,7 @@ import com.test.test.service.ITestPlanProjectService; import java.util.List; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; @@ -30,7 +30,7 @@ public class TestPlanProjectController extends BaseController { /** * 查询测试计划需求关联列表 */ - @GetMapping("/list") + @PostMapping("/list") public TableDataInfo list(@RequestBody IDQO qo) { startPage(); List list = testPlanProjectService.selectTestPlanProjectList(qo.getId()); diff --git a/test-test/src/main/java/com/test/test/controller/TestReportController.java b/test-test/src/main/java/com/test/test/controller/TestReportController.java index a57a423..d219c9f 100644 --- a/test-test/src/main/java/com/test/test/controller/TestReportController.java +++ b/test-test/src/main/java/com/test/test/controller/TestReportController.java @@ -1,14 +1,19 @@ package com.test.test.controller; +import com.test.common.annotation.Log; import com.test.common.core.controller.BaseController; +import com.test.common.core.domain.AjaxResult; import com.test.common.core.page.TableDataInfo; +import com.test.common.enums.BusinessType; import com.test.test.domain.qo.IDQO; +import com.test.test.domain.qo.TestReportAddQO; import com.test.test.domain.vo.TestReportVo; import com.test.test.service.ITestReportService; import java.util.List; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; @@ -31,10 +36,21 @@ public class TestReportController extends BaseController { * 查询测试计划关联测试报告列表 * @return */ - @GetMapping("/reportList") + @PostMapping("/reportList") public TableDataInfo list(@RequestBody IDQO qo) { startPage(); List list = testReportService.selectTestReportList(qo.getId()); return getDataTable(list); } + + /** + * 新增测试报告及关联测试计划 + * @param testReportAddQO + * @return + */ + @Log(title = "测试报告", businessType = BusinessType.INSERT) + @PostMapping("/addTestReport") + public AjaxResult addTestReport(@RequestBody TestReportAddQO testReportAddQO) { + return toAjax(testReportService.addTestReport(testReportAddQO)); + } } diff --git a/test-test/src/main/java/com/test/test/domain/qo/TestReportAddQO.java b/test-test/src/main/java/com/test/test/domain/qo/TestReportAddQO.java new file mode 100644 index 0000000..5e1813e --- /dev/null +++ b/test-test/src/main/java/com/test/test/domain/qo/TestReportAddQO.java @@ -0,0 +1,49 @@ +package com.test.test.domain.qo; + +import com.test.common.core.domain.BaseEntity; +import lombok.Data; + +/** + * 测试报告新增参数QO + */ +@Data +public class TestReportAddQO extends BaseEntity { + + private static final long serialVersionUID = -6325566452451878775L; + + /** + * 测试报告id + */ + private Long reportId; + + /** + * 测试计划id + */ + private Long planId; + + /** + * 测试用例类型(0,冒烟测试,1,功能测试,2,回归测试,3,准生产测试,4,生产验证) + */ + private String type; + + /** 测试报告编码 */ + private String serialNumber; + + /** 测试报告名称 */ + private String name; + + /** 测试结果(0,未通过,1,通过) */ + private String result; + + /** 测试报告发送状态(0,未发送,1,已发送) */ + private String status; + + /** 测试报告(jason格式存储) */ + private String report; + + /** 版本 */ + private String version; + + /** 0,正常,1,删除 */ + private String delFlag; +} diff --git a/test-test/src/main/java/com/test/test/mapper/TestPlanReportMapper.java b/test-test/src/main/java/com/test/test/mapper/TestPlanReportMapper.java new file mode 100644 index 0000000..58cebab --- /dev/null +++ b/test-test/src/main/java/com/test/test/mapper/TestPlanReportMapper.java @@ -0,0 +1,13 @@ +package com.test.test.mapper; + +import com.test.test.domain.qo.TestReportAddQO; + +public interface TestPlanReportMapper { + + /** + * 新增测试计划关联测试报告 + * @param testReportAddQO + * @return + */ + int insertTestPlanReport(TestReportAddQO testReportAddQO); +} diff --git a/test-test/src/main/java/com/test/test/mapper/TestReportMapper.java b/test-test/src/main/java/com/test/test/mapper/TestReportMapper.java index 7545cb8..a1bbaed 100644 --- a/test-test/src/main/java/com/test/test/mapper/TestReportMapper.java +++ b/test-test/src/main/java/com/test/test/mapper/TestReportMapper.java @@ -1,5 +1,6 @@ package com.test.test.mapper; +import com.test.test.domain.TestReport; import com.test.test.domain.vo.TestReportVo; import java.util.List; @@ -12,4 +13,11 @@ public interface TestReportMapper { * @return */ List selectTestReportList(Long planId); + + /** + * 新增测试报告 + * @param testReport + * @return + */ + int addTestReport(TestReport testReport); } diff --git a/test-test/src/main/java/com/test/test/service/ITestReportService.java b/test-test/src/main/java/com/test/test/service/ITestReportService.java index f2f3a05..1ce3241 100644 --- a/test-test/src/main/java/com/test/test/service/ITestReportService.java +++ b/test-test/src/main/java/com/test/test/service/ITestReportService.java @@ -1,5 +1,7 @@ package com.test.test.service; +import com.test.test.domain.TestReport; +import com.test.test.domain.qo.TestReportAddQO; import com.test.test.domain.vo.TestReportVo; import java.util.List; @@ -14,4 +16,11 @@ public interface ITestReportService { * @return */ List selectTestReportList(Long planId); + + /** + * 新增测试报告 + * @param testReportAddQO + * @return + */ + public int addTestReport(TestReportAddQO testReportAddQO); } diff --git a/test-test/src/main/java/com/test/test/service/impl/TestReportServiceImpl.java b/test-test/src/main/java/com/test/test/service/impl/TestReportServiceImpl.java index f0208a9..d38a016 100644 --- a/test-test/src/main/java/com/test/test/service/impl/TestReportServiceImpl.java +++ b/test-test/src/main/java/com/test/test/service/impl/TestReportServiceImpl.java @@ -1,10 +1,17 @@ package com.test.test.service.impl; +import com.test.common.utils.DateUtils; +import com.test.common.utils.SecurityUtils; +import com.test.common.utils.bean.BeanUtils; +import com.test.test.domain.TestReport; +import com.test.test.domain.qo.TestReportAddQO; import com.test.test.domain.vo.TestReportVo; +import com.test.test.mapper.TestPlanReportMapper; import com.test.test.mapper.TestReportMapper; import com.test.test.service.ITestReportService; import jakarta.annotation.Resource; import java.util.List; +import java.util.UUID; import org.springframework.stereotype.Service; /** @@ -19,6 +26,9 @@ public class TestReportServiceImpl implements ITestReportService { @Resource private TestReportMapper testReportMapper; + @Resource + private TestPlanReportMapper testPlanReportMapper; + /** * 查询测试报告列表 * @param planId @@ -28,4 +38,34 @@ public class TestReportServiceImpl implements ITestReportService { public List selectTestReportList(Long planId) { return testReportMapper.selectTestReportList(planId); } + + /** + * 新增测试报告 + * @param testReportAddQO + * @return + */ + @Override + public int addTestReport(TestReportAddQO testReportAddQO) { + TestReport testReport = new TestReport(); + BeanUtils.copyProperties(testReportAddQO,testReport); + testReport.setSerialNumber(generateSerialNumber()); + testReport.setResult("0"); + testReport.setStatus("0"); + testReport.setCreateTime(DateUtils.getNowDate()); + testReport.setDelFlag("0"); + testReport.setUpdateBy(SecurityUtils.getUsername()); + testReportMapper.addTestReport(testReport); + testReportAddQO.setReportId(testReport.getId()); + testReportAddQO.setCreateTime(DateUtils.getNowDate()); + testReportAddQO.setDelFlag("0"); + return testPlanReportMapper.insertTestPlanReport(testReportAddQO); + } + + /** + * 生成随机序列号 + * @return + */ + private String generateSerialNumber() { + return UUID.randomUUID().toString().replaceAll("-", "").substring(0, 16); + } } diff --git a/test-test/src/main/resources/mapper/test/TestPlanReportMapper.xml b/test-test/src/main/resources/mapper/test/TestPlanReportMapper.xml new file mode 100644 index 0000000..995d468 --- /dev/null +++ b/test-test/src/main/resources/mapper/test/TestPlanReportMapper.xml @@ -0,0 +1,28 @@ + + + + + + insert into test_plan_report + + plan_id, + report_id, + type, + create_time, + update_time, + version, + del_flag, + + + #{planId}, + #{reportId}, + #{type}, + #{createTime}, + #{updateTime}, + #{version}, + #{delFlag}, + + + \ No newline at end of file diff --git a/test-test/src/main/resources/mapper/test/TestReportMapper.xml b/test-test/src/main/resources/mapper/test/TestReportMapper.xml index 11ced47..8f2b8af 100644 --- a/test-test/src/main/resources/mapper/test/TestReportMapper.xml +++ b/test-test/src/main/resources/mapper/test/TestReportMapper.xml @@ -3,6 +3,33 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> + + insert into test_report + + serial_number, + name, + result, + status, + report, + update_by, + create_time, + update_time, + version, + del_flag, + + + #{serialNumber}, + #{name}, + #{result}, + #{status}, + #{report}, + #{updateBy}, + #{createTime}, + #{updateTime}, + #{version}, + #{delFlag}, + +