package com.test.test.service;

import com.test.test.domain.TestPlanDefect;

import com.test.test.domain.qo.TestPlanDefectQO;
import com.test.test.domain.qo.TestPlanDefectRelQO;
import com.test.test.domain.vo.TestPlanDefectVo;
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<TestPlanDefectVo> selectTestPlanDefectList(TestPlanDefectQO testPlanDefect);

    /**
     * 新增测试计划测试缺陷关联
     *
     * @param qo 测试计划测试缺陷关联
     * @return 结果
     */
    public void insertTestPlanDefect(TestPlanDefectRelQO qo);

    /**
     * 修改测试计划测试缺陷关联
     *
     * @param testPlanDefect 测试计划测试缺陷关联
     * @return 结果
     */
    public int updateTestPlanDefect(TestPlanDefect testPlanDefect);

    /**
     * 批量删除测试计划测试缺陷关联
     *
     * @param ids 需要删除的测试计划测试缺陷关联主键集合
     * @return 结果
     */
    public int deleteTestPlanDefectByIds(Long[] ids);

    /**
     * 删除测试计划测试缺陷关联信息
     *
     * @param id 测试计划测试缺陷关联主键
     * @return 结果
     */
    public int deleteTestPlanDefectById(Long id);
}
