package com.gxwebsoft.love.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.gxwebsoft.common.core.web.PageResult;
import com.gxwebsoft.love.entity.ChatMessage;
import com.gxwebsoft.love.param.ChatMessageParam;

import java.util.List;

/**
 * 聊天消息表Service
 *
 * @author 科技小王子
 * @since 2023-06-10 18:27:25
 */
public interface ChatMessageService extends IService<ChatMessage> {

    /**
     * 分页关联查询
     *
     * @param param 查询参数
     * @return PageResult<ChatMessage>
     */
    PageResult<ChatMessage> pageRel(ChatMessageParam param);

    /**
     * 关联查询全部
     *
     * @param param 查询参数
     * @return List<ChatMessage>
     */
    List<ChatMessage> listRel(ChatMessageParam param);

    /**
     * 根据id查询
     *
     * @param id 自增ID
     * @return ChatMessage
     */
    ChatMessage getByIdRel(Integer id);

    List<ChatMessage> getUnreadMessage(Integer fromUserId, Integer toUserId);

    boolean sendMessage(ChatMessage message);

    List<ChatMessage> getFriendMessage(Integer userId1, Integer userId2);

}
