From 67235875b34c028d1c6b41386969467fc79ef35d Mon Sep 17 00:00:00 2001 From: xsx <825657193@qq.com> Date: Tue, 11 Mar 2025 21:36:18 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E5=87=A0=E4=B8=AA=E5=B0=8Fbu?= =?UTF-8?q?g?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/GroupServiceImpl.java | 36 ++++++++----------- .../netty/processor/HeartbeatProcessor.java | 2 +- im-uniapp/main.js | 7 ++-- im-uniapp/pages/chat/chat-box.vue | 16 ++++----- 4 files changed, 28 insertions(+), 33 deletions(-) diff --git a/im-platform/src/main/java/com/bx/implatform/service/impl/GroupServiceImpl.java b/im-platform/src/main/java/com/bx/implatform/service/impl/GroupServiceImpl.java index fda628a..1389b89 100644 --- a/im-platform/src/main/java/com/bx/implatform/service/impl/GroupServiceImpl.java +++ b/im-platform/src/main/java/com/bx/implatform/service/impl/GroupServiceImpl.java @@ -70,11 +70,8 @@ public class GroupServiceImpl extends ServiceImpl implements member.setRemarkGroupName(vo.getRemarkGroupName()); groupMemberService.save(member); // 返回 - vo.setId(group.getId()); - vo.setShowNickName(member.getShowNickName()); - vo.setShowGroupName(StrUtil.blankToDefault(member.getRemarkGroupName(), group.getName())); log.info("创建群聊,群聊id:{},群聊名称:{}", group.getId(), group.getName()); - return vo; + return findById(group.getId()); } @CacheEvict(key = "#vo.getId()") @@ -97,10 +94,8 @@ public class GroupServiceImpl extends ServiceImpl implements group = BeanUtils.copyProperties(vo, Group.class); this.updateById(group); } - vo.setShowNickName(member.getShowNickName()); - vo.setShowGroupName(StrUtil.blankToDefault(member.getRemarkGroupName(), group.getName())); log.info("修改群聊,群聊id:{},群聊名称:{}", group.getId(), group.getName()); - return vo; + return convert(group,member); } @Transactional(rollbackFor = Exception.class) @@ -175,13 +170,7 @@ public class GroupServiceImpl extends ServiceImpl implements if (Objects.isNull(member)) { throw new GlobalException("您未加入群聊"); } - GroupVO vo = BeanUtils.copyProperties(group, GroupVO.class); - vo.setRemarkGroupName(member.getRemarkGroupName()); - vo.setRemarkNickName(member.getRemarkNickName()); - vo.setShowNickName(member.getShowNickName()); - vo.setShowGroupName(StrUtil.blankToDefault(member.getRemarkGroupName(), group.getName())); - vo.setQuit(member.getQuit()); - return vo; + return convert(group,member); } @Cacheable(key = "#groupId") @@ -217,13 +206,9 @@ public class GroupServiceImpl extends ServiceImpl implements List groups = this.list(groupWrapper); // 转vo return groups.stream().map(group -> { - GroupVO vo = BeanUtils.copyProperties(group, GroupVO.class); GroupMember member = groupMembers.stream().filter(m -> group.getId().equals(m.getGroupId())).findFirst().get(); - vo.setShowNickName(StrUtil.blankToDefault(member.getRemarkNickName(), session.getNickName())); - vo.setShowGroupName(StrUtil.blankToDefault(member.getRemarkGroupName(), group.getName())); - vo.setQuit(member.getQuit()); - return vo; + return convert(group, member); }).collect(Collectors.toList()); } @@ -244,8 +229,7 @@ public class GroupServiceImpl extends ServiceImpl implements // 找出好友信息 List friends = friendsService.findFriendByUserId(session.getUserId()); List friendsList = vo.getFriendIds().stream() - .map(id -> friends.stream().filter(f -> f.getFriendId().equals(id)).findFirst().get()) - .toList(); + .map(id -> friends.stream().filter(f -> f.getFriendId().equals(id)).findFirst().get()).toList(); if (friendsList.size() != vo.getFriendIds().size()) { throw new GlobalException("部分用户不是您的好友,邀请失败"); } @@ -318,4 +302,14 @@ public class GroupServiceImpl extends ServiceImpl implements sendMessage.setSendToSelf(false); imClient.sendGroupMessage(sendMessage); } + + private GroupVO convert(Group group, GroupMember member) { + GroupVO vo = BeanUtils.copyProperties(group, GroupVO.class); + vo.setRemarkGroupName(member.getRemarkGroupName()); + vo.setRemarkNickName(member.getRemarkNickName()); + vo.setShowNickName(member.getShowNickName()); + vo.setShowGroupName(StrUtil.blankToDefault(member.getRemarkGroupName(), group.getName())); + vo.setQuit(member.getQuit()); + return vo; + } } diff --git a/im-server/src/main/java/com/bx/imserver/netty/processor/HeartbeatProcessor.java b/im-server/src/main/java/com/bx/imserver/netty/processor/HeartbeatProcessor.java index be90c40..01f032d 100644 --- a/im-server/src/main/java/com/bx/imserver/netty/processor/HeartbeatProcessor.java +++ b/im-server/src/main/java/com/bx/imserver/netty/processor/HeartbeatProcessor.java @@ -45,7 +45,7 @@ public class HeartbeatProcessor extends AbstractMessageProcessor userIdAttr = AttributeKey.valueOf(ChannelAttrKey.USER_ID); Long userId = ctx.channel().attr(userIdAttr).get(); - log.info("心跳,userId:{},{}",userId,ctx.channel().id().asLongText()); + log.debug("心跳,userId:{},{}",userId,ctx.channel().id().asLongText()); } @Override diff --git a/im-uniapp/main.js b/im-uniapp/main.js index 608d78e..ea16f44 100644 --- a/im-uniapp/main.js +++ b/im-uniapp/main.js @@ -18,9 +18,10 @@ import barGroup from '@/components/bar/bar-group' import arrowBar from '@/components/bar/arrow-bar' import btnBar from '@/components/bar/btn-bar' import switchBar from '@/components/bar/switch-bar' - -//import VConsole from 'vconsole' -//new VConsole(); +// #ifdef H5 +// import VConsole from 'vconsole' +// new VConsole(); +// #endif // #ifdef H5 import * as recorder from './common/recorder-h5'; diff --git a/im-uniapp/pages/chat/chat-box.vue b/im-uniapp/pages/chat/chat-box.vue index 65f1d6b..d00d07c 100644 --- a/im-uniapp/pages/chat/chat-box.vue +++ b/im-uniapp/pages/chat/chat-box.vue @@ -588,10 +588,12 @@ export default { this.isEmpty = e.detail.html == '


' }, onEditorReady() { - const query = uni.createSelectorQuery().in(this); - query.select('#editor').context((res) => { - this.editorCtx = res.context - }).exec() + this.$nextTick(()=>{ + const query = uni.createSelectorQuery().in(this); + query.select('#editor').context((res) => { + this.editorCtx = res.context + }).exec() + }) }, onEditorFocus(e) { this.isFocus = true; @@ -739,11 +741,9 @@ export default { }, listenKeyBoard() { // #ifdef H5 - const userAgent = navigator.userAgent; - const regex = /(macintosh|windows)/i; - if (regex.test(userAgent)) { + if (navigator.platform == "Win32" || navigator.platform == "MacIntel" ) { // 电脑端不需要弹出键盘 - console.log("userAgent:", userAgent) + console.log("navigator.platform:", navigator.platform) return; } if (uni.getSystemInfoSync().platform == 'ios') {