package com.aucma.report.mapper;

import java.util.List;

import com.aucma.common.annotation.DataSource;
import com.aucma.common.enums.DataSourceType;
import com.aucma.report.domain.RecordElectricalInspection;
import com.aucma.report.domain.DetailElectricalinspection;

/**
 * 电检数据记录Mapper接口
 * 
 * @author Yinq
 * @date 2023-11-09
 */
@DataSource(value = DataSourceType.SLAVE)
public interface RecordElectricalInspectionMapper 
{
    /**
     * 查询电检数据记录
     * 
     * @param uuid 电检数据记录主键
     * @return 电检数据记录
     */
    public RecordElectricalInspection selectRecordElectricalInspectionByUuid(String uuid);

    /**
     * 查询电检数据记录列表
     * 
     * @param recordElectricalInspection 电检数据记录
     * @return 电检数据记录集合
     */
    public List<RecordElectricalInspection> selectRecordElectricalInspectionList(RecordElectricalInspection recordElectricalInspection);

    /**
     * 新增电检数据记录
     * 
     * @param recordElectricalInspection 电检数据记录
     * @return 结果
     */
    public int insertRecordElectricalInspection(RecordElectricalInspection recordElectricalInspection);

    /**
     * 修改电检数据记录
     * 
     * @param recordElectricalInspection 电检数据记录
     * @return 结果
     */
    public int updateRecordElectricalInspection(RecordElectricalInspection recordElectricalInspection);

    /**
     * 删除电检数据记录
     * 
     * @param uuid 电检数据记录主键
     * @return 结果
     */
    public int deleteRecordElectricalInspectionByUuid(String uuid);

    /**
     * 批量删除电检数据记录
     * 
     * @param uuids 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteRecordElectricalInspectionByUuids(String[] uuids);

    /**
     * 批量删除电检数据明细
     * 
     * @param uuids 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteDetailElectricalinspectionByUuids(String[] uuids);
    
    /**
     * 批量新增电检数据明细
     * 
     * @param detailElectricalinspectionList 电检数据明细列表
     * @return 结果
     */
    public int batchDetailElectricalinspection(List<DetailElectricalinspection> detailElectricalinspectionList);
    

    /**
     * 通过电检数据记录主键删除电检数据明细信息
     * 
     * @param uuid 电检数据记录ID
     * @return 结果
     */
    public int deleteDetailElectricalinspectionByUuid(String uuid);
}
