package com.ruoyi.system.mapper; import com.ruoyi.system.domain.NotifyChannelConfig; import org.apache.ibatis.annotations.Param; import java.util.List; /** * 通知渠道配置Mapper接口 * * @author ruoyi * @date 2025-12-07 */ public interface NotifyChannelConfigMapper { /** * 查询通知渠道配置 * * @param id 主键ID * @return 通知渠道配置 */ NotifyChannelConfig selectNotifyChannelConfigById(Long id); /** * 查询通知渠道配置列表 * * @param notifyChannelConfig 查询条件 * @return 通知渠道配置列表 */ List selectNotifyChannelConfigList(NotifyChannelConfig notifyChannelConfig); /** * 查询指定通知类型启用的渠道配置 * 按优先级降序排列 * * @param notifyType 通知类型 * @return 启用的渠道配置列表 */ List selectEnabledChannelsByType(@Param("notifyType") String notifyType); /** * 检查指定渠道是否启用 * * @param notifyType 通知类型 * @param channel 渠道 * @return 配置信息 */ NotifyChannelConfig selectByTypeAndChannel(@Param("notifyType") String notifyType, @Param("channel") String channel); /** * 新增通知渠道配置 * * @param notifyChannelConfig 通知渠道配置 * @return 影响行数 */ int insertNotifyChannelConfig(NotifyChannelConfig notifyChannelConfig); /** * 修改通知渠道配置 * * @param notifyChannelConfig 通知渠道配置 * @return 影响行数 */ int updateNotifyChannelConfig(NotifyChannelConfig notifyChannelConfig); /** * 删除通知渠道配置 * * @param id 主键ID * @return 影响行数 */ int deleteNotifyChannelConfigById(Long id); /** * 批量删除通知渠道配置 * * @param ids 需要删除的主键ID集合 * @return 影响行数 */ int deleteNotifyChannelConfigByIds(Long[] ids); }