package com.hzs.system.config.mapper;


import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.hzs.common.domain.system.config.BdNoticeConfig;
import com.hzs.system.config.param.BdNoticeConfigParam;
import com.hzs.system.config.vo.BdNoticeConfigVO;

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

/**
 * <p>
 * 公告配置表 Mapper 接口
 * </p>
 *
 * @author hzs
 * @since 2023-02-02
 */
public interface BdNoticeConfigMapper extends BaseMapper<BdNoticeConfig> {
    /**
     * 获取公告配置列表信息
     *
     * @param noticeConfigVO 公告信息
     * @return List<BdNoticeConfig>
     */
    List<BdNoticeConfig> getBdNoticeConfigList(BdNoticeConfigVO noticeConfigVO);

    /**
     * 更新公告配置信息
     *
     * @param noticeConfigVO 公告信息
     * @return Integer
     */
    Integer updateNoticeConfig(BdNoticeConfigVO noticeConfigVO);

    /**
     * 根据角色、用户更新公告信息
     *
     * @param noticeConfigVO 公告信息
     * @return Integer
     */
    Integer updateNoticeConfigByContent(BdNoticeConfigVO noticeConfigVO);

    /**
     * 根据分类查询公告信息
     *
     * @param param 分类信息
     * @return List<String>
     */
    String getBdNoticeConfigListByCategroy(BdNoticeConfigParam param);

    /**
     * 获取公告的角色、用户权限
     *
     * @param param 入参
     * @return List<Map<String, String>>
     */
    List<Map<String, String>> getNoticeRoleAndUser(BdNoticeConfigParam param);
}
