package com.sooka.sponest.monitor.broadcast.service;

import java.util.List;

import com.sooka.sponest.monitor.aidevicedept.domain.CenterdataTAidevicedept;
import com.sooka.sponest.monitor.broadcast.domain.CentermonitorTCloudBroadcast;
import com.sooka.sponest.monitor.camera.domain.CentermonitorTCamera;
import org.apache.ibatis.annotations.Param;

/**
 * 云广播设备Service接口
 *
 * @author ruoyi
 * @date 2023-04-23
 */
public interface ICentermonitorTCloudBroadcastService
{
    /**
     * 查询云广播设备
     *
     * @param id 云广播设备主键
     * @return 云广播设备
     */
    public CentermonitorTCloudBroadcast selectCentermonitorTCloudBroadcastById(String id);

    /**
     * 查询云广播设备列表
     *
     * @param centermonitorTCloudBroadcast 云广播设备
     * @return 云广播设备集合
     */
    public List<CentermonitorTCloudBroadcast> selectCentermonitorTCloudBroadcastList(CentermonitorTCloudBroadcast centermonitorTCloudBroadcast);

    /**
     * 查询云广播设备列表(所有)
     *
     * @param centermonitorTCloudBroadcast 云广播设备
     * @return 云广播设备集合
     */
    public List<CentermonitorTCloudBroadcast> selectCentermonitorTCloudBroadcastListAll(CentermonitorTCloudBroadcast centermonitorTCloudBroadcast);

    /**
     * 查询部门管理列表
     *
     * @param centerdataTAidevicedept 部门管理列表
     * @return 监测设备集合
     */
    public List<CenterdataTAidevicedept> selectDeptBroadcastData(CenterdataTAidevicedept centerdataTAidevicedept);


    /**
     * 查询云广播设备列表
     *
     * @param str 云广播设备
     * @return 云广播设备集合
     */
    public List<CentermonitorTCloudBroadcast> selectListByDeptId(List<String> str);

    /**
     * 新增云广播设备
     *
     * @param centermonitorTCloudBroadcast 云广播设备
     * @return 结果
     */
    public int insertCentermonitorTCloudBroadcast(CentermonitorTCloudBroadcast centermonitorTCloudBroadcast);

    /**
     * 修改云广播设备
     *
     * @param centermonitorTCloudBroadcast 云广播设备
     * @return 结果
     */
    public int updateCentermonitorTCloudBroadcast(CentermonitorTCloudBroadcast centermonitorTCloudBroadcast);

    /**
     * 批量删除云广播设备
     *
     * @param ids 需要删除的云广播设备主键集合
     * @return 结果
     */
    public int deleteCentermonitorTCloudBroadcastByIds(String[] ids);

    /**
     * 删除云广播设备信息
     *
     * @param id 云广播设备主键
     * @return 结果
     */
    public int deleteCentermonitorTCloudBroadcastById(String id);

    /**
     * 查询附近云广播列表
     */
    public List<CentermonitorTCloudBroadcast>selectNearHorn(String longitude, String latitude,String broadcastUse,String distance, String type);
}
