package com.ruoyi.system.mapper; import java.util.List; import com.ruoyi.system.domain.SysMessage; import org.apache.ibatis.annotations.Param; /** * 系统消息Mapper接口 * * @author ruoyi * @date 2025-10-25 */ public interface SysMessageMapper { /** * 查询系统消息 * * @param messageId 系统消息主键 * @return 系统消息 */ public SysMessage selectSysMessageByMessageId(Long messageId); /** * 查询系统消息列表 * * @param sysMessage 系统消息 * @return 系统消息集合 */ public List selectSysMessageList(SysMessage sysMessage); /** * 查询用户的消息列表 * * @param receiverId 接收人ID * @return 系统消息集合 */ public List selectSysMessageListByReceiverId(@Param("receiverId") Long receiverId); /** * 查询用户未读消息数量 * * @param receiverId 接收人ID * @return 未读消息数量 */ public int countUnreadMessageByReceiverId(@Param("receiverId") Long receiverId); /** * 新增系统消息 * * @param sysMessage 系统消息 * @return 结果 */ public int insertSysMessage(SysMessage sysMessage); /** * 修改系统消息 * * @param sysMessage 系统消息 * @return 结果 */ public int updateSysMessage(SysMessage sysMessage); /** * 删除系统消息 * * @param messageId 系统消息主键 * @return 结果 */ public int deleteSysMessageByMessageId(Long messageId); /** * 批量删除系统消息 * * @param messageIds 需要删除的数据主键集合 * @return 结果 */ public int deleteSysMessageByMessageIds(Long[] messageIds); /** * 标记消息为已读 * * @param messageId 消息ID * @return 结果 */ public int markMessageAsRead(@Param("messageId") Long messageId); /** * 标记用户所有消息为已读 * * @param receiverId 接收人ID * @return 结果 */ public int markAllMessagesAsRead(@Param("receiverId") Long receiverId); }