package com.ruoyi.system.service;
|
|
import java.util.List;
|
import com.ruoyi.system.domain.SysMessage;
|
import com.ruoyi.system.domain.SysTask;
|
|
/**
|
* 系统消息Service接口
|
*
|
* @author ruoyi
|
* @date 2025-10-25
|
*/
|
public interface ISysMessageService {
|
|
/**
|
* 查询系统消息
|
*
|
* @param messageId 系统消息主键
|
* @return 系统消息
|
*/
|
public SysMessage selectSysMessageByMessageId(Long messageId);
|
|
/**
|
* 查询系统消息列表
|
*
|
* @param sysMessage 系统消息
|
* @return 系统消息集合
|
*/
|
public List<SysMessage> selectSysMessageList(SysMessage sysMessage);
|
|
/**
|
* 查询用户的消息列表
|
*
|
* @param receiverId 接收人ID
|
* @return 系统消息集合
|
*/
|
public List<SysMessage> selectSysMessageListByReceiverId(Long receiverId);
|
|
/**
|
* 查询用户未读消息数量
|
*
|
* @param receiverId 接收人ID
|
* @return 未读消息数量
|
*/
|
public int countUnreadMessageByReceiverId(Long receiverId);
|
|
/**
|
* 新增系统消息
|
*
|
* @param sysMessage 系统消息
|
* @return 结果
|
*/
|
public int insertSysMessage(SysMessage sysMessage);
|
|
/**
|
* 修改系统消息
|
*
|
* @param sysMessage 系统消息
|
* @return 结果
|
*/
|
public int updateSysMessage(SysMessage sysMessage);
|
|
/**
|
* 批量删除系统消息
|
*
|
* @param messageIds 需要删除的系统消息主键集合
|
* @return 结果
|
*/
|
public int deleteSysMessageByMessageIds(Long[] messageIds);
|
|
/**
|
* 删除系统消息信息
|
*
|
* @param messageId 系统消息主键
|
* @return 结果
|
*/
|
public int deleteSysMessageByMessageId(Long messageId);
|
|
/**
|
* 标记消息为已读
|
*
|
* @param messageId 消息ID
|
* @return 结果
|
*/
|
public int markMessageAsRead(Long messageId);
|
|
/**
|
* 标记用户所有消息为已读
|
*
|
* @param receiverId 接收人ID
|
* @return 结果
|
*/
|
public int markAllMessagesAsRead(Long receiverId);
|
|
// ========== 消息推送业务方法 ==========
|
|
/**
|
* 推送任务创建成功消息(给创建人)
|
*
|
* @param task 任务对象
|
*/
|
public void pushTaskCreateMessage(SysTask task);
|
|
/**
|
* 推送任务分配消息(给执行人)
|
*
|
* @param task 任务对象
|
* @param assigneeIds 执行人ID列表
|
*/
|
public void pushTaskAssignMessage(SysTask task, List<Long> assigneeIds);
|
|
/**
|
* 推送任务状态变更消息(给相关人员)
|
*
|
* @param task 任务对象
|
* @param oldStatus 旧状态
|
* @param newStatus 新状态
|
*/
|
public void pushTaskStatusChangeMessage(SysTask task, String oldStatus, String newStatus);
|
}
|