一对一聊天重构,期待群聊开发
This commit is contained in:
@@ -2,6 +2,7 @@ package com.ruoyi.system.service.impl;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import com.ruoyi.common.core.domain.entity.SysUser;
|
||||
import com.ruoyi.common.helper.LoginHelper;
|
||||
import com.ruoyi.common.utils.StringUtils;
|
||||
import com.ruoyi.common.core.page.TableDataInfo;
|
||||
import com.ruoyi.common.core.domain.PageQuery;
|
||||
@@ -15,6 +16,7 @@ import com.ruoyi.system.mapper.SysUserMapper;
|
||||
import com.ruoyi.system.service.ISysUserService;
|
||||
import liquibase.pro.packaged.S;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
import com.ruoyi.system.domain.bo.SocketContactBo;
|
||||
@@ -26,6 +28,7 @@ import com.ruoyi.system.service.ISocketContactService;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Collection;
|
||||
import java.util.Objects;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
@@ -34,6 +37,7 @@ import java.util.stream.Collectors;
|
||||
* @author hdka
|
||||
* @date 2024-10-21
|
||||
*/
|
||||
@Slf4j
|
||||
@RequiredArgsConstructor
|
||||
@Service
|
||||
public class SocketContactServiceImpl implements ISocketContactService {
|
||||
@@ -53,12 +57,10 @@ public class SocketContactServiceImpl implements ISocketContactService {
|
||||
LambdaQueryWrapper<SocketMessage> socketMessageLambdaQueryWrapper = new LambdaQueryWrapper<>();
|
||||
socketMessageLambdaQueryWrapper.eq(SocketMessage::getRoomId, socketContactVo.getRoomId())
|
||||
.and(item ->
|
||||
item.eq(SocketMessage::getUserId, socketContactVo.getContactUserId())
|
||||
.or()
|
||||
.eq(SocketMessage::getUserId, socketContactVo.getUserId())
|
||||
item.eq(SocketMessage::getContactId,id)
|
||||
);
|
||||
|
||||
socketContactVo.setUser(sysUserMapper.selectUserById(socketContactVo.getContactUserId()));
|
||||
Long userId = LoginHelper.getUserId();
|
||||
socketContactVo.setUser(sysUserMapper.selectUserById(Objects.equals(socketContactVo.getContactUserId(), userId) ?socketContactVo.getUserId():socketContactVo.getContactUserId()));
|
||||
List<SocketMessageVo> socketMessageVos = socketMessageMapper.selectVoList(socketMessageLambdaQueryWrapper);
|
||||
socketMessageVos.stream()
|
||||
.peek(item->{
|
||||
@@ -77,7 +79,7 @@ public class SocketContactServiceImpl implements ISocketContactService {
|
||||
LambdaQueryWrapper<SocketContact> socketContactLambdaQueryWrapper = buildQueryWrapper(bo);
|
||||
Page<SocketContactVo> result = baseMapper.selectVoPage(pageQuery.build(), socketContactLambdaQueryWrapper);
|
||||
for (SocketContactVo record : result.getRecords()) {
|
||||
SysUser sysUser = sysUserMapper.selectUserById(record.getContactUserId());
|
||||
SysUser sysUser = sysUserMapper.selectUserById(Objects.equals(record.getContactUserId(), bo.getUserId()) ? record.getUserId() : record.getContactUserId());
|
||||
record.setUser(sysUser);
|
||||
}
|
||||
return TableDataInfo.build(result);
|
||||
@@ -95,8 +97,9 @@ public class SocketContactServiceImpl implements ISocketContactService {
|
||||
private LambdaQueryWrapper<SocketContact> buildQueryWrapper(SocketContactBo bo) {
|
||||
Map<String, Object> params = bo.getParams();
|
||||
LambdaQueryWrapper<SocketContact> lqw = Wrappers.lambdaQuery();
|
||||
lqw.eq(bo.getContactUserId() != null, SocketContact::getContactUserId, bo.getContactUserId());
|
||||
lqw.eq(bo.getUserId() != null, SocketContact::getUserId, bo.getUserId());
|
||||
lqw.eq(bo.getUserId() != null, SocketContact::getContactUserId, bo.getUserId())
|
||||
.or()
|
||||
.eq(bo.getUserId() != null, SocketContact::getUserId, bo.getUserId());
|
||||
return lqw;
|
||||
}
|
||||
|
||||
@@ -116,15 +119,15 @@ public class SocketContactServiceImpl implements ISocketContactService {
|
||||
bo.setId(add.getId());
|
||||
}
|
||||
|
||||
|
||||
// 反向存
|
||||
add.setContactUserId(bo.getUserId());
|
||||
add.setUserId(bo.getContactUserId());
|
||||
validEntityBeforeSave(add);
|
||||
flag = baseMapper.insert(add) > 0;
|
||||
if (flag) {
|
||||
bo.setId(add.getId());
|
||||
}
|
||||
//
|
||||
// // 反向存
|
||||
// add.setContactUserId(bo.getUserId());
|
||||
// add.setUserId(bo.getContactUserId());
|
||||
// validEntityBeforeSave(add);
|
||||
// flag = baseMapper.insert(add) > 0;
|
||||
// if (flag) {
|
||||
// bo.setId(add.getId());
|
||||
// }
|
||||
return flag;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user