package com.xunmei.core.access.mapper;


import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.xunmei.core.access.domain.CoreMonitoringTaskRegistrationMonitor;
import com.xunmei.core.access.vo.CoreMonitoringTaskRegistrationMonitorVO;
import com.xunmei.core.access.vo.CoreMonitoringTaskRegistrationVO;
import org.apache.ibatis.annotations.Mapper;

import java.util.List;

/**
 * 调阅任务登记监控Mapper接口
 *
 * @author xunmei
 * @date 2023-08-29
 */
@Mapper
public interface CoreMonitoringTaskRegistrationMonitorMapper extends BaseMapper<CoreMonitoringTaskRegistrationMonitor> {
    /**
     * 查询调阅任务登记监控
     *
     * @param id 调阅任务登记监控主键
     * @return 调阅任务登记监控
     */
    CoreMonitoringTaskRegistrationMonitor selectCoreMonitoringTaskRegistrationMonitorById(String id);

    /**
     * 查询调阅任务登记监控列表
     *
     * @param coreMonitoringTaskRegistrationMonitor 调阅任务登记监控
     * @return 调阅任务登记监控集合
     */
    List<CoreMonitoringTaskRegistrationMonitor> selectCoreMonitoringTaskRegistrationMonitorList(CoreMonitoringTaskRegistrationMonitor coreMonitoringTaskRegistrationMonitor);

    /**
     * 新增调阅任务登记监控
     *
     * @param coreMonitoringTaskRegistrationMonitor 调阅任务登记监控
     * @return 结果
     */
    int insertCoreMonitoringTaskRegistrationMonitor(CoreMonitoringTaskRegistrationMonitor coreMonitoringTaskRegistrationMonitor);

    /**
     * 修改调阅任务登记监控
     *
     * @param coreMonitoringTaskRegistrationMonitor 调阅任务登记监控
     * @return 结果
     */
    int updateCoreMonitoringTaskRegistrationMonitor(CoreMonitoringTaskRegistrationMonitor coreMonitoringTaskRegistrationMonitor);

    /**
     * 删除调阅任务登记监控
     *
     * @param id 调阅任务登记监控主键
     * @return 结果
     */
    int deleteCoreMonitoringTaskRegistrationMonitorById(String id);

    /**
     * 批量删除调阅任务登记监控
     *
     * @param ids 需要删除的数据主键集合
     * @return 结果
     */
    int deleteCoreMonitoringTaskRegistrationMonitorByIds(String[] ids);

    /**
     * 查询任务与开始时间
     * @param taskId
     * @return
     */
    CoreMonitoringTaskRegistrationVO selectTaskName(Long taskId);

    /**
     * 查询监控集合根据任务调阅任务登记扫描表id
     * @param taskRegistrationId
     * @return
     */
 List<CoreMonitoringTaskRegistrationMonitorVO>    selectMonitorByTaskRegistrationId(Long taskRegistrationId);

    /**
     * 根据监控id查询监控
      * @param id
     * @return
     */
 CoreMonitoringTaskRegistrationMonitorVO selectMonitorById(Long id);
}
