Browse Source

!1010 MALL-KEFU: 发送消息通知所有管理员更新对话
Merge pull request !1010 from puhui999/develop

芋道源码 8 months ago
parent
commit
7a0a5f0f9a

+ 2 - 2
sql/mysql/mall-promotion-kefu.sql

@@ -3,7 +3,7 @@ CREATE TABLE `promotion_kefu_conversation` (
     `id` bigint NOT NULL AUTO_INCREMENT COMMENT '编号',
     `user_id` bigint NOT NULL COMMENT '会话所属用户',
     `last_message_time` datetime NOT NULL COMMENT '最后聊天时间',
-    `last_message_content` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '最后聊天内容',
+    `last_message_content` varchar(2048) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '最后聊天内容',
     `last_message_content_type` int NOT NULL COMMENT '最后发送的消息类型',
     `admin_pinned` bit(1) NOT NULL DEFAULT b'0' COMMENT '管理端置顶',
     `user_deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '用户是否可见',
@@ -27,7 +27,7 @@ CREATE TABLE `promotion_kefu_message` (
     `receiver_id` bigint DEFAULT NULL COMMENT '接收人编号',
     `receiver_type` int DEFAULT NULL COMMENT '接收人类型',
     `content_type` int NOT NULL COMMENT '消息类型',
-    `content` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '消息',
+    `content` varchar(2048) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '消息',
     `read_status` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否已读',
     `creator` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT '' COMMENT '创建者',
     `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',

+ 4 - 2
yudao-module-mall/yudao-module-promotion-biz/src/main/java/cn/iocoder/yudao/module/promotion/service/kefu/KeFuMessageServiceImpl.java

@@ -66,8 +66,10 @@ public class KeFuMessageServiceImpl implements KeFuMessageService {
         // 2.2 更新会话消息冗余
         conversationService.updateConversationLastMessage(kefuMessage);
 
-        // 3. 发送消息
+        // 3.1 发送消息给会员
         getSelf().sendAsyncMessageToMember(conversation.getUserId(), KEFU_MESSAGE_TYPE, kefuMessage);
+        // 3.2 通知所有管理员更新对话
+        getSelf().sendAsyncMessageToAdmin(KEFU_MESSAGE_TYPE, kefuMessage);
         return kefuMessage.getId();
     }
 
@@ -82,7 +84,7 @@ public class KeFuMessageServiceImpl implements KeFuMessageService {
 
         // 2. 更新会话消息冗余
         conversationService.updateConversationLastMessage(kefuMessage);
-        // 3. 发送消息
+        // 3. 通知所有管理员更新对话
         getSelf().sendAsyncMessageToAdmin(KEFU_MESSAGE_TYPE, kefuMessage);
         return kefuMessage.getId();
     }