From 0a3b5039901f1ab0b14349a75fe0d2965308fa03 Mon Sep 17 00:00:00 2001 From: zhongzb <972627721@qq.com> Date: Mon, 2 Oct 2023 14:45:14 +0800 Subject: [PATCH] =?UTF-8?q?fix:=E4=BB=A3=E7=A0=81=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../chat/domain/entity/msg/MessageExtra.java | 2 + .../chat/service/impl/ChatServiceImpl.java | 12 ++--- .../strategy/msg/AbstractMsgHandler.java | 48 +++++++++++++++---- .../strategy/msg/EmojisMsgHandler.java | 14 +----- .../service/strategy/msg/FileMsgHandler.java | 14 +----- .../service/strategy/msg/ImgMsgHandler.java | 14 +----- .../strategy/msg/RecallMsgHandler.java | 10 +--- .../service/strategy/msg/SoundMsgHandler.java | 14 +----- .../strategy/msg/SystemMsgHandler.java | 11 ++--- .../service/strategy/msg/TextMsgHandler.java | 15 ++---- .../service/strategy/msg/VideoMsgHandler.java | 14 +----- 11 files changed, 65 insertions(+), 103 deletions(-) diff --git a/mallchat-chat-server/src/main/java/com/abin/mallchat/common/chat/domain/entity/msg/MessageExtra.java b/mallchat-chat-server/src/main/java/com/abin/mallchat/common/chat/domain/entity/msg/MessageExtra.java index fa085b9..a357f69 100644 --- a/mallchat-chat-server/src/main/java/com/abin/mallchat/common/chat/domain/entity/msg/MessageExtra.java +++ b/mallchat-chat-server/src/main/java/com/abin/mallchat/common/chat/domain/entity/msg/MessageExtra.java @@ -2,6 +2,7 @@ package com.abin.mallchat.common.chat.domain.entity.msg; import com.abin.mallchat.common.common.utils.discover.domain.UrlInfo; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Data; @@ -21,6 +22,7 @@ import java.util.Map; @AllArgsConstructor @NoArgsConstructor @JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) public class MessageExtra implements Serializable { private static final long serialVersionUID = 1L; //url跳转链接 diff --git a/mallchat-chat-server/src/main/java/com/abin/mallchat/common/chat/service/impl/ChatServiceImpl.java b/mallchat-chat-server/src/main/java/com/abin/mallchat/common/chat/service/impl/ChatServiceImpl.java index 150fce8..53ac386 100644 --- a/mallchat-chat-server/src/main/java/com/abin/mallchat/common/chat/service/impl/ChatServiceImpl.java +++ b/mallchat-chat-server/src/main/java/com/abin/mallchat/common/chat/service/impl/ChatServiceImpl.java @@ -104,15 +104,11 @@ public class ChatServiceImpl implements ChatService { @Transactional public Long sendMsg(ChatMessageReq request, Long uid) { check(request, uid); - AbstractMsgHandler msgHandler = MsgHandlerFactory.getStrategyNoNull(request.getMsgType());//todo 这里先不扩展,后续再改 - msgHandler.checkMsg(request, uid); - //同步获取消息的跳转链接标题 - Message insert = MessageAdapter.buildMsgSave(request, uid); - messageDao.save(insert); - msgHandler.saveMsg(insert, request); + AbstractMsgHandler msgHandler = MsgHandlerFactory.getStrategyNoNull(request.getMsgType()); + Long msgId = msgHandler.checkAndSaveMsg(request, uid); //发布消息发送事件 - applicationEventPublisher.publishEvent(new MessageSendEvent(this, insert.getId())); - return insert.getId(); + applicationEventPublisher.publishEvent(new MessageSendEvent(this, msgId)); + return msgId; } private void check(ChatMessageReq request, Long uid) { diff --git a/mallchat-chat-server/src/main/java/com/abin/mallchat/common/chat/service/strategy/msg/AbstractMsgHandler.java b/mallchat-chat-server/src/main/java/com/abin/mallchat/common/chat/service/strategy/msg/AbstractMsgHandler.java index 6fca490..ec66980 100644 --- a/mallchat-chat-server/src/main/java/com/abin/mallchat/common/chat/service/strategy/msg/AbstractMsgHandler.java +++ b/mallchat-chat-server/src/main/java/com/abin/mallchat/common/chat/service/strategy/msg/AbstractMsgHandler.java @@ -1,20 +1,32 @@ package com.abin.mallchat.common.chat.service.strategy.msg; +import cn.hutool.core.bean.BeanUtil; +import com.abin.mallchat.common.chat.dao.MessageDao; import com.abin.mallchat.common.chat.domain.entity.Message; import com.abin.mallchat.common.chat.domain.enums.MessageTypeEnum; import com.abin.mallchat.common.chat.domain.vo.request.ChatMessageReq; +import com.abin.mallchat.common.chat.service.adapter.MessageAdapter; +import com.abin.mallchat.common.common.utils.AssertUtil; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.transaction.annotation.Transactional; import javax.annotation.PostConstruct; +import java.lang.reflect.ParameterizedType; /** * Description: 消息处理器抽象类 * Author: abin * Date: 2023-06-04 */ -public abstract class AbstractMsgHandler { +public abstract class AbstractMsgHandler { + @Autowired + private MessageDao messageDao; + private Class bodyClass; @PostConstruct private void init() { + ParameterizedType genericSuperclass = (ParameterizedType) this.getClass().getGenericSuperclass(); + this.bodyClass = (Class) genericSuperclass.getActualTypeArguments()[0]; MsgHandlerFactory.register(getMsgTypeEnum().getType(), this); } @@ -23,15 +35,33 @@ public abstract class AbstractMsgHandler { */ abstract MessageTypeEnum getMsgTypeEnum(); - /** - * 校验消息——保存前校验 - */ - public abstract void checkMsg(ChatMessageReq req, Long uid); + protected void checkMsg(Req body, Long roomId, Long uid) { - /** - * 保存消息 - */ - public abstract void saveMsg(Message msg, ChatMessageReq req); + } + + @Transactional + public Long checkAndSaveMsg(ChatMessageReq request, Long uid) { + Req body = this.toBean(request.getBody()); + //统一校验 + AssertUtil.allCheckValidateThrow(body); + //子类扩展校验 + checkMsg(body, request.getRoomId(), uid); + Message insert = MessageAdapter.buildMsgSave(request, uid); + //统一保存 + messageDao.save(insert); + //子类扩展保存 + saveMsg(insert, body); + return insert.getId(); + } + + private Req toBean(Object body) { + if (bodyClass.isAssignableFrom(body.getClass())) { + return (Req) body; + } + return BeanUtil.toBean(body, bodyClass); + } + + protected abstract void saveMsg(Message message, Req body); /** * 展示消息 diff --git a/mallchat-chat-server/src/main/java/com/abin/mallchat/common/chat/service/strategy/msg/EmojisMsgHandler.java b/mallchat-chat-server/src/main/java/com/abin/mallchat/common/chat/service/strategy/msg/EmojisMsgHandler.java index 7c1854e..ecd527b 100644 --- a/mallchat-chat-server/src/main/java/com/abin/mallchat/common/chat/service/strategy/msg/EmojisMsgHandler.java +++ b/mallchat-chat-server/src/main/java/com/abin/mallchat/common/chat/service/strategy/msg/EmojisMsgHandler.java @@ -1,13 +1,10 @@ package com.abin.mallchat.common.chat.service.strategy.msg; -import cn.hutool.core.bean.BeanUtil; import com.abin.mallchat.common.chat.dao.MessageDao; import com.abin.mallchat.common.chat.domain.entity.Message; import com.abin.mallchat.common.chat.domain.entity.msg.EmojisMsgDTO; import com.abin.mallchat.common.chat.domain.entity.msg.MessageExtra; import com.abin.mallchat.common.chat.domain.enums.MessageTypeEnum; -import com.abin.mallchat.common.chat.domain.vo.request.ChatMessageReq; -import com.abin.mallchat.common.common.utils.AssertUtil; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; @@ -19,7 +16,7 @@ import java.util.Optional; * Date: 2023-06-04 */ @Component -public class EmojisMsgHandler extends AbstractMsgHandler { +public class EmojisMsgHandler extends AbstractMsgHandler { @Autowired private MessageDao messageDao; @@ -29,14 +26,7 @@ public class EmojisMsgHandler extends AbstractMsgHandler { } @Override - public void checkMsg(ChatMessageReq request, Long uid) { - EmojisMsgDTO body = BeanUtil.toBean(request.getBody(), EmojisMsgDTO.class); - AssertUtil.allCheckValidateThrow(body); - } - - @Override - public void saveMsg(Message msg, ChatMessageReq request) { - EmojisMsgDTO body = BeanUtil.toBean(request.getBody(), EmojisMsgDTO.class); + public void saveMsg(Message msg, EmojisMsgDTO body) { MessageExtra extra = Optional.ofNullable(msg.getExtra()).orElse(new MessageExtra()); Message update = new Message(); update.setId(msg.getId()); diff --git a/mallchat-chat-server/src/main/java/com/abin/mallchat/common/chat/service/strategy/msg/FileMsgHandler.java b/mallchat-chat-server/src/main/java/com/abin/mallchat/common/chat/service/strategy/msg/FileMsgHandler.java index 485894c..6138c32 100644 --- a/mallchat-chat-server/src/main/java/com/abin/mallchat/common/chat/service/strategy/msg/FileMsgHandler.java +++ b/mallchat-chat-server/src/main/java/com/abin/mallchat/common/chat/service/strategy/msg/FileMsgHandler.java @@ -1,13 +1,10 @@ package com.abin.mallchat.common.chat.service.strategy.msg; -import cn.hutool.core.bean.BeanUtil; import com.abin.mallchat.common.chat.dao.MessageDao; import com.abin.mallchat.common.chat.domain.entity.Message; import com.abin.mallchat.common.chat.domain.entity.msg.FileMsgDTO; import com.abin.mallchat.common.chat.domain.entity.msg.MessageExtra; import com.abin.mallchat.common.chat.domain.enums.MessageTypeEnum; -import com.abin.mallchat.common.chat.domain.vo.request.ChatMessageReq; -import com.abin.mallchat.common.common.utils.AssertUtil; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; @@ -19,7 +16,7 @@ import java.util.Optional; * Date: 2023-06-04 */ @Component -public class FileMsgHandler extends AbstractMsgHandler { +public class FileMsgHandler extends AbstractMsgHandler { @Autowired private MessageDao messageDao; @@ -29,14 +26,7 @@ public class FileMsgHandler extends AbstractMsgHandler { } @Override - public void checkMsg(ChatMessageReq request, Long uid) { - FileMsgDTO body = BeanUtil.toBean(request.getBody(), FileMsgDTO.class); - AssertUtil.allCheckValidateThrow(body); - } - - @Override - public void saveMsg(Message msg, ChatMessageReq request) { - FileMsgDTO body = BeanUtil.toBean(request.getBody(), FileMsgDTO.class); + public void saveMsg(Message msg, FileMsgDTO body) { MessageExtra extra = Optional.ofNullable(msg.getExtra()).orElse(new MessageExtra()); Message update = new Message(); update.setId(msg.getId()); diff --git a/mallchat-chat-server/src/main/java/com/abin/mallchat/common/chat/service/strategy/msg/ImgMsgHandler.java b/mallchat-chat-server/src/main/java/com/abin/mallchat/common/chat/service/strategy/msg/ImgMsgHandler.java index 12434e0..3732363 100644 --- a/mallchat-chat-server/src/main/java/com/abin/mallchat/common/chat/service/strategy/msg/ImgMsgHandler.java +++ b/mallchat-chat-server/src/main/java/com/abin/mallchat/common/chat/service/strategy/msg/ImgMsgHandler.java @@ -1,13 +1,10 @@ package com.abin.mallchat.common.chat.service.strategy.msg; -import cn.hutool.core.bean.BeanUtil; import com.abin.mallchat.common.chat.dao.MessageDao; import com.abin.mallchat.common.chat.domain.entity.Message; import com.abin.mallchat.common.chat.domain.entity.msg.ImgMsgDTO; import com.abin.mallchat.common.chat.domain.entity.msg.MessageExtra; import com.abin.mallchat.common.chat.domain.enums.MessageTypeEnum; -import com.abin.mallchat.common.chat.domain.vo.request.ChatMessageReq; -import com.abin.mallchat.common.common.utils.AssertUtil; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; @@ -19,7 +16,7 @@ import java.util.Optional; * Date: 2023-06-04 */ @Component -public class ImgMsgHandler extends AbstractMsgHandler { +public class ImgMsgHandler extends AbstractMsgHandler { @Autowired private MessageDao messageDao; @@ -29,14 +26,7 @@ public class ImgMsgHandler extends AbstractMsgHandler { } @Override - public void checkMsg(ChatMessageReq request, Long uid) { - ImgMsgDTO body = BeanUtil.toBean(request.getBody(), ImgMsgDTO.class); - AssertUtil.allCheckValidateThrow(body); - } - - @Override - public void saveMsg(Message msg, ChatMessageReq request) { - ImgMsgDTO body = BeanUtil.toBean(request.getBody(), ImgMsgDTO.class); + public void saveMsg(Message msg, ImgMsgDTO body) { MessageExtra extra = Optional.ofNullable(msg.getExtra()).orElse(new MessageExtra()); Message update = new Message(); update.setId(msg.getId()); diff --git a/mallchat-chat-server/src/main/java/com/abin/mallchat/common/chat/service/strategy/msg/RecallMsgHandler.java b/mallchat-chat-server/src/main/java/com/abin/mallchat/common/chat/service/strategy/msg/RecallMsgHandler.java index 7984b5d..b9eaf0b 100644 --- a/mallchat-chat-server/src/main/java/com/abin/mallchat/common/chat/service/strategy/msg/RecallMsgHandler.java +++ b/mallchat-chat-server/src/main/java/com/abin/mallchat/common/chat/service/strategy/msg/RecallMsgHandler.java @@ -6,7 +6,6 @@ import com.abin.mallchat.common.chat.domain.entity.Message; import com.abin.mallchat.common.chat.domain.entity.msg.MessageExtra; import com.abin.mallchat.common.chat.domain.entity.msg.MsgRecall; import com.abin.mallchat.common.chat.domain.enums.MessageTypeEnum; -import com.abin.mallchat.common.chat.domain.vo.request.ChatMessageReq; import com.abin.mallchat.common.chat.service.cache.MsgCache; import com.abin.mallchat.common.common.event.MessageRecallEvent; import com.abin.mallchat.common.user.domain.entity.User; @@ -24,7 +23,7 @@ import java.util.Objects; * Date: 2023-06-04 */ @Component -public class RecallMsgHandler extends AbstractMsgHandler { +public class RecallMsgHandler extends AbstractMsgHandler { @Autowired private MessageDao messageDao; @Autowired @@ -40,12 +39,7 @@ public class RecallMsgHandler extends AbstractMsgHandler { } @Override - public void checkMsg(ChatMessageReq request, Long uid) { - throw new UnsupportedOperationException(); - } - - @Override - public void saveMsg(Message msg, ChatMessageReq request) { + public void saveMsg(Message msg, Object body) { throw new UnsupportedOperationException(); } diff --git a/mallchat-chat-server/src/main/java/com/abin/mallchat/common/chat/service/strategy/msg/SoundMsgHandler.java b/mallchat-chat-server/src/main/java/com/abin/mallchat/common/chat/service/strategy/msg/SoundMsgHandler.java index 1f4e009..5909f64 100644 --- a/mallchat-chat-server/src/main/java/com/abin/mallchat/common/chat/service/strategy/msg/SoundMsgHandler.java +++ b/mallchat-chat-server/src/main/java/com/abin/mallchat/common/chat/service/strategy/msg/SoundMsgHandler.java @@ -1,13 +1,10 @@ package com.abin.mallchat.common.chat.service.strategy.msg; -import cn.hutool.core.bean.BeanUtil; import com.abin.mallchat.common.chat.dao.MessageDao; import com.abin.mallchat.common.chat.domain.entity.Message; import com.abin.mallchat.common.chat.domain.entity.msg.MessageExtra; import com.abin.mallchat.common.chat.domain.entity.msg.SoundMsgDTO; import com.abin.mallchat.common.chat.domain.enums.MessageTypeEnum; -import com.abin.mallchat.common.chat.domain.vo.request.ChatMessageReq; -import com.abin.mallchat.common.common.utils.AssertUtil; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; @@ -19,7 +16,7 @@ import java.util.Optional; * Date: 2023-06-04 */ @Component -public class SoundMsgHandler extends AbstractMsgHandler { +public class SoundMsgHandler extends AbstractMsgHandler { @Autowired private MessageDao messageDao; @@ -29,14 +26,7 @@ public class SoundMsgHandler extends AbstractMsgHandler { } @Override - public void checkMsg(ChatMessageReq request, Long uid) { - SoundMsgDTO body = BeanUtil.toBean(request.getBody(), SoundMsgDTO.class); - AssertUtil.allCheckValidateThrow(body); - } - - @Override - public void saveMsg(Message msg, ChatMessageReq request) { - SoundMsgDTO body = BeanUtil.toBean(request.getBody(), SoundMsgDTO.class); + public void saveMsg(Message msg, SoundMsgDTO body) { MessageExtra extra = Optional.ofNullable(msg.getExtra()).orElse(new MessageExtra()); Message update = new Message(); update.setId(msg.getId()); diff --git a/mallchat-chat-server/src/main/java/com/abin/mallchat/common/chat/service/strategy/msg/SystemMsgHandler.java b/mallchat-chat-server/src/main/java/com/abin/mallchat/common/chat/service/strategy/msg/SystemMsgHandler.java index 98c757c..afb5650 100644 --- a/mallchat-chat-server/src/main/java/com/abin/mallchat/common/chat/service/strategy/msg/SystemMsgHandler.java +++ b/mallchat-chat-server/src/main/java/com/abin/mallchat/common/chat/service/strategy/msg/SystemMsgHandler.java @@ -3,7 +3,6 @@ package com.abin.mallchat.common.chat.service.strategy.msg; import com.abin.mallchat.common.chat.dao.MessageDao; import com.abin.mallchat.common.chat.domain.entity.Message; import com.abin.mallchat.common.chat.domain.enums.MessageTypeEnum; -import com.abin.mallchat.common.chat.domain.vo.request.ChatMessageReq; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; @@ -13,7 +12,7 @@ import org.springframework.stereotype.Component; * Date: 2023-06-04 */ @Component -public class SystemMsgHandler extends AbstractMsgHandler { +public class SystemMsgHandler extends AbstractMsgHandler { @Autowired private MessageDao messageDao; @@ -24,14 +23,10 @@ public class SystemMsgHandler extends AbstractMsgHandler { } @Override - public void checkMsg(ChatMessageReq request, Long uid) { - } - - @Override - public void saveMsg(Message msg, ChatMessageReq request) { + public void saveMsg(Message msg, String body) { Message update = new Message(); update.setId(msg.getId()); - update.setContent((String) request.getBody()); + update.setContent(body); messageDao.updateById(update); } diff --git a/mallchat-chat-server/src/main/java/com/abin/mallchat/common/chat/service/strategy/msg/TextMsgHandler.java b/mallchat-chat-server/src/main/java/com/abin/mallchat/common/chat/service/strategy/msg/TextMsgHandler.java index ca7e8c9..e7dbbaf 100644 --- a/mallchat-chat-server/src/main/java/com/abin/mallchat/common/chat/service/strategy/msg/TextMsgHandler.java +++ b/mallchat-chat-server/src/main/java/com/abin/mallchat/common/chat/service/strategy/msg/TextMsgHandler.java @@ -1,13 +1,11 @@ package com.abin.mallchat.common.chat.service.strategy.msg; -import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.CollectionUtil; import com.abin.mallchat.common.chat.dao.MessageDao; import com.abin.mallchat.common.chat.domain.entity.Message; import com.abin.mallchat.common.chat.domain.entity.msg.MessageExtra; import com.abin.mallchat.common.chat.domain.enums.MessageStatusEnum; import com.abin.mallchat.common.chat.domain.enums.MessageTypeEnum; -import com.abin.mallchat.common.chat.domain.vo.request.ChatMessageReq; import com.abin.mallchat.common.chat.domain.vo.request.msg.TextMsgReq; import com.abin.mallchat.common.chat.domain.vo.response.msg.TextMsgResp; import com.abin.mallchat.common.chat.service.adapter.MessageAdapter; @@ -37,7 +35,7 @@ import java.util.stream.Collectors; * Date: 2023-06-04 */ @Component -public class TextMsgHandler extends AbstractMsgHandler { +public class TextMsgHandler extends AbstractMsgHandler { @Autowired private MessageDao messageDao; @Autowired @@ -59,14 +57,12 @@ public class TextMsgHandler extends AbstractMsgHandler { } @Override - public void checkMsg(ChatMessageReq request, Long uid) { - TextMsgReq body = BeanUtil.toBean(request.getBody(), TextMsgReq.class); - AssertUtil.allCheckValidateThrow(body); + protected void checkMsg(TextMsgReq body, Long roomId, Long uid) { //校验下回复消息 if (Objects.nonNull(body.getReplyMsgId())) { Message replyMsg = messageDao.getById(body.getReplyMsgId()); AssertUtil.isNotEmpty(replyMsg, "回复消息不存在"); - AssertUtil.equal(replyMsg.getRoomId(), request.getRoomId(), "只能回复相同会话内的消息"); + AssertUtil.equal(replyMsg.getRoomId(), roomId, "只能回复相同会话内的消息"); } if (CollectionUtil.isNotEmpty(body.getAtUidList())) { //前端传入的@用户列表可能会重复,需要去重 @@ -83,8 +79,7 @@ public class TextMsgHandler extends AbstractMsgHandler { } @Override - public void saveMsg(Message msg, ChatMessageReq request) {//插入文本内容 - TextMsgReq body = BeanUtil.toBean(request.getBody(), TextMsgReq.class); + public void saveMsg(Message msg, TextMsgReq body) {//插入文本内容 MessageExtra extra = Optional.ofNullable(msg.getExtra()).orElse(new MessageExtra()); Message update = new Message(); update.setId(msg.getId()); @@ -92,7 +87,7 @@ public class TextMsgHandler extends AbstractMsgHandler { update.setExtra(extra); //如果有回复消息 if (Objects.nonNull(body.getReplyMsgId())) { - Integer gapCount = messageDao.getGapCount(request.getRoomId(), body.getReplyMsgId(), msg.getId()); + Integer gapCount = messageDao.getGapCount(msg.getRoomId(), body.getReplyMsgId(), msg.getId()); update.setGapCount(gapCount); update.setReplyMsgId(body.getReplyMsgId()); diff --git a/mallchat-chat-server/src/main/java/com/abin/mallchat/common/chat/service/strategy/msg/VideoMsgHandler.java b/mallchat-chat-server/src/main/java/com/abin/mallchat/common/chat/service/strategy/msg/VideoMsgHandler.java index 39cc61d..00c727d 100644 --- a/mallchat-chat-server/src/main/java/com/abin/mallchat/common/chat/service/strategy/msg/VideoMsgHandler.java +++ b/mallchat-chat-server/src/main/java/com/abin/mallchat/common/chat/service/strategy/msg/VideoMsgHandler.java @@ -1,13 +1,10 @@ package com.abin.mallchat.common.chat.service.strategy.msg; -import cn.hutool.core.bean.BeanUtil; import com.abin.mallchat.common.chat.dao.MessageDao; import com.abin.mallchat.common.chat.domain.entity.Message; import com.abin.mallchat.common.chat.domain.entity.msg.MessageExtra; import com.abin.mallchat.common.chat.domain.entity.msg.VideoMsgDTO; import com.abin.mallchat.common.chat.domain.enums.MessageTypeEnum; -import com.abin.mallchat.common.chat.domain.vo.request.ChatMessageReq; -import com.abin.mallchat.common.common.utils.AssertUtil; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; @@ -19,7 +16,7 @@ import java.util.Optional; * Date: 2023-06-04 */ @Component -public class VideoMsgHandler extends AbstractMsgHandler { +public class VideoMsgHandler extends AbstractMsgHandler { @Autowired private MessageDao messageDao; @@ -29,14 +26,7 @@ public class VideoMsgHandler extends AbstractMsgHandler { } @Override - public void checkMsg(ChatMessageReq request, Long uid) { - VideoMsgDTO body = BeanUtil.toBean(request.getBody(), VideoMsgDTO.class); - AssertUtil.allCheckValidateThrow(body); - } - - @Override - public void saveMsg(Message msg, ChatMessageReq request) { - VideoMsgDTO body = BeanUtil.toBean(request.getBody(), VideoMsgDTO.class); + public void saveMsg(Message msg, VideoMsgDTO body) { MessageExtra extra = Optional.ofNullable(msg.getExtra()).orElse(new MessageExtra()); Message update = new Message(); update.setId(msg.getId());