feat:客服默认发送一条消息

This commit is contained in:
dzc committed 2026-01-08 09:54:30 +08:00
1 parent d3582ed54a
commit ebbe954e87
4 files changed
+43 -4

No files matched your search

@@ -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);
/**
* 私聊消息分页
*/
@@ -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<ChatPrivateTotalMessageTotalResVO> total = privateTotal(dto);
if (ObjectUtil.isEmpty(total)) {
// 发送消息
return serviceUserSendText(targetUserId, text);
}
return null;
}
/**
* 私聊消息分页
*/
@@ -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;
@@ -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;
}