package com.zd.laboratory.mapper;

import java.util.List;

import com.zd.system.api.laboratory.domain.LabMessageContent;
import com.zd.laboratory.domain.dto.LabMessageContentListQuery;
import com.zd.laboratory.domain.vo.LabMessageContentVO;

/**
 * 消息发布Mapper接口
 *
 * @author zd
 * @date 2021-09-02
 */
public interface LabMessageContentMapper {
    /**
     * 查询消息发布
     *
     * @param id 消息发布主键
     * @return 消息发布
     */
    public LabMessageContent selectLabMessageContentById(Long id);

    /**
     * 查询消息发布列表
     *
     * @param labMessageContent 消息发布
     * @return 消息发布集合
     */
    public List<LabMessageContent> selectLabMessageContentList(LabMessageContent labMessageContent);

    /**
     * 查询消息发布列表VO
     *
     * @param labMessageContent 消息发布查询条件
     * @return 消息发布集合
     */
    public List<LabMessageContentVO> selectLabMessageContentVOList(LabMessageContentListQuery labMessageContent);


    /**
     * 查询消息发布列表VO
     *
     * @param labMessageContent 消息发布查询条件
     * @return 消息发布集合
     */
    public List<LabMessageContentVO> selectLabClearMessageList(LabMessageContentListQuery labMessageContent);

    /**
     * 新增消息发布
     *
     * @param labMessageContent 消息发布
     * @return 结果
     */
    public int insertLabMessageContent(LabMessageContent labMessageContent);

    /**
     * 修改消息发布
     *
     * @param labMessageContent 消息发布
     * @return 结果
     */
    public int updateLabMessageContent(LabMessageContent labMessageContent);

    /**
     * 删除消息发布
     *
     * @param id 消息发布主键
     * @return 结果
     */
    public int deleteLabMessageContentById(Long id);

    /**
     * 批量删除消息发布
     *
     * @param ids 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteLabMessageContentByIds(Long[] ids);
}
