diff --git a/test-test/src/main/java/com/test/test/controller/TestDefectController.java b/test-test/src/main/java/com/test/test/controller/TestDefectController.java new file mode 100644 index 0000000..bb45d30 --- /dev/null +++ b/test-test/src/main/java/com/test/test/controller/TestDefectController.java @@ -0,0 +1,109 @@ +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.common.utils.poi.ExcelUtil; +import com.test.test.domain.TestDefect; +import com.test.test.domain.qo.IDQO; +import com.test.test.domain.qo.TestDefectListQO; +import com.test.test.service.ITestDefectService; +import jakarta.servlet.http.HttpServletResponse; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import java.util.Date; +import java.util.List; + +/** + * 测试缺陷Controller + * + * @author test + * @date 2025-04-22 + */ +@RestController +@RequestMapping("/test/defect") +public class TestDefectController extends BaseController +{ + @Autowired + private ITestDefectService testDefectService; + + /** + * 查询测试缺陷列表 + */ + @GetMapping("/list") + public TableDataInfo list(TestDefectListQO qo) + { + startPage(); + List list = testDefectService.selectTestDefectList(qo); + return getDataTable(list); + } + + /** + * 导出测试缺陷列表 + */ + @Log(title = "测试缺陷", businessType = BusinessType.EXPORT) + @PostMapping("/exportBug") + public void export(HttpServletResponse response, + @RequestBody TestDefectListQO qo) { + List list = testDefectService.selectTestDefectList(qo); + ExcelUtil util = new ExcelUtil(TestDefect.class); + util.exportExcel(response, list, "缺陷数据"); + } + + /** + * 批量导出测试缺陷列表 + */ + @Log(title = "测试缺陷", businessType = BusinessType.EXPORT) + @PostMapping("/batchExportBug") + public void batchExport(HttpServletResponse response, + @RequestBody List list) { + ExcelUtil util = new ExcelUtil(TestDefect.class); + util.exportExcel(response, list, "缺陷数据"); + } + + /** + * 获取测试缺陷详细信息 + */ + @PostMapping("/bugDetail") + public AjaxResult getInfo(@RequestBody IDQO qo) + { + return success(testDefectService.selectTestDefectById(qo.getId())); + } + + /** + * 新增测试缺陷 + */ + @Log(title = "测试缺陷", businessType = BusinessType.INSERT) + @PostMapping("/addBug") + public AjaxResult add(@RequestBody TestDefect testDefect) + { + return toAjax(testDefectService.insertTestDefect(testDefect)); + } + + /** + * 修改测试缺陷 + */ + @Log(title = "测试缺陷", businessType = BusinessType.UPDATE) + @PostMapping("/editBug") + public AjaxResult edit(@RequestBody TestDefect testDefect) + { + return toAjax(testDefectService.updateTestDefect(testDefect)); + } + + /** + * 删除测试缺陷 + */ + @Log(title = "测试缺陷", businessType = BusinessType.DELETE) + @PostMapping("/delBug") + public AjaxResult remove(@RequestBody IDQO qo) + { + TestDefect testDefect = testDefectService.selectTestDefectById(qo.getId()); + testDefect.setUpdateBy(getUsername()); + testDefect.setUpdateTime(new Date()); + testDefect.setDelFlag("1"); + return toAjax(testDefectService.updateTestDefect(testDefect)); + } +} diff --git a/test-test/src/main/java/com/test/test/controller/TestPlanDefectController.java b/test-test/src/main/java/com/test/test/controller/TestPlanDefectController.java new file mode 100644 index 0000000..4b943b0 --- /dev/null +++ b/test-test/src/main/java/com/test/test/controller/TestPlanDefectController.java @@ -0,0 +1,91 @@ +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.common.utils.poi.ExcelUtil; +import com.test.test.domain.TestPlanDefect; +import com.test.test.service.ITestPlanDefectService; +import jakarta.servlet.http.HttpServletResponse; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import java.util.List; + +/** + * 测试计划测试缺陷关联Controller + * + * @author test + * @date 2025-04-22 + */ +@RestController +@RequestMapping("/testPlan/defect") +public class TestPlanDefectController extends BaseController +{ + @Autowired + private ITestPlanDefectService testPlanDefectService; + + /** + * 查询测试计划测试缺陷关联列表 + */ + @GetMapping("/list") + public TableDataInfo list(TestPlanDefect testPlanDefect) + { + startPage(); + List list = testPlanDefectService.selectTestPlanDefectList(testPlanDefect); + return getDataTable(list); + } + + /** + * 导出测试计划测试缺陷关联列表 + */ + @Log(title = "测试计划测试缺陷关联", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, TestPlanDefect testPlanDefect) + { + List list = testPlanDefectService.selectTestPlanDefectList(testPlanDefect); + ExcelUtil util = new ExcelUtil(TestPlanDefect.class); + util.exportExcel(response, list, "测试计划测试缺陷关联数据"); + } + + /** + * 获取测试计划测试缺陷关联详细信息 + */ + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) + { + return success(testPlanDefectService.selectTestPlanDefectById(id)); + } + + /** + * 新增测试计划测试缺陷关联 + */ + @Log(title = "测试计划测试缺陷关联", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody TestPlanDefect testPlanDefect) + { + return toAjax(testPlanDefectService.insertTestPlanDefect(testPlanDefect)); + } + + /** + * 修改测试计划测试缺陷关联 + */ + @Log(title = "测试计划测试缺陷关联", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody TestPlanDefect testPlanDefect) + { + return toAjax(testPlanDefectService.updateTestPlanDefect(testPlanDefect)); + } + + /** + * 删除测试计划测试缺陷关联 + */ + @Log(title = "测试计划测试缺陷关联", businessType = BusinessType.DELETE) + @PostMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) + { + return toAjax(testPlanDefectService.deleteTestPlanDefectByIds(ids)); + } +} diff --git a/test-test/src/main/java/com/test/test/domain/TestDefect.java b/test-test/src/main/java/com/test/test/domain/TestDefect.java new file mode 100644 index 0000000..3641cd0 --- /dev/null +++ b/test-test/src/main/java/com/test/test/domain/TestDefect.java @@ -0,0 +1,234 @@ +package com.test.test.domain; + +import com.test.common.annotation.Excel; +import com.test.common.core.domain.BaseEntity; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +/** + * 测试缺陷对象 test_defect + * + * @author test + * @date 2025-04-22 + */ +public class TestDefect extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** 主键 */ + private Long id; + + /** 测试缺陷编码 */ + @Excel(name = "缺陷编码") + private String serialNumber; + + /** 测试缺陷名称 */ +// @Excel(name = "测试缺陷名称") + private String name; + + /** 缺陷概要 */ + @Excel(name = "缺陷概要") + private String outline; + + /** 缺陷描述 */ +// @Excel(name = "缺陷描述") + private String detail; + + /** 状态(0,待确认,1,修复中,2,已完成,3,无效缺陷,4,挂起,5,待验证) */ + @Excel(name = "状态") + private String status; + + /** 经办人 */ + @Excel(name = "经办人") + private String manager; + + /** 开发人员 */ +// @Excel(name = "开发人员") + private String dev; + + /** 严重程度(0,无效,1,轻微,2,一般,3,严重,4,致命) */ + @Excel(name = "严重程度") + private String level; + + /** 缺陷类型(0,功能逻辑,1,UI交互,2,性能问题,3,兼容性问题,4,配置错误,5,安全问题,6,安装部署,7,其他) */ +// @Excel(name = "缺陷类型", readConverterExp = "0=,功能逻辑,1,UI交互,2,性能问题,3,兼容性问题,4,配置错误,5,安全问题,6,安装部署,7,其他") + private String type; + + /** 是否复现(0,必然复现,1,偶发复现) */ +// @Excel(name = "是否复现", readConverterExp = "0=,必然复现,1,偶发复现") + private String reappearance; + + /** 测试人员 */ +// @Excel(name = "测试人员") + private String test; + + /** 是否开启邮件通知(0,不开启,1,开启) */ +// @Excel(name = "是否开启邮件通知", readConverterExp = "0=,不开启,1,开启") + private String mail = "0"; + + /** 版本 */ +// @Excel(name = "版本") + private String version; + + /** 0,正常,1,删除 */ + private String delFlag; + + public void setId(Long id) + { + this.id = id; + } + + public Long getId() + { + return id; + } + public void setSerialNumber(String serialNumber) + { + this.serialNumber = serialNumber; + } + + public String getSerialNumber() + { + return serialNumber; + } + public void setName(String name) + { + this.name = name; + } + + public String getName() + { + return name; + } + public void setOutline(String outline) + { + this.outline = outline; + } + + public String getOutline() + { + return outline; + } + public void setDetail(String detail) + { + this.detail = detail; + } + + public String getDetail() + { + return detail; + } + public void setStatus(String status) + { + this.status = status; + } + + public String getStatus() + { + return status; + } + public void setManager(String manager) + { + this.manager = manager; + } + + public String getManager() + { + return manager; + } + public void setDev(String dev) + { + this.dev = dev; + } + + public String getDev() + { + return dev; + } + public void setLevel(String level) + { + this.level = level; + } + + public String getLevel() + { + return level; + } + public void setType(String type) + { + this.type = type; + } + + public String getType() + { + return type; + } + public void setReappearance(String reappearance) + { + this.reappearance = reappearance; + } + + public String getReappearance() + { + return reappearance; + } + public void setTest(String test) + { + this.test = test; + } + + public String getTest() + { + return test; + } + public void setMail(String mail) + { + this.mail = mail; + } + + public String getMail() + { + return mail; + } + public void setVersion(String version) + { + this.version = version; + } + + public String getVersion() + { + return version; + } + public void setDelFlag(String delFlag) + { + this.delFlag = delFlag; + } + + public String getDelFlag() + { + return delFlag; + } + + @Override + public String toString() { + return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) + .append("id", getId()) + .append("serialNumber", getSerialNumber()) + .append("name", getName()) + .append("outline", getOutline()) + .append("detail", getDetail()) + .append("status", getStatus()) + .append("manager", getManager()) + .append("dev", getDev()) + .append("level", getLevel()) + .append("type", getType()) + .append("reappearance", getReappearance()) + .append("test", getTest()) + .append("mail", getMail()) + .append("createTime", getCreateTime()) + .append("updateTime", getUpdateTime()) + .append("version", getVersion()) + .append("delFlag", getDelFlag()) + .toString(); + } +} diff --git a/test-test/src/main/java/com/test/test/domain/TestPlanDefect.java b/test-test/src/main/java/com/test/test/domain/TestPlanDefect.java new file mode 100644 index 0000000..31feb71 --- /dev/null +++ b/test-test/src/main/java/com/test/test/domain/TestPlanDefect.java @@ -0,0 +1,108 @@ +package com.test.test.domain; + +import com.test.common.annotation.Excel; +import com.test.common.core.domain.BaseEntity; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +/** + * 测试计划测试缺陷关联对象 test_plan_defect + * + * @author test + * @date 2025-04-22 + */ +public class TestPlanDefect extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** 主键ID */ + private Long id; + + /** 测试计划主键ID */ + @Excel(name = "测试计划主键ID") + private String planId; + + /** 测试缺陷主键ID */ + @Excel(name = "测试缺陷主键ID") + private String defectId; + + /** 测试用例类型(0,冒烟测试,1,功能测试,2,回归测试,3,准生产测试,4,生产验证) */ + @Excel(name = "测试用例类型(0,冒烟测试,1,功能测试,2,回归测试,3,准生产测试,4,生产验证)") + private String type; + + /** 版本 */ + @Excel(name = "版本") + private String version; + + /** 0,正常,1,删除 */ + private String delFlag; + + public void setId(Long id) + { + this.id = id; + } + + public Long getId() + { + return id; + } + public void setPlanId(String planId) + { + this.planId = planId; + } + + public String getPlanId() + { + return planId; + } + public void setDefectId(String defectId) + { + this.defectId = defectId; + } + + public String getDefectId() + { + return defectId; + } + public void setType(String type) + { + this.type = type; + } + + public String getType() + { + return type; + } + public void setVersion(String version) + { + this.version = version; + } + + public String getVersion() + { + return version; + } + public void setDelFlag(String delFlag) + { + this.delFlag = delFlag; + } + + public String getDelFlag() + { + return delFlag; + } + + @Override + public String toString() { + return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) + .append("id", getId()) + .append("planId", getPlanId()) + .append("defectId", getDefectId()) + .append("type", getType()) + .append("createTime", getCreateTime()) + .append("updateTime", getUpdateTime()) + .append("version", getVersion()) + .append("delFlag", getDelFlag()) + .toString(); + } +} diff --git a/test-test/src/main/java/com/test/test/domain/qo/TestDefectListQO.java b/test-test/src/main/java/com/test/test/domain/qo/TestDefectListQO.java new file mode 100644 index 0000000..c41e5fc --- /dev/null +++ b/test-test/src/main/java/com/test/test/domain/qo/TestDefectListQO.java @@ -0,0 +1,52 @@ +package com.test.test.domain.qo; + +import lombok.Data; + +import java.io.Serializable; +import java.util.Date; + +/** + * @author liangdaliang + * @Description:查询缺陷列表请求参数qo + * @date 2025-04-22 23:54 + */ +@Data +public class TestDefectListQO implements Serializable { + + private static final long serialVersionUID = 4632212018365973101L; + + /** + * 缺陷编码 + */ + private String serialNumber; + + /** + * 缺陷概要 + */ + private String outline; + + /** + * 开始创建时间 + */ + private Date startCreateTime; + + /** + * 结束创建时间 + */ + private Date endCreateTime; + + /** + * 经办人 + */ + private String manager; + + /** + * 严重程度(0,无效,1,轻微,2,一般,3,严重,4,致命) + */ + private String level; + + /** + * 状态(0,待确认,1,修复中,2,已完成,3,无效缺陷,4,挂起,5,待验证) + */ + private String status; +} diff --git a/test-test/src/main/java/com/test/test/mapper/TestDefectMapper.java b/test-test/src/main/java/com/test/test/mapper/TestDefectMapper.java new file mode 100644 index 0000000..1558e78 --- /dev/null +++ b/test-test/src/main/java/com/test/test/mapper/TestDefectMapper.java @@ -0,0 +1,63 @@ +package com.test.test.mapper; + +import com.test.test.domain.TestDefect; +import com.test.test.domain.qo.TestDefectListQO; + +import java.util.List; + +/** + * 测试缺陷Mapper接口 + * + * @author test + * @date 2025-04-22 + */ +public interface TestDefectMapper +{ + /** + * 查询测试缺陷 + * + * @param id 测试缺陷主键 + * @return 测试缺陷 + */ + public TestDefect selectTestDefectById(Long id); + + /** + * 查询测试缺陷列表 + * + * @param qo 测试缺陷 + * @return 测试缺陷集合 + */ + public List selectTestDefectList(TestDefectListQO qo); + + /** + * 新增测试缺陷 + * + * @param testDefect 测试缺陷 + * @return 结果 + */ + public int insertTestDefect(TestDefect testDefect); + + /** + * 修改测试缺陷 + * + * @param testDefect 测试缺陷 + * @return 结果 + */ + public int updateTestDefect(TestDefect testDefect); + + /** + * 删除测试缺陷 + * + * @param id 测试缺陷主键 + * @return 结果 + */ + public int deleteTestDefectById(Long id); + + /** + * 批量删除测试缺陷 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteTestDefectByIds(Long[] ids); +} diff --git a/test-test/src/main/java/com/test/test/mapper/TestPlanDefectMapper.java b/test-test/src/main/java/com/test/test/mapper/TestPlanDefectMapper.java new file mode 100644 index 0000000..085f238 --- /dev/null +++ b/test-test/src/main/java/com/test/test/mapper/TestPlanDefectMapper.java @@ -0,0 +1,62 @@ +package com.test.test.mapper; + +import com.test.test.domain.TestPlanDefect; + +import java.util.List; + +/** + * 测试计划测试缺陷关联Mapper接口 + * + * @author test + * @date 2025-04-22 + */ +public interface TestPlanDefectMapper +{ + /** + * 查询测试计划测试缺陷关联 + * + * @param id 测试计划测试缺陷关联主键 + * @return 测试计划测试缺陷关联 + */ + public TestPlanDefect selectTestPlanDefectById(Long id); + + /** + * 查询测试计划测试缺陷关联列表 + * + * @param testPlanDefect 测试计划测试缺陷关联 + * @return 测试计划测试缺陷关联集合 + */ + public List selectTestPlanDefectList(TestPlanDefect testPlanDefect); + + /** + * 新增测试计划测试缺陷关联 + * + * @param testPlanDefect 测试计划测试缺陷关联 + * @return 结果 + */ + public int insertTestPlanDefect(TestPlanDefect testPlanDefect); + + /** + * 修改测试计划测试缺陷关联 + * + * @param testPlanDefect 测试计划测试缺陷关联 + * @return 结果 + */ + public int updateTestPlanDefect(TestPlanDefect testPlanDefect); + + /** + * 删除测试计划测试缺陷关联 + * + * @param id 测试计划测试缺陷关联主键 + * @return 结果 + */ + public int deleteTestPlanDefectById(Long id); + + /** + * 批量删除测试计划测试缺陷关联 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteTestPlanDefectByIds(Long[] ids); +} diff --git a/test-test/src/main/java/com/test/test/service/ITestDefectService.java b/test-test/src/main/java/com/test/test/service/ITestDefectService.java new file mode 100644 index 0000000..c10806c --- /dev/null +++ b/test-test/src/main/java/com/test/test/service/ITestDefectService.java @@ -0,0 +1,63 @@ +package com.test.test.service; + +import com.test.test.domain.TestDefect; +import com.test.test.domain.qo.TestDefectListQO; + +import java.util.List; + +/** + * 测试缺陷Service接口 + * + * @author test + * @date 2025-04-22 + */ +public interface ITestDefectService +{ + /** + * 查询测试缺陷 + * + * @param id 测试缺陷主键 + * @return 测试缺陷 + */ + public TestDefect selectTestDefectById(Long id); + + /** + * 查询测试缺陷列表 + * + * @param qo 测试缺陷 + * @return 测试缺陷集合 + */ + public List selectTestDefectList(TestDefectListQO qo); + + /** + * 新增测试缺陷 + * + * @param testDefect 测试缺陷 + * @return 结果 + */ + public int insertTestDefect(TestDefect testDefect); + + /** + * 修改测试缺陷 + * + * @param testDefect 测试缺陷 + * @return 结果 + */ + public int updateTestDefect(TestDefect testDefect); + + /** + * 批量删除测试缺陷 + * + * @param ids 需要删除的测试缺陷主键集合 + * @return 结果 + */ + public int deleteTestDefectByIds(Long[] ids); + + /** + * 删除测试缺陷信息 + * + * @param id 测试缺陷主键 + * @return 结果 + */ + public int deleteTestDefectById(Long id); +} diff --git a/test-test/src/main/java/com/test/test/service/ITestPlanDefectService.java b/test-test/src/main/java/com/test/test/service/ITestPlanDefectService.java new file mode 100644 index 0000000..cb43e60 --- /dev/null +++ b/test-test/src/main/java/com/test/test/service/ITestPlanDefectService.java @@ -0,0 +1,62 @@ +package com.test.test.service; + +import com.test.test.domain.TestPlanDefect; + +import java.util.List; + +/** + * 测试计划测试缺陷关联Service接口 + * + * @author test + * @date 2025-04-22 + */ +public interface ITestPlanDefectService +{ + /** + * 查询测试计划测试缺陷关联 + * + * @param id 测试计划测试缺陷关联主键 + * @return 测试计划测试缺陷关联 + */ + public TestPlanDefect selectTestPlanDefectById(Long id); + + /** + * 查询测试计划测试缺陷关联列表 + * + * @param testPlanDefect 测试计划测试缺陷关联 + * @return 测试计划测试缺陷关联集合 + */ + public List selectTestPlanDefectList(TestPlanDefect testPlanDefect); + + /** + * 新增测试计划测试缺陷关联 + * + * @param testPlanDefect 测试计划测试缺陷关联 + * @return 结果 + */ + public int insertTestPlanDefect(TestPlanDefect testPlanDefect); + + /** + * 修改测试计划测试缺陷关联 + * + * @param testPlanDefect 测试计划测试缺陷关联 + * @return 结果 + */ + public int updateTestPlanDefect(TestPlanDefect testPlanDefect); + + /** + * 批量删除测试计划测试缺陷关联 + * + * @param ids 需要删除的测试计划测试缺陷关联主键集合 + * @return 结果 + */ + public int deleteTestPlanDefectByIds(Long[] ids); + + /** + * 删除测试计划测试缺陷关联信息 + * + * @param id 测试计划测试缺陷关联主键 + * @return 结果 + */ + public int deleteTestPlanDefectById(Long id); +} diff --git a/test-test/src/main/java/com/test/test/service/impl/TestDefectServiceImpl.java b/test-test/src/main/java/com/test/test/service/impl/TestDefectServiceImpl.java new file mode 100644 index 0000000..c9bfb87 --- /dev/null +++ b/test-test/src/main/java/com/test/test/service/impl/TestDefectServiceImpl.java @@ -0,0 +1,98 @@ +package com.test.test.service.impl; + +import com.test.common.utils.DateUtils; +import com.test.test.domain.TestDefect; +import com.test.test.domain.qo.TestDefectListQO; +import com.test.test.mapper.TestDefectMapper; +import com.test.test.service.ITestDefectService; +import jakarta.annotation.Resource; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * 测试缺陷Service业务层处理 + * + * @author test + * @date 2025-04-22 + */ +@Service +public class TestDefectServiceImpl implements ITestDefectService +{ + @Resource + private TestDefectMapper testDefectMapper; + + /** + * 查询测试缺陷 + * + * @param id 测试缺陷主键 + * @return 测试缺陷 + */ + @Override + public TestDefect selectTestDefectById(Long id) + { + return testDefectMapper.selectTestDefectById(id); + } + + /** + * 查询测试缺陷列表 + * + * @param qo 测试缺陷 + * @return 测试缺陷 + */ + @Override + public List selectTestDefectList(TestDefectListQO qo) + { + return testDefectMapper.selectTestDefectList(qo); + } + + /** + * 新增测试缺陷 + * + * @param testDefect 测试缺陷 + * @return 结果 + */ + @Override + public int insertTestDefect(TestDefect testDefect) + { + testDefect.setCreateTime(DateUtils.getNowDate()); + return testDefectMapper.insertTestDefect(testDefect); + } + + /** + * 修改测试缺陷 + * + * @param testDefect 测试缺陷 + * @return 结果 + */ + @Override + public int updateTestDefect(TestDefect testDefect) + { + testDefect.setUpdateTime(DateUtils.getNowDate()); + return testDefectMapper.updateTestDefect(testDefect); + } + + /** + * 批量删除测试缺陷 + * + * @param ids 需要删除的测试缺陷主键 + * @return 结果 + */ + @Override + public int deleteTestDefectByIds(Long[] ids) + { + return testDefectMapper.deleteTestDefectByIds(ids); + } + + /** + * 删除测试缺陷信息 + * + * @param id 测试缺陷主键 + * @return 结果 + */ + @Override + public int deleteTestDefectById(Long id) + { + return testDefectMapper.deleteTestDefectById(id); + } +} diff --git a/test-test/src/main/java/com/test/test/service/impl/TestPlanDefectServiceImpl.java b/test-test/src/main/java/com/test/test/service/impl/TestPlanDefectServiceImpl.java new file mode 100644 index 0000000..e2b5d42 --- /dev/null +++ b/test-test/src/main/java/com/test/test/service/impl/TestPlanDefectServiceImpl.java @@ -0,0 +1,97 @@ +package com.test.test.service.impl; + +import com.test.common.utils.DateUtils; +import com.test.test.domain.TestPlanDefect; +import com.test.test.mapper.TestPlanDefectMapper; +import com.test.test.service.ITestPlanDefectService; +import jakarta.annotation.Resource; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * 测试计划测试缺陷关联Service业务层处理 + * + * @author test + * @date 2025-04-22 + */ +@Service +public class TestPlanDefectServiceImpl implements ITestPlanDefectService +{ + @Resource + private TestPlanDefectMapper testPlanDefectMapper; + + /** + * 查询测试计划测试缺陷关联 + * + * @param id 测试计划测试缺陷关联主键 + * @return 测试计划测试缺陷关联 + */ + @Override + public TestPlanDefect selectTestPlanDefectById(Long id) + { + return testPlanDefectMapper.selectTestPlanDefectById(id); + } + + /** + * 查询测试计划测试缺陷关联列表 + * + * @param testPlanDefect 测试计划测试缺陷关联 + * @return 测试计划测试缺陷关联 + */ + @Override + public List selectTestPlanDefectList(TestPlanDefect testPlanDefect) + { + return testPlanDefectMapper.selectTestPlanDefectList(testPlanDefect); + } + + /** + * 新增测试计划测试缺陷关联 + * + * @param testPlanDefect 测试计划测试缺陷关联 + * @return 结果 + */ + @Override + public int insertTestPlanDefect(TestPlanDefect testPlanDefect) + { + testPlanDefect.setCreateTime(DateUtils.getNowDate()); + return testPlanDefectMapper.insertTestPlanDefect(testPlanDefect); + } + + /** + * 修改测试计划测试缺陷关联 + * + * @param testPlanDefect 测试计划测试缺陷关联 + * @return 结果 + */ + @Override + public int updateTestPlanDefect(TestPlanDefect testPlanDefect) + { + testPlanDefect.setUpdateTime(DateUtils.getNowDate()); + return testPlanDefectMapper.updateTestPlanDefect(testPlanDefect); + } + + /** + * 批量删除测试计划测试缺陷关联 + * + * @param ids 需要删除的测试计划测试缺陷关联主键 + * @return 结果 + */ + @Override + public int deleteTestPlanDefectByIds(Long[] ids) + { + return testPlanDefectMapper.deleteTestPlanDefectByIds(ids); + } + + /** + * 删除测试计划测试缺陷关联信息 + * + * @param id 测试计划测试缺陷关联主键 + * @return 结果 + */ + @Override + public int deleteTestPlanDefectById(Long id) + { + return testPlanDefectMapper.deleteTestPlanDefectById(id); + } +} diff --git a/test-test/src/main/resources/mapper/test/TestDefectMapper.xml b/test-test/src/main/resources/mapper/test/TestDefectMapper.xml new file mode 100644 index 0000000..22c7704 --- /dev/null +++ b/test-test/src/main/resources/mapper/test/TestDefectMapper.xml @@ -0,0 +1,151 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + select id, serial_number, name, outline, detail, status, manager, dev, level, type, reappearance, test, mail, create_time, update_time, version, del_flag from test_defect + + + + + + + + insert into test_defect + + id, + serial_number, + name, + outline, + detail, + status, + manager, + dev, + level, + type, + reappearance, + test, + mail, + create_time, + update_time, + version, + del_flag, + + + #{id}, + #{serialNumber}, + #{name}, + #{outline}, + #{detail}, + #{status}, + #{manager}, + #{dev}, + #{level}, + #{type}, + #{reappearance}, + #{test}, + #{mail}, + #{createTime}, + #{updateTime}, + #{version}, + #{delFlag}, + + + + + update test_defect + + serial_number = #{serialNumber}, + name = #{name}, + outline = #{outline}, + detail = #{detail}, + status = #{status}, + manager = #{manager}, + dev = #{dev}, + level = #{level}, + type = #{type}, + reappearance = #{reappearance}, + test = #{test}, + mail = #{mail}, + create_time = #{createTime}, + update_time = #{updateTime}, + version = #{version}, + del_flag = #{delFlag}, + + where id = #{id} + + + + delete from test_defect where id = #{id} + + + + delete from test_defect where id in + + #{id} + + + diff --git a/test-test/src/main/resources/mapper/test/TestPlanDefectMapper.xml b/test-test/src/main/resources/mapper/test/TestPlanDefectMapper.xml new file mode 100644 index 0000000..d128246 --- /dev/null +++ b/test-test/src/main/resources/mapper/test/TestPlanDefectMapper.xml @@ -0,0 +1,85 @@ + + + + + + + + + + + + + + + + + select id, plan_id, defect_id, type, create_time, update_time, version, del_flag from test_plan_defect + + + + + + + + insert into test_plan_defect + + id, + plan_id, + defect_id, + type, + create_time, + update_time, + version, + del_flag, + + + #{id}, + #{planId}, + #{defectId}, + #{type}, + #{createTime}, + #{updateTime}, + #{version}, + #{delFlag}, + + + + + update test_plan_defect + + plan_id = #{planId}, + defect_id = #{defectId}, + type = #{type}, + create_time = #{createTime}, + update_time = #{updateTime}, + version = #{version}, + del_flag = #{delFlag}, + + where id = #{id} + + + + delete from test_plan_defect where id = #{id} + + + + delete from test_plan_defect where id in + + #{id} + + + diff --git a/test-ui/src/api/test/bug.js b/test-ui/src/api/test/bug.js new file mode 100644 index 0000000..ec96b94 --- /dev/null +++ b/test-ui/src/api/test/bug.js @@ -0,0 +1,51 @@ +import request from '@/utils/request' + +const api = { + bugList: 'test/defect/list', + addBug: 'test/defect/addBug', + delBug: 'test/defect/delBug', + getBugDetail: 'test/defect/bugDetail', + updateBug: 'test/defect/editBug' +} + +export function getBugList(data) { + return request({ + url: api.bugList, + method: 'get', + params: data + }) +} + +export function addBug(data) { + return request({ + url: api.addBug, + method: 'post', + data + }) +} + +export function delBug(id) { + return request({ + url: api.delBug, + method: 'post', + data: {id} + }) +} + + +export function getBugDetail(id) { + return request({ + url: api.getBugDetail, + method: 'post', + data: {id} + }) +} + +export function updateBug(data) { + return request({ + url: api.updateBug, + method: 'post', + data:data + }) +} + diff --git a/test-ui/src/views/test/bug/index.vue b/test-ui/src/views/test/bug/index.vue new file mode 100644 index 0000000..d2e9a2a --- /dev/null +++ b/test-ui/src/views/test/bug/index.vue @@ -0,0 +1,551 @@ + + + + +