From ebbe954e87a664386c6cdec8677b33bc3d724396 Mon Sep 17 00:00:00 2001 From: dzc <2388224167@qq.com> Date: Thu, 8 Jan 2026 09:54:30 +0800 Subject: [PATCH] =?UTF-8?q?feat:=E5=AE=A2=E6=9C=8D=E9=BB=98=E8=AE=A4?= =?UTF-8?q?=E5=8F=91=E9=80=81=E4=B8=80=E6=9D=A1=E6=B6=88=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../module/member/client/service/ChatApi.java | 10 ++++++ .../member/client/service/ChatApiImpl.java | 32 ++++++++++++++++++- .../ThirdCallbackController.java | 3 -- .../service/auth/MemberAuthServiceImpl.java | 2 ++ 4 files changed, 43 insertions(+), 4 deletions(-) diff --git a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/service/ChatApi.java b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/service/ChatApi.java index fb58503..f6c3563 100644 --- a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/service/ChatApi.java +++ b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/service/ChatApi.java @@ -82,6 +82,16 @@ public interface ChatApi { */ ChatPrivateMessageSendResVO messageUserSendText(Long targetUserId, String text); + /** + * 调用`客服`用户给`targetUserId`用户发送图片消息 + */ + ChatPrivateMessageSendResVO serviceUserSendText(Long targetUserId, String text); + + /** + * 调用`客服`用户给`targetUserId`用户发送文本消息(只发送一次) + */ + ChatPrivateMessageSendResVO serviceUserSendUniqueText(Long targetUserId, String text); + /** * 私聊消息分页 */ diff --git a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/service/ChatApiImpl.java b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/service/ChatApiImpl.java index 9537f42..b10feb8 100644 --- a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/service/ChatApiImpl.java +++ b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/service/ChatApiImpl.java @@ -1,7 +1,6 @@ package cn.iocoder.yudao.module.member.client.service; -import cn.hutool.core.util.IdUtil; import cn.hutool.core.util.ObjectUtil; import cn.hutool.http.HttpRequest; import cn.hutool.json.JSONUtil; @@ -372,6 +371,37 @@ public class ChatApiImpl implements ChatApi { return this.send(dto); } + /** + * 调用`客服`用户给`targetUserId`用户发送图片消息 + */ + @Override + public ChatPrivateMessageSendResVO serviceUserSendText(Long targetUserId, String text) { + ChatPrivateMessageSendReqVO dto = new ChatPrivateMessageSendReqVO(); + dto.setSendId(ChatConstant.COM_SERVICE_USER_ID); + dto.setTerminal(1); + dto.setTmpId(System.currentTimeMillis() + "_" + targetUserId); + dto.setRecvId(targetUserId); + dto.setContent(text); + dto.setType(0); + return this.send(dto); + } + + /** + * 调用`客服`用户给`targetUserId`用户发送文本消息(只发送一次) + */ + @Override + public ChatPrivateMessageSendResVO serviceUserSendUniqueText(Long targetUserId, String text) { + ChatPrivateTotalMessageTotalReqVO dto = new ChatPrivateTotalMessageTotalReqVO(); + dto.setSendId(ChatConstant.COM_SERVICE_USER_ID); + dto.setReceiveId(targetUserId); + List total = privateTotal(dto); + if (ObjectUtil.isEmpty(total)) { + // 发送消息 + return serviceUserSendText(targetUserId, text); + } + return null; + } + /** * 私聊消息分页 */ diff --git a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/admin/thirdcallback/ThirdCallbackController.java b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/admin/thirdcallback/ThirdCallbackController.java index 1f11fb2..5291877 100644 --- a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/admin/thirdcallback/ThirdCallbackController.java +++ b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/admin/thirdcallback/ThirdCallbackController.java @@ -4,7 +4,6 @@ import cn.hutool.core.util.ObjectUtil; import cn.hutool.json.JSONUtil; import cn.iocoder.yudao.framework.common.util.date.DateUtils; import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX; -import cn.iocoder.yudao.framework.tenant.core.aop.TenantIgnore; import cn.iocoder.yudao.framework.tenant.core.context.TenantContextHolder; import cn.iocoder.yudao.module.member.client.service.ChatApi; import cn.iocoder.yudao.module.member.client.service.ThirdFaceVerifyService; @@ -12,9 +11,7 @@ import cn.iocoder.yudao.module.member.client.vo.thirdfaceverify.ThirdFindFaceVer import cn.iocoder.yudao.module.member.client.vo.thirdfaceverify.ThirdFindFaceVerifyResVo; import cn.iocoder.yudao.module.member.controller.admin.thirdcallback.vo.FaceVerifyCallbackReqVo; import cn.iocoder.yudao.module.member.dal.dataobject.comauth.ComAuthDO; -import cn.iocoder.yudao.module.member.dal.dataobject.user.MemberUserDO; import cn.iocoder.yudao.module.member.dal.mysql.comauth.ComAuthMapper; -import cn.iocoder.yudao.module.member.dal.mysql.user.MemberUserMapper; import cn.iocoder.yudao.module.member.dal.redis.recent.MemberRecentRedisDAO; import cn.iocoder.yudao.module.member.enums.auth.MemberComAuthStatusEnum; import cn.iocoder.yudao.module.member.framework.web.config.ThirdAlConfig; diff --git a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/auth/MemberAuthServiceImpl.java b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/auth/MemberAuthServiceImpl.java index f28c787..129b325 100644 --- a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/auth/MemberAuthServiceImpl.java +++ b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/auth/MemberAuthServiceImpl.java @@ -266,6 +266,7 @@ public class MemberAuthServiceImpl implements MemberAuthService { // 为用户添加`消息通知`和`客服` chatApi.addMessageFriend(user.getId()); chatApi.addServiceFriend(user.getId()); + chatApi.serviceUserSendUniqueText(user.getId(), "您好,您遇到什么问题了?可直接输入问题,我帮您解答"); return serviceToken; } @@ -295,6 +296,7 @@ public class MemberAuthServiceImpl implements MemberAuthService { // 为用户添加`消息通知`和`客服` chatApi.addMessageFriend(user.getId()); chatApi.addServiceFriend(user.getId()); + chatApi.serviceUserSendUniqueText(user.getId(), "您好,您遇到什么问题了?可直接输入问题,我帮您解答"); return serviceToken; }