优化查询sql 小程序未读消息数量通过websocket获取
This commit is contained in:
parent
5bb4ecc25a
commit
413cc421a8
@ -63,7 +63,7 @@
|
|||||||
select * from (
|
select * from (
|
||||||
SELECT
|
SELECT
|
||||||
a.FROM_ID AS authorId,
|
a.FROM_ID AS authorId,
|
||||||
a.FROM_NAME AS authorName,
|
b.AUTHOR_NAME AS authorName,
|
||||||
b.AVATAR_URL AS authorAvatar,
|
b.AVATAR_URL AS authorAvatar,
|
||||||
a.content,
|
a.content,
|
||||||
a.create_time,
|
a.create_time,
|
||||||
@ -90,7 +90,7 @@
|
|||||||
|
|
||||||
SELECT
|
SELECT
|
||||||
a.TO_ID AS authorId,
|
a.TO_ID AS authorId,
|
||||||
a.TO_NAME AS authorName,
|
b.AUTHOR_NAME AS authorName,
|
||||||
b.AVATAR_URL AS authorAvatar,
|
b.AVATAR_URL AS authorAvatar,
|
||||||
a.content,
|
a.content,
|
||||||
a.create_time,
|
a.create_time,
|
||||||
|
@ -0,0 +1,50 @@
|
|||||||
|
package com.dd.admin.business.webSocket.handler;
|
||||||
|
|
||||||
|
import com.dd.admin.business.api.domain.UnReadCountBean;
|
||||||
|
import com.dd.admin.business.author.service.AuthorService;
|
||||||
|
import com.dd.admin.business.chat.service.ChatService;
|
||||||
|
import com.dd.admin.business.follow.service.FollowService;
|
||||||
|
import com.dd.admin.business.reply.service.ReplyService;
|
||||||
|
import com.dd.admin.business.starNotes.service.StarNotesService;
|
||||||
|
import com.dd.admin.business.upNotes.service.UpNotesService;
|
||||||
|
import com.dd.admin.business.webSocket.MsgHandlerInterface;
|
||||||
|
import com.dd.admin.business.webSocket.util.TioUtil;
|
||||||
|
import io.swagger.annotations.ApiModel;
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
import org.tio.core.ChannelContext;
|
||||||
|
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
|
|
||||||
|
@Slf4j
|
||||||
|
@Service("9")
|
||||||
|
@ApiModel("获取未读总数Handler")
|
||||||
|
public class GetApiReadCountMessageHandler implements MsgHandlerInterface {
|
||||||
|
@Autowired
|
||||||
|
ChatService chatService;
|
||||||
|
@Autowired
|
||||||
|
UpNotesService upNotesService;
|
||||||
|
@Autowired
|
||||||
|
StarNotesService starNotesService;
|
||||||
|
@Autowired
|
||||||
|
ReplyService replyService;
|
||||||
|
@Autowired
|
||||||
|
FollowService followService;
|
||||||
|
@Override
|
||||||
|
public Object handler(Map map, ChannelContext context) {
|
||||||
|
String authorId = String.valueOf(map.get("authorId"));
|
||||||
|
Integer chatUnReadCount = chatService.selectUnReadCount(authorId);
|
||||||
|
Integer upNotesUnReadCount = upNotesService.selectUnReadCount(authorId);
|
||||||
|
Integer starNotesUnReadCount = starNotesService.selectUnReadCount(authorId);
|
||||||
|
Integer replyUnReadCount = replyService.selectUnReadCount(authorId);
|
||||||
|
Integer followUnReadCount = followService.selectUnReadCount(authorId);
|
||||||
|
Integer totalUnReadCount = 0;
|
||||||
|
UnReadCountBean unReadCountBean = new UnReadCountBean(chatUnReadCount,upNotesUnReadCount,starNotesUnReadCount,replyUnReadCount,followUnReadCount,totalUnReadCount);
|
||||||
|
unReadCountBean.calculateTotalUnReadCount();
|
||||||
|
|
||||||
|
TioUtil.sendChatMessageToUser(context.getGroupContext(),authorId,"9",unReadCountBean);
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
}
|
@ -83,6 +83,17 @@
|
|||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
|
||||||
|
|
||||||
|
<el-table-column
|
||||||
|
label="操作时间"
|
||||||
|
width="160"
|
||||||
|
align="center"
|
||||||
|
>
|
||||||
|
<template slot-scope="scope">
|
||||||
|
{{ scope.row.createTime }}
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
|
||||||
<el-table-column
|
<el-table-column
|
||||||
label="请求模块"
|
label="请求模块"
|
||||||
width="160"
|
width="160"
|
||||||
@ -165,15 +176,6 @@
|
|||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
|
||||||
<el-table-column
|
|
||||||
label="操作时间"
|
|
||||||
width="160"
|
|
||||||
align="center"
|
|
||||||
>
|
|
||||||
<template slot-scope="scope">
|
|
||||||
{{ scope.row.createTime }}
|
|
||||||
</template>
|
|
||||||
</el-table-column>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -82,7 +82,6 @@
|
|||||||
});
|
});
|
||||||
this.contact = contact
|
this.contact = contact
|
||||||
contact.page = 1
|
contact.page = 1
|
||||||
contact.chatList = []
|
|
||||||
//读取当前用户信息
|
//读取当前用户信息
|
||||||
this.readAuthorMessage(contact.id)
|
this.readAuthorMessage(contact.id)
|
||||||
//获取总未读消息
|
//获取总未读消息
|
||||||
@ -140,8 +139,6 @@
|
|||||||
//倒序查询但是正序排列 时间早的在前面
|
//倒序查询但是正序排列 时间早的在前面
|
||||||
this.contact.totalPage = res.data.pages
|
this.contact.totalPage = res.data.pages
|
||||||
const messages = res.data.records
|
const messages = res.data.records
|
||||||
|
|
||||||
this.contact.chatList.push(... res.data.records.reverse());
|
|
||||||
//当前页数小于等于总页数
|
//当前页数小于等于总页数
|
||||||
if(this.contact.page<=res.data.pages){
|
if(this.contact.page<=res.data.pages){
|
||||||
//等于1时执行页面滚动操作
|
//等于1时执行页面滚动操作
|
||||||
|
Loading…
x
Reference in New Issue
Block a user