From cd300053b140903098916b8f067eb09fc5b9eb2d Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Wed, 26 May 2021 18:29:21 +0800
Subject: [PATCH] 20210526 聊天
---
src/main/resources/mapper/otc/OtcMsgHistoryDao.xml | 1 +
src/main/java/com/xcong/excoin/modules/otc/vo/ChatBoxVo.java | 6 ++++++
src/main/java/com/xcong/excoin/modules/otc/service/impl/OtcMsgServiceImpl.java | 30 ++++++++++++++++++++++++++++--
src/main/java/com/xcong/excoin/modules/otc/vo/MsgListVo.java | 9 +++++++++
src/main/resources/mapper/otc/OtcMsgUserListDao.xml | 2 ++
5 files changed, 46 insertions(+), 2 deletions(-)
diff --git a/src/main/java/com/xcong/excoin/modules/otc/service/impl/OtcMsgServiceImpl.java b/src/main/java/com/xcong/excoin/modules/otc/service/impl/OtcMsgServiceImpl.java
index 3b8212a..e1b6542 100644
--- a/src/main/java/com/xcong/excoin/modules/otc/service/impl/OtcMsgServiceImpl.java
+++ b/src/main/java/com/xcong/excoin/modules/otc/service/impl/OtcMsgServiceImpl.java
@@ -45,18 +45,33 @@
public IPage<MsgListVo> getMsgList(MsgListDto msgListDto) {
MemberEntity member = LoginUserUtils.getAppLoginUser();
Long memberId = member.getId();
-// Long memberId = 444L;
+// Long memberId = 445L;
Page<MsgListVo> page = new Page<>(msgListDto.getPageNum(), msgListDto.getPageSize());
OtcMsgUserListEntity otcMsgUserListEntity = new OtcMsgUserListEntity();
otcMsgUserListEntity.setMemberId(memberId);
- return otcMsgUserListDao.getMsgList(otcMsgUserListEntity, page);
+ IPage<MsgListVo> msgList = otcMsgUserListDao.getMsgList(otcMsgUserListEntity, page);
+ List<MsgListVo> records = msgList.getRecords();
+ if(CollUtil.isNotEmpty(records)){
+ for(MsgListVo msgListVo : records){
+ long targetId = msgListVo.getTargetId();
+ if(memberId == targetId){
+ MemberEntity memberEntity = memberDao.selectById(msgListVo.getMemberId());
+ msgListVo.setNickname(memberEntity.getName());
+ }else{
+ MemberEntity memberEntity = memberDao.selectById(targetId);
+ msgListVo.setNickname(memberEntity.getName());
+ }
+ }
+ }
+ return msgList;
}
@Override
@Transactional
public Result getChatBox(ChatBoxDto chatBoxDto) {
MemberEntity member = LoginUserUtils.getAppLoginUser();
+// MemberEntity member = memberDao.selectById(444L);
//对话是否存在
long id = chatBoxDto.getId();
if(ObjectUtil.isEmpty(id)){
@@ -77,6 +92,17 @@
otcMsgHistoryEntity.setMemberId(memberId);
otcMsgHistoryEntity.setTargetId(targetId);
IPage<ChatBoxVo> chatBoxVos= otcMsgHistoryDao.getChatBoxMsgList(page,otcMsgHistoryEntity);
+ List<ChatBoxVo> records = chatBoxVos.getRecords();
+ if(CollUtil.isNotEmpty(records)){
+ for(ChatBoxVo chatBoxVo : records){
+ long memberIds = chatBoxVo.getMemberId();
+ if(memberIds == member.getId()){
+ chatBoxVo.setIsSelf(1);
+ }else{
+ chatBoxVo.setIsSelf(2);
+ }
+ }
+ }
return Result.ok(chatBoxVos);
}
diff --git a/src/main/java/com/xcong/excoin/modules/otc/vo/ChatBoxVo.java b/src/main/java/com/xcong/excoin/modules/otc/vo/ChatBoxVo.java
index 01e2acf..e35db34 100644
--- a/src/main/java/com/xcong/excoin/modules/otc/vo/ChatBoxVo.java
+++ b/src/main/java/com/xcong/excoin/modules/otc/vo/ChatBoxVo.java
@@ -18,6 +18,9 @@
@ApiModelProperty(value = "对方用户ID")
private long targetId;
+ @ApiModelProperty(value = "用户ID")
+ private long memberId;
+
//消息
@ApiModelProperty(value = "消息")
private String msg;
@@ -26,4 +29,7 @@
@ApiModelProperty(value = "消息类型 1-文本2-图片")
private Integer msgType;
+ @ApiModelProperty(value = "是否是自己 1:是 2:否")
+ private Integer isSelf;
+
}
diff --git a/src/main/java/com/xcong/excoin/modules/otc/vo/MsgListVo.java b/src/main/java/com/xcong/excoin/modules/otc/vo/MsgListVo.java
index 74ea1ac..b8ad910 100644
--- a/src/main/java/com/xcong/excoin/modules/otc/vo/MsgListVo.java
+++ b/src/main/java/com/xcong/excoin/modules/otc/vo/MsgListVo.java
@@ -15,6 +15,15 @@
@ApiModelProperty(value = "用户ID")
private long id;
+ @ApiModelProperty(value = "昵称")
+ private String nickname;
+
+ @ApiModelProperty(value = "对方用户ID")
+ private long targetId;
+
+ @ApiModelProperty(value = "用户ID")
+ private long memberId;
+
//是否已读 1:未读 2:已读
@ApiModelProperty(value = "是否已读 1:未读 2:已读")
private Integer isRead;
diff --git a/src/main/resources/mapper/otc/OtcMsgHistoryDao.xml b/src/main/resources/mapper/otc/OtcMsgHistoryDao.xml
index b36f8fd..47a519d 100644
--- a/src/main/resources/mapper/otc/OtcMsgHistoryDao.xml
+++ b/src/main/resources/mapper/otc/OtcMsgHistoryDao.xml
@@ -8,6 +8,7 @@
a.create_time createTime,
a.msg msg,
a.target_id targetId,
+ a.member_id memberId,
a.msg_type msgType
from otc_msg_history a
<where>
diff --git a/src/main/resources/mapper/otc/OtcMsgUserListDao.xml b/src/main/resources/mapper/otc/OtcMsgUserListDao.xml
index 88c3f56..a1d336c 100644
--- a/src/main/resources/mapper/otc/OtcMsgUserListDao.xml
+++ b/src/main/resources/mapper/otc/OtcMsgUserListDao.xml
@@ -6,6 +6,8 @@
select
a.id id,
a.is_read isRead,
+ a.target_id targetId,
+ a.member_id memberId,
a.last_msg_time lastMsgTime
from otc_msg_user_list a
<where>
--
Gitblit v1.9.1