<?xml version="1.0" encoding="UTF-8"?>
|
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
<mapper namespace="org.springblade.jfpt.chatrecords.mapper.ChatRecordsMapper">
|
|
<!--查询单聊的消息记录列表-->
|
<select id="selectChatRecordsPage" resultType="org.springblade.jfpt.chatrecords.entity.ChatRecords">
|
select * from sys_chat_records where sender_id = #{chatRecords.senderId} and recipient_id = #{chatRecords.recipientId}
|
union
|
select * from sys_chat_records where sender_id = #{chatRecords.recipientId} and recipient_id = #{chatRecords.senderId}
|
order by post_time desc
|
</select>
|
|
<!--聊天列表-->
|
<select id="getChatListPage" resultType="org.springblade.jfpt.chatrecords.vo.ChatRecordsVo">
|
select scrss.*,name recipientNickName,real_name recipientName,avatar from jfpthpublicsecurity.blade_user bu
|
right join
|
(
|
select scr.id,scrs.uid recipientId,post_time postTime,post_message postMessage from sys_chat_records scr
|
right join
|
(
|
select max(max_id) id,uid from (
|
select recipient_id as uid,max(id) as max_id from sys_chat_records where sender_id = #{chatRecords.senderId} group by recipient_id
|
union all
|
select sender_id as uid,max(id) as max_id from sys_chat_records where recipient_id = #{chatRecords.senderId} group by sender_id
|
)t group by uid
|
) scrs
|
on
|
scr.id = scrs.id
|
) scrss
|
on
|
bu.id = scrss.recipientId
|
order by postTime desc
|
</select>
|
|
</mapper>
|