package com.yanzhu.jh.video.service;

import com.yanzhu.jh.video.domain.SurProjectVideoConfig;
import com.yanzhu.jh.video.domain.SurProjectVideoPassage;

import java.util.List;

/**
 * 视频配置Service接口
 * 
 * @author JiangYuQi
 * @date 2023-08-25
 */
public interface ISurProjectVideoConfigService 
{
    /**
     * 查询视频配置
     * 
     * @param id 视频配置主键
     * @return 视频配置
     */
    public SurProjectVideoConfig selectSurProjectVideoConfigById(Long id);

    /**
     * 查询视频配置列表
     * 
     * @param surProjectVideoConfig 视频配置
     * @return 视频配置集合
     */
    public List<SurProjectVideoConfig> selectSurProjectVideoConfigList(SurProjectVideoConfig surProjectVideoConfig);

    /**
     * 新增视频配置
     * 
     * @param surProjectVideoConfig 视频配置
     * @return 结果
     */
    public int insertSurProjectVideoConfig(SurProjectVideoConfig surProjectVideoConfig);

    /**
     * 修改视频配置
     * 
     * @param surProjectVideoConfig 视频配置
     * @return 结果
     */
    public int updateSurProjectVideoConfig(SurProjectVideoConfig surProjectVideoConfig);


    /**
     * 修改视频配置
     *
     * @param surProjectVideoConfig 视频配置
     * @return 结果
     */
    public int updateVideoConfig(SurProjectVideoConfig surProjectVideoConfig);

    /**
     * 批量删除视频配置
     * 
     * @param ids 需要删除的视频配置主键集合
     * @return 结果
     */
    public int deleteSurProjectVideoConfigByIds(Long[] ids);

    /**
     * 删除视频配置信息
     * 
     * @param id 视频配置主键
     * @return 结果
     */
    public int deleteSurProjectVideoConfigById(Long id);

    /**
     * 修改视频通道状态
     *
     * @param SurProjectVideoPassage 视频通道
     * @return 结果
     */
    public int editPassageState(SurProjectVideoPassage SurProjectVideoPassage);

    /**
     * 获取设备通道
     *
     * @param videoDvrNumberd 设备编号
     * @return 结果
     */
    public List<SurProjectVideoPassage> getVideoPassage(String videoDvrNumberd);

    /**
     * 修改设备状态
     *
     * @param surProjectVideoConfig 视频通道
     */

    public int updateSurProjectVideoConfigSignalState(String videoDvrNumberd);
}
