package com.ruoyi.hezhi.service;

import com.ruoyi.hezhi.domain.TbLiveBroadcast;

import java.util.List;
import java.util.Map;

/**
 * 直播Service接口
 *
 * @author ruoyi
 * @date 2024-10-22
 */
public interface ITbLiveBroadcastService
{
    /**
     * 查询直播
     *
     * @param liveBroadcastId 直播主键
     * @return 直播
     */
    public TbLiveBroadcast selectTbLiveBroadcastByLiveBroadcastId(Long liveBroadcastId);

    /**
     * 查询直播列表
     *
     * @param tbLiveBroadcast 直播
     * @return 直播集合
     */
    public List<TbLiveBroadcast> selectTbLiveBroadcastList(TbLiveBroadcast tbLiveBroadcast);

    /**
     * 新增直播
     *
     * @param tbLiveBroadcast 直播
     * @return 结果
     */
    public int insertTbLiveBroadcast(TbLiveBroadcast tbLiveBroadcast);

    /**
     * 修改直播
     *
     * @param tbLiveBroadcast 直播
     * @return 结果
     */
    public int updateTbLiveBroadcast(TbLiveBroadcast tbLiveBroadcast);

    /**
     * 批量删除直播
     *
     * @param liveBroadcastIds 需要删除的直播主键集合
     * @return 结果
     */
    public int deleteTbLiveBroadcastByLiveBroadcastIds(Long[] liveBroadcastIds);

    /**
     * 删除直播信息
     *
     * @param liveBroadcastId 直播主键
     * @return 结果
     */
    public int deleteTbLiveBroadcastByLiveBroadcastId(Long liveBroadcastId);

    /**
     * 直播预告列表
     *
     * @param params 参数
     * @return 直播预告列表
     */
    public List<Map<String, Object>> getLiveBroadcastList(Map<String, Object> params);

    public List<Map<String, Object>> getLiveBroadcastEvaluateAgencyList();

    /**
     * 直播预告详情
     *
     * @param params 参数
     * @return 直播预告详情
     */
    public Map<String, Object> getLiveBroadcastInfo(Map<String, Object> params);
}
