From 4ac2bde488291508f3535fdee690c3189aa5a8ba Mon Sep 17 00:00:00 2001 From: xiaoyong931011 <15274802129@163.com> Date: Wed, 26 May 2021 19:46:14 +0800 Subject: [PATCH] 20210526 聊天 --- src/main/java/com/xcong/excoin/modules/otc/dto/ChatBoxDto.java | 3 + src/main/java/com/xcong/excoin/modules/otc/service/impl/OtcMsgServiceImpl.java | 34 +++++++++++++++++ src/main/java/com/xcong/excoin/modules/otc/controller/OtcMsgController.java | 18 ++++++-- src/main/java/com/xcong/excoin/modules/otc/service/OtcMsgService.java | 3 + src/main/java/com/xcong/excoin/modules/otc/dto/ConnectDto.java | 20 ++++++++++ 5 files changed, 73 insertions(+), 5 deletions(-) diff --git a/src/main/java/com/xcong/excoin/modules/otc/controller/OtcMsgController.java b/src/main/java/com/xcong/excoin/modules/otc/controller/OtcMsgController.java index cd3339f..4e81c56 100644 --- a/src/main/java/com/xcong/excoin/modules/otc/controller/OtcMsgController.java +++ b/src/main/java/com/xcong/excoin/modules/otc/controller/OtcMsgController.java @@ -2,14 +2,10 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.xcong.excoin.common.response.Result; -import com.xcong.excoin.modules.otc.dto.ChatBoxDto; -import com.xcong.excoin.modules.otc.dto.MsgListDto; -import com.xcong.excoin.modules.otc.dto.OrderListDto; -import com.xcong.excoin.modules.otc.dto.SendMsgDto; +import com.xcong.excoin.modules.otc.dto.*; import com.xcong.excoin.modules.otc.service.OtcMsgService; import com.xcong.excoin.modules.otc.vo.ChatBoxVo; import com.xcong.excoin.modules.otc.vo.MsgListVo; -import com.xcong.excoin.modules.otc.vo.OrderListVo; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiResponse; @@ -46,6 +42,18 @@ } /** + * 联系卖家或者联系买家 + */ + @ApiOperation(value = "联系卖家或者联系买家") + @ApiResponses({ + @ApiResponse(code = 200, message = "success", response = ChatBoxVo.class) + }) + @PostMapping(value = "/getChatBoxConnect") + public Result getChatBoxConnect(@RequestBody ConnectDto connectDto) { + return otcMsgService.getChatBoxConnect(connectDto); + } + + /** * 进入聊天框,获取聊天记录 */ @ApiOperation(value = "进入聊天框,获取聊天记录") diff --git a/src/main/java/com/xcong/excoin/modules/otc/dto/ChatBoxDto.java b/src/main/java/com/xcong/excoin/modules/otc/dto/ChatBoxDto.java index fc895cb..e9d2fd2 100644 --- a/src/main/java/com/xcong/excoin/modules/otc/dto/ChatBoxDto.java +++ b/src/main/java/com/xcong/excoin/modules/otc/dto/ChatBoxDto.java @@ -16,4 +16,7 @@ @ApiModelProperty(value = "ID", example = "1") private long id; + + @ApiModelProperty(value = "目标ID", example = "1") + private long targetId; } diff --git a/src/main/java/com/xcong/excoin/modules/otc/dto/ConnectDto.java b/src/main/java/com/xcong/excoin/modules/otc/dto/ConnectDto.java new file mode 100644 index 0000000..ba86ede --- /dev/null +++ b/src/main/java/com/xcong/excoin/modules/otc/dto/ConnectDto.java @@ -0,0 +1,20 @@ +package com.xcong.excoin.modules.otc.dto; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +@ApiModel(value = "ConnectDto", description = "参数接收类") +public class ConnectDto { + + @ApiModelProperty(value = "条数", example = "10") + private Integer pageSize; + + @ApiModelProperty(value = "页码", example = "1") + private Integer pageNum; + + @ApiModelProperty(value = "目标ID", example = "1") + private long targetId; + +} diff --git a/src/main/java/com/xcong/excoin/modules/otc/service/OtcMsgService.java b/src/main/java/com/xcong/excoin/modules/otc/service/OtcMsgService.java index 6d45ccf..5c027e9 100644 --- a/src/main/java/com/xcong/excoin/modules/otc/service/OtcMsgService.java +++ b/src/main/java/com/xcong/excoin/modules/otc/service/OtcMsgService.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.extension.service.IService; import com.xcong.excoin.common.response.Result; import com.xcong.excoin.modules.otc.dto.ChatBoxDto; +import com.xcong.excoin.modules.otc.dto.ConnectDto; import com.xcong.excoin.modules.otc.dto.MsgListDto; import com.xcong.excoin.modules.otc.dto.SendMsgDto; import com.xcong.excoin.modules.otc.entity.OtcMsgUserListEntity; @@ -17,4 +18,6 @@ Result getChatBox(ChatBoxDto chatBoxDto); Result sendMsg(SendMsgDto sendMsgDto); + + Result getChatBoxConnect(ConnectDto connectDto); } 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 61e92c7..ed01fec 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 @@ -16,6 +16,7 @@ import com.xcong.excoin.modules.otc.dao.OtcMsgHistoryDao; import com.xcong.excoin.modules.otc.dao.OtcMsgUserListDao; import com.xcong.excoin.modules.otc.dto.ChatBoxDto; +import com.xcong.excoin.modules.otc.dto.ConnectDto; import com.xcong.excoin.modules.otc.dto.MsgListDto; import com.xcong.excoin.modules.otc.dto.SendMsgDto; import com.xcong.excoin.modules.otc.entity.OtcMsgHistoryEntity; @@ -171,5 +172,38 @@ return Result.ok("发送成功"); } + @Override + public Result getChatBoxConnect(ConnectDto connectDto) { + + MemberEntity member = LoginUserUtils.getAppLoginUser(); + Long memberId = member.getId(); +// Long memberId = 443L; + long targetId = connectDto.getTargetId(); + if(ObjectUtil.isEmpty(targetId)){ + return Result.fail("请返回重试"); + } + IPage<ChatBoxVo> chatBoxVos= new Page<>(); + List<OtcMsgUserListEntity> otcMsgUserListEntitys = otcMsgUserListDao.selectListByMemberIdAndTargetId(memberId,targetId); + if(CollUtil.isNotEmpty(otcMsgUserListEntitys)){ + Page<ChatBoxVo> page = new Page<>(connectDto.getPageNum(), connectDto.getPageSize()); + OtcMsgHistoryEntity otcMsgHistoryEntity = new OtcMsgHistoryEntity(); + otcMsgHistoryEntity.setMemberId(memberId); + otcMsgHistoryEntity.setTargetId(targetId); + chatBoxVos = otcMsgHistoryDao.getChatBoxMsgList(page,otcMsgHistoryEntity); + List<ChatBoxVo> records = chatBoxVos.getRecords(); + if(CollUtil.isNotEmpty(records)){ + for(ChatBoxVo chatBoxVo : records){ + long memberIds = chatBoxVo.getMemberId(); + if(memberIds == memberId){ + chatBoxVo.setIsSelf(1); + }else{ + chatBoxVo.setIsSelf(2); + } + } + } + } + return Result.ok(chatBoxVos); + } + } -- Gitblit v1.9.1