package com.yanzhu.jh.video.mapper;

import java.util.List;
import com.yanzhu.jh.video.domain.DevAiProjectConfig;
import com.yanzhu.jh.video.domain.DevAiProjectConfigPassage;

/**
 * 设备配置Mapper接口
 * 
 * @author JiangYuQi
 * @date 2023-10-03
 */
public interface DevAiProjectConfigMapper 
{
    /**
     * 查询设备配置
     * 
     * @param id 设备配置主键
     * @return 设备配置
     */
    public DevAiProjectConfig selectDevAiProjectConfigById(Long id);

    /**
     * 查询设备配置列表
     * 
     * @param devAiProjectConfig 设备配置
     * @return 设备配置集合
     */
    public List<DevAiProjectConfig> selectDevAiProjectConfigList(DevAiProjectConfig devAiProjectConfig);

    /**
     * 新增设备配置
     * 
     * @param devAiProjectConfig 设备配置
     * @return 结果
     */
    public int insertDevAiProjectConfig(DevAiProjectConfig devAiProjectConfig);

    /**
     * 修改设备配置
     * 
     * @param devAiProjectConfig 设备配置
     * @return 结果
     */
    public int updateDevAiProjectConfig(DevAiProjectConfig devAiProjectConfig);

    /**
     * 删除设备配置
     * 
     * @param id 设备配置主键
     * @return 结果
     */
    public int deleteDevAiProjectConfigById(Long id);

    /**
     * 批量删除设备配置
     * 
     * @param ids 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteDevAiProjectConfigByIds(Long[] ids);

    /**
     * 批量删除设备配置通道
     * 
     * @param ids 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteDevAiProjectConfigPassageByAiboxIds(Long[] ids);
    
    /**
     * 批量新增设备配置通道
     * 
     * @param devAiProjectConfigPassageList 设备配置通道列表
     * @return 结果
     */
    public int batchDevAiProjectConfigPassage(List<DevAiProjectConfigPassage> devAiProjectConfigPassageList);
    

    /**
     * 通过设备配置主键删除设备配置通道信息
     * 
     * @param id 设备配置ID
     * @return 结果
     */
    public int deleteDevAiProjectConfigPassageByAiboxId(Long id);
}
