From 1869dbb3a413e24a7865ba5fa0d54f27e78d095e Mon Sep 17 00:00:00 2001 From: wangqx Date: Mon, 25 Aug 2025 17:02:31 +0800 Subject: [PATCH] =?UTF-8?q?[fix]=E4=BF=AE=E6=94=B9mq=E4=B8=BArockectmq?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 2 +- ruoyi-common/pom.xml | 2 +- .../common/mq}/config/RocketMQConfig.java | 8 +- .../mq}/config/RocketMQConfiguration.java | 2 +- .../dromara/common/mq/domain/MQMessage.java | 43 +++++ .../common/mq/enums/MessageActionEnum.java | 48 ++++++ .../common/mq}/service/IRocketMQService.java | 6 +- .../mq}/service/impl/RocketMQServiceImpl.java | 18 +- .../org/dromara/common/mq/utils/MqUtil.java | 85 ++++++++++ ruoyi-common/ruoyi-common-rabbitmq/pom.xml | 39 ----- .../config/properties/RabbitMQConfig.java | 55 ------ .../common/rabbitmq/domain/BaseMessage.java | 24 --- .../dromara/common/rabbitmq/utils/MqUtil.java | 157 ------------------ .../config/properties/RedissonProperties.java | 2 +- .../common/redis/config/RedisConfig.java | 2 +- .../common/tenant/config/TenantConfig.java | 2 +- .../soopin/content/domain/bo/CommentBO.java | 21 ++- .../service/impl/CommentServiceImpl.java | 11 +- ruoyi-modules/ruoyi-im/pom.xml | 2 +- .../soopin/im/consumer/IMMessageConsumer.java | 7 +- .../im}/consumer/MessageRocketMQConsumer.java | 17 +- .../im/controller/IMMessageController.java} | 12 +- .../IMMessageTemplateController.java} | 47 +++--- .../controller/IMMessageUserController.java} | 16 +- .../im}/converter/SysMessageConvert.java | 10 +- .../converter/SysMessageTemplateConvert.java | 17 ++ .../im}/domain/MessageTemplateType.java | 4 +- .../wzj/soopin/im}/domain/SysMessage.java | 2 +- .../soopin/im}/domain/SysMessageTemplate.java | 2 +- .../wzj/soopin/im}/domain/SysMessageUser.java | 2 +- .../soopin/im}/domain/bo/SysMessageBo.java | 10 +- .../im}/domain/bo/SysMessageTemplateBo.java | 7 +- .../soopin/im}/domain/event/MessageEvent.java | 14 +- .../im}/domain/vo/SysMessageTemplateVo.java | 8 +- .../im}/domain/vo/SysMessageUserVo.java | 2 +- .../soopin/im}/domain/vo/SysMessageVo.java | 7 +- .../soopin}/im/enums/MessageActionEnum.java | 2 +- .../soopin}/im/enums/MessageScopeEnum.java | 2 +- .../im}/event/MessageEventListener.java | 13 +- .../soopin/im}/mapper/SysMessageMapper.java | 8 +- .../im}/mapper/SysMessageTemplateMapper.java | 8 +- .../im}/mapper/SysMessageUserMapper.java | 8 +- .../im}/service/IMessageWebSocketService.java | 6 +- .../im}/service/ISysMessageService.java | 12 +- .../service/ISysMessageTemplateService.java | 8 +- .../im/service/ISystemMessageUserService.java | 4 + .../soopin/im}/service/ITencentIMService.java | 4 +- .../impl/MessageWebSocketServiceImpl.java | 6 +- .../service/impl/SysMessageServiceImpl.java | 30 ++-- .../impl/SysMessageTemplateServiceImpl.java | 12 +- .../impl/SystemMessageUserService.java | 16 ++ .../service/impl/TencentIMServiceImpl.java | 6 +- .../wzj/soopin/im}/util/TLSSigAPIv2.java | 2 +- .../converter/SysMessageTemplateConvert.java | 20 --- .../service/ISystemMessageUserService.java | 6 - .../impl/SystemMessageUserService.java | 23 --- .../mapper.system/SysMessageMapper.xml | 4 +- .../mapper.system/SysMessageUserMapper.xml | 4 +- ruoyi-modules/ruoyi-member/pom.xml | 4 + .../member/service/impl/FansServiceImpl.java | 30 ++-- ruoyi-modules/ruoyi-system/pom.xml | 18 -- .../main/resources/META-INF/spring.factories | 2 +- ...ot.autoconfigure.AutoConfiguration.imports | 2 +- 63 files changed, 417 insertions(+), 556 deletions(-) rename {ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system => ruoyi-common/ruoyi-common-mq/src/main/java/org/dromara/common/mq}/config/RocketMQConfig.java (91%) rename {ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system => ruoyi-common/ruoyi-common-mq/src/main/java/org/dromara/common/mq}/config/RocketMQConfiguration.java (98%) create mode 100644 ruoyi-common/ruoyi-common-mq/src/main/java/org/dromara/common/mq/domain/MQMessage.java create mode 100644 ruoyi-common/ruoyi-common-mq/src/main/java/org/dromara/common/mq/enums/MessageActionEnum.java rename {ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system => ruoyi-common/ruoyi-common-mq/src/main/java/org/dromara/common/mq}/service/IRocketMQService.java (95%) rename {ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system => ruoyi-common/ruoyi-common-mq/src/main/java/org/dromara/common/mq}/service/impl/RocketMQServiceImpl.java (91%) create mode 100644 ruoyi-common/ruoyi-common-mq/src/main/java/org/dromara/common/mq/utils/MqUtil.java delete mode 100644 ruoyi-common/ruoyi-common-rabbitmq/pom.xml delete mode 100644 ruoyi-common/ruoyi-common-rabbitmq/src/main/java/org/dromara/common/rabbitmq/config/properties/RabbitMQConfig.java delete mode 100644 ruoyi-common/ruoyi-common-rabbitmq/src/main/java/org/dromara/common/rabbitmq/domain/BaseMessage.java delete mode 100644 ruoyi-common/ruoyi-common-rabbitmq/src/main/java/org/dromara/common/rabbitmq/utils/MqUtil.java rename ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/{rabbitmq => mq}/config/properties/RedissonProperties.java (97%) rename ruoyi-modules/ruoyi-im/src/main/java/{org/dromara => com/wzj}/soopin/im/consumer/IMMessageConsumer.java (76%) rename ruoyi-modules/ruoyi-im/src/main/java/{org/dromara/system => com/wzj/soopin/im}/consumer/MessageRocketMQConsumer.java (86%) rename ruoyi-modules/ruoyi-im/src/main/java/{org/dromara/system/controller/SysMessageController.java => com/wzj/soopin/im/controller/IMMessageController.java} (89%) rename ruoyi-modules/ruoyi-im/src/main/java/{org/dromara/system/controller/SysMessageTemplateController.java => com/wzj/soopin/im/controller/IMMessageTemplateController.java} (66%) rename ruoyi-modules/ruoyi-im/src/main/java/{org/dromara/system/controller/SysMessageUserController.java => com/wzj/soopin/im/controller/IMMessageUserController.java} (85%) rename ruoyi-modules/ruoyi-im/src/main/java/{org/dromara/system => com/wzj/soopin/im}/converter/SysMessageConvert.java (52%) create mode 100644 ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/converter/SysMessageTemplateConvert.java rename ruoyi-modules/ruoyi-im/src/main/java/{org/dromara/system => com/wzj/soopin/im}/domain/MessageTemplateType.java (95%) rename ruoyi-modules/ruoyi-im/src/main/java/{org/dromara/system => com/wzj/soopin/im}/domain/SysMessage.java (98%) rename ruoyi-modules/ruoyi-im/src/main/java/{org/dromara/system => com/wzj/soopin/im}/domain/SysMessageTemplate.java (97%) rename ruoyi-modules/ruoyi-im/src/main/java/{org/dromara/system => com/wzj/soopin/im}/domain/SysMessageUser.java (96%) rename ruoyi-modules/ruoyi-im/src/main/java/{org/dromara/system => com/wzj/soopin/im}/domain/bo/SysMessageBo.java (91%) rename ruoyi-modules/ruoyi-im/src/main/java/{org/dromara/system => com/wzj/soopin/im}/domain/bo/SysMessageTemplateBo.java (91%) rename ruoyi-modules/ruoyi-im/src/main/java/{org/dromara/system => com/wzj/soopin/im}/domain/event/MessageEvent.java (93%) rename ruoyi-modules/ruoyi-im/src/main/java/{org/dromara/system => com/wzj/soopin/im}/domain/vo/SysMessageTemplateVo.java (78%) rename ruoyi-modules/ruoyi-im/src/main/java/{org/dromara/system => com/wzj/soopin/im}/domain/vo/SysMessageUserVo.java (94%) rename ruoyi-modules/ruoyi-im/src/main/java/{org/dromara/system => com/wzj/soopin/im}/domain/vo/SysMessageVo.java (91%) rename ruoyi-modules/ruoyi-im/src/main/java/{org/dromara => com/wzj/soopin}/im/enums/MessageActionEnum.java (98%) rename ruoyi-modules/ruoyi-im/src/main/java/{org/dromara => com/wzj/soopin}/im/enums/MessageScopeEnum.java (94%) rename ruoyi-modules/ruoyi-im/src/main/java/{org/dromara/system => com/wzj/soopin/im}/event/MessageEventListener.java (95%) rename ruoyi-modules/ruoyi-im/src/main/java/{org/dromara/system => com/wzj/soopin/im}/mapper/SysMessageMapper.java (78%) rename ruoyi-modules/ruoyi-im/src/main/java/{org/dromara/system => com/wzj/soopin/im}/mapper/SysMessageTemplateMapper.java (70%) rename ruoyi-modules/ruoyi-im/src/main/java/{org/dromara/system => com/wzj/soopin/im}/mapper/SysMessageUserMapper.java (86%) rename ruoyi-modules/ruoyi-im/src/main/java/{org/dromara/system => com/wzj/soopin/im}/service/IMessageWebSocketService.java (83%) rename ruoyi-modules/ruoyi-im/src/main/java/{org/dromara/system => com/wzj/soopin/im}/service/ISysMessageService.java (94%) rename ruoyi-modules/ruoyi-im/src/main/java/{org/dromara/system => com/wzj/soopin/im}/service/ISysMessageTemplateService.java (89%) create mode 100644 ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/service/ISystemMessageUserService.java rename ruoyi-modules/ruoyi-im/src/main/java/{org/dromara/system => com/wzj/soopin/im}/service/ITencentIMService.java (95%) rename ruoyi-modules/ruoyi-im/src/main/java/{org/dromara/system => com/wzj/soopin/im}/service/impl/MessageWebSocketServiceImpl.java (83%) rename ruoyi-modules/ruoyi-im/src/main/java/{org/dromara/system => com/wzj/soopin/im}/service/impl/SysMessageServiceImpl.java (96%) rename ruoyi-modules/ruoyi-im/src/main/java/{org/dromara/system => com/wzj/soopin/im}/service/impl/SysMessageTemplateServiceImpl.java (90%) create mode 100644 ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/service/impl/SystemMessageUserService.java rename ruoyi-modules/ruoyi-im/src/main/java/{org/dromara/system => com/wzj/soopin/im}/service/impl/TencentIMServiceImpl.java (99%) rename ruoyi-modules/ruoyi-im/src/main/java/{org/dromara/system => com/wzj/soopin/im}/util/TLSSigAPIv2.java (99%) delete mode 100644 ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/converter/SysMessageTemplateConvert.java delete mode 100644 ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/service/ISystemMessageUserService.java delete mode 100644 ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/service/impl/SystemMessageUserService.java diff --git a/pom.xml b/pom.xml index 06dcbd73a..a9e017390 100644 --- a/pom.xml +++ b/pom.xml @@ -406,7 +406,7 @@ org.dromara - ruoyi-common-rabbitmq + ruoyi-common-mq ${revision} diff --git a/ruoyi-common/pom.xml b/ruoyi-common/pom.xml index ecc356ace..781767ad0 100644 --- a/ruoyi-common/pom.xml +++ b/ruoyi-common/pom.xml @@ -35,7 +35,7 @@ ruoyi-common-websocket ruoyi-common-sse ruoyi-common-mongo - ruoyi-common-rabbitmq + ruoyi-common-mq ruoyi-common diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/config/RocketMQConfig.java b/ruoyi-common/ruoyi-common-mq/src/main/java/org/dromara/common/mq/config/RocketMQConfig.java similarity index 91% rename from ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/config/RocketMQConfig.java rename to ruoyi-common/ruoyi-common-mq/src/main/java/org/dromara/common/mq/config/RocketMQConfig.java index c0b5fa45f..135b64e4d 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/config/RocketMQConfig.java +++ b/ruoyi-common/ruoyi-common-mq/src/main/java/org/dromara/common/mq/config/RocketMQConfig.java @@ -1,4 +1,4 @@ -package org.dromara.system.config; +package org.dromara.common.mq.config; import org.springframework.context.annotation.Configuration; @@ -14,14 +14,14 @@ public class RocketMQConfig { * 系统消息主题 */ public static final String TOPIC_SYS_MSG = "TOPIC_SYS_MSG"; - + /** * 系统消息消费者组 */ public static final String CONSUMER_GROUP_SYS_MSG = "CONSUMER_GROUP_SYS_MSG"; - + /** * 系统消息标签 */ public static final String TAG_SYS_MSG = "SYS_MSG"; -} \ No newline at end of file +} diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/config/RocketMQConfiguration.java b/ruoyi-common/ruoyi-common-mq/src/main/java/org/dromara/common/mq/config/RocketMQConfiguration.java similarity index 98% rename from ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/config/RocketMQConfiguration.java rename to ruoyi-common/ruoyi-common-mq/src/main/java/org/dromara/common/mq/config/RocketMQConfiguration.java index c05032c64..1bd5a289e 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/config/RocketMQConfiguration.java +++ b/ruoyi-common/ruoyi-common-mq/src/main/java/org/dromara/common/mq/config/RocketMQConfiguration.java @@ -1,4 +1,4 @@ -package org.dromara.system.config; +package org.dromara.common.mq.config; import org.apache.rocketmq.client.producer.DefaultMQProducer; import org.apache.rocketmq.spring.autoconfigure.RocketMQAutoConfiguration; diff --git a/ruoyi-common/ruoyi-common-mq/src/main/java/org/dromara/common/mq/domain/MQMessage.java b/ruoyi-common/ruoyi-common-mq/src/main/java/org/dromara/common/mq/domain/MQMessage.java new file mode 100644 index 000000000..f4112fb4c --- /dev/null +++ b/ruoyi-common/ruoyi-common-mq/src/main/java/org/dromara/common/mq/domain/MQMessage.java @@ -0,0 +1,43 @@ +package org.dromara.common.mq.domain; + +import cn.hutool.core.util.IdUtil; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.time.LocalDateTime; + +@Data +@Builder(toBuilder = true) +@AllArgsConstructor +public class MQMessage { + /** + * 消息ID + */ + private String messageId; + /** + * 消息主题 + */ + private String topic; + /** + * 消息标签 + */ + private String tag; + /** + * 消息类型 + */ + private String messageType; + /** + * 消息内容 + */ + private Object data; + /** + * 消息来源 + */ + private String source; + /** + * 发送时间 + */ + private LocalDateTime sendTime; +} diff --git a/ruoyi-common/ruoyi-common-mq/src/main/java/org/dromara/common/mq/enums/MessageActionEnum.java b/ruoyi-common/ruoyi-common-mq/src/main/java/org/dromara/common/mq/enums/MessageActionEnum.java new file mode 100644 index 000000000..005ff2b19 --- /dev/null +++ b/ruoyi-common/ruoyi-common-mq/src/main/java/org/dromara/common/mq/enums/MessageActionEnum.java @@ -0,0 +1,48 @@ +package org.dromara.common.mq.enums; + +public enum MessageActionEnum { + + NEW_FOUCS(1,"新的关注"), //新的关注 + SYSTEM_NOTIFY(2, "系统->通知"), // 系统->通知 + SYSTEM_REPORT(3, "系统->举报下架(视频,视频评论) 视频评论"), // 系统->举报下架(视频,视频评论) 视频评论 + SYSTEM_CHECK(4, "系统->审核结果(复审,驳回 ,通过)"), // 系统->审核结果(复审,驳回 ,通过) + SYSTEM_PUSH(5, "系统->推广类的"), //系统->推广类的 + INTERACTION_COMMENT(6, "互动->评论"), //互动->评论 + INTERACTION_AT(7, "互动->视频评论中的@"), //互动->视频评论中的@ + INTERACTION_LIKE(8, "互动->点赞"), //互动->点赞 + INTERACTION_REPLY(9, "互动->评论回复"), //互动->评论回复 + ORDER_RECHARGE(10, "订单->充值 online"), //订单->充值 online + ORDER_PAY(11, "订单->订单交易成功通知 online"), //订单->订单交易成功通知 online + ORDER_REFUND(12, "订单->退款结果通知"), //订单->退款结果通知 + GROUP_NOTIFY_CHECK(13, "群通知->进群申请 online"), //群通知->进群申请 online + GROUP_NOTIFY_ACCEPT(14, "群通知->进群审核审核通过 online"), // 群通知->进群审核审核通过 online + GROUP_NOTIFY_FAIL(15, "群通知->进群审核审核拒绝 online"), // 群通知->进群审核审核拒绝 online + GROUP_NOTIFY_LEAVE_UP(16, "群通知->群升级为达人群通知"), // 群通知->群升级为达人群通知 + GROUP_NOTIFY_LEAVE_DOWN(17, "群通知->群降级为普通群通知"); // 群通知->群降级为普通群通知 + + private int code; + private String account; + private String desc; + + MessageActionEnum(int code, String desc) { + this.code = code; + this.desc = desc; + } + + public int getCode() { + return code; + } + + public String getDesc() { + return desc; + } + + public static MessageActionEnum getByCode(int code) { + for (MessageActionEnum actionEnum : values()) { + if (actionEnum.getCode() == code) { + return actionEnum; + } + } + return null; + } +} diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/IRocketMQService.java b/ruoyi-common/ruoyi-common-mq/src/main/java/org/dromara/common/mq/service/IRocketMQService.java similarity index 95% rename from ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/IRocketMQService.java rename to ruoyi-common/ruoyi-common-mq/src/main/java/org/dromara/common/mq/service/IRocketMQService.java index 8887a6658..f5be822e1 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/IRocketMQService.java +++ b/ruoyi-common/ruoyi-common-mq/src/main/java/org/dromara/common/mq/service/IRocketMQService.java @@ -1,4 +1,4 @@ -package org.dromara.system.service; +package org.dromara.common.mq.service; /** * RocketMQ服务接口 @@ -23,7 +23,7 @@ public interface IRocketMQService { * @param message 消息内容 */ void sendMessage(String topic, String tag, Object message); - + /** * 发送延迟消息 * @@ -33,4 +33,4 @@ public interface IRocketMQService { * @param delayTimeLevel 延迟级别 (1s/5s/10s/30s/1m/2m/3m/4m/5m/6m/7m/8m/9m/10m/20m/30m/1h/2h) */ void sendDelayMessage(String topic, String tag, Object message, int delayTimeLevel); -} \ No newline at end of file +} diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/RocketMQServiceImpl.java b/ruoyi-common/ruoyi-common-mq/src/main/java/org/dromara/common/mq/service/impl/RocketMQServiceImpl.java similarity index 91% rename from ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/RocketMQServiceImpl.java rename to ruoyi-common/ruoyi-common-mq/src/main/java/org/dromara/common/mq/service/impl/RocketMQServiceImpl.java index 5e8049f7a..4b9f92cfd 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/RocketMQServiceImpl.java +++ b/ruoyi-common/ruoyi-common-mq/src/main/java/org/dromara/common/mq/service/impl/RocketMQServiceImpl.java @@ -1,12 +1,11 @@ -package org.dromara.system.service.impl; +package org.dromara.common.mq.service.impl; -import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.apache.rocketmq.client.producer.SendCallback; import org.apache.rocketmq.client.producer.SendResult; import org.apache.rocketmq.spring.core.RocketMQTemplate; import org.dromara.common.json.utils.JsonUtils; -import org.dromara.system.service.IRocketMQService; +import org.dromara.common.mq.service.IRocketMQService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.messaging.support.MessageBuilder; import org.springframework.stereotype.Service; @@ -29,7 +28,7 @@ public class RocketMQServiceImpl implements IRocketMQService { log.error("RocketMQTemplate未初始化,无法发送消息"); return; } - + try { String jsonMessage = JsonUtils.toJsonString(message); rocketMQTemplate.convertAndSend(topic, jsonMessage); @@ -45,7 +44,7 @@ public class RocketMQServiceImpl implements IRocketMQService { log.error("RocketMQTemplate未初始化,无法发送消息"); return; } - + try { String destination = topic + ":" + tag; String jsonMessage = JsonUtils.toJsonString(message); @@ -62,21 +61,21 @@ public class RocketMQServiceImpl implements IRocketMQService { log.error("RocketMQTemplate未初始化,无法发送延迟消息"); return; } - + try { String destination = topic + ":" + tag; String jsonMessage = JsonUtils.toJsonString(message); - rocketMQTemplate.asyncSend(destination, MessageBuilder.withPayload(jsonMessage).build(), + rocketMQTemplate.asyncSend(destination, MessageBuilder.withPayload(jsonMessage).build(), new SendCallback() { @Override public void onSuccess(SendResult sendResult) { - log.info("发送延迟消息到RocketMQ成功,destination: {}, message: {}, result: {}", + log.info("发送延迟消息到RocketMQ成功,destination: {}, message: {}, result: {}", destination, jsonMessage, sendResult); } @Override public void onException(Throwable throwable) { - log.error("发送延迟消息到RocketMQ异常,destination: {}, message: {}", + log.error("发送延迟消息到RocketMQ异常,destination: {}, message: {}", destination, jsonMessage, throwable); } }, 3000, delayTimeLevel); @@ -85,4 +84,3 @@ public class RocketMQServiceImpl implements IRocketMQService { } } } - \ No newline at end of file diff --git a/ruoyi-common/ruoyi-common-mq/src/main/java/org/dromara/common/mq/utils/MqUtil.java b/ruoyi-common/ruoyi-common-mq/src/main/java/org/dromara/common/mq/utils/MqUtil.java new file mode 100644 index 000000000..afbd1c16e --- /dev/null +++ b/ruoyi-common/ruoyi-common-mq/src/main/java/org/dromara/common/mq/utils/MqUtil.java @@ -0,0 +1,85 @@ +package org.dromara.common.mq.utils; + +import lombok.extern.slf4j.Slf4j; +import org.apache.rocketmq.client.producer.SendCallback; +import org.apache.rocketmq.client.producer.SendResult; +import org.apache.rocketmq.spring.core.RocketMQTemplate; +import org.dromara.common.json.utils.JsonUtils; +import org.dromara.common.mq.domain.MQMessage; +import org.springframework.beans.BeansException; +import org.springframework.context.ApplicationContext; +import org.springframework.context.ApplicationContextAware; +import org.springframework.messaging.support.MessageBuilder; +import org.springframework.stereotype.Component; + +@Slf4j +@Component +public class MqUtil implements ApplicationContextAware { + private static RocketMQTemplate template; + + @Override + public void setApplicationContext(ApplicationContext applicationContext) throws BeansException { + template = applicationContext.getBean(RocketMQTemplate.class); + } + + // + public static void sendMessage(String topic, MQMessage message) { + if (template == null) { + log.error("RocketMQTemplate未初始化,无法发送消息"); + return; + } + + try { + String jsonMessage = JsonUtils.toJsonString(message); + template.convertAndSend(topic, jsonMessage); + log.info("发送消息到RocketMQ成功,topic: {}, message: {}", topic, jsonMessage); + } catch (Exception e) { + log.error("发送消息到RocketMQ失败,topic: {}, message: {}", topic, message, e); + } + } + + public static void sendMessage(String topic, String tag, MQMessage message) { + if (template == null) { + log.error("RocketMQTemplate未初始化,无法发送消息"); + return; + } + + try { + String destination = topic + ":" + tag; + String jsonMessage = JsonUtils.toJsonString(message); + template.convertAndSend(destination, jsonMessage); + log.info("发送消息到RocketMQ成功,destination: {}, message: {}", destination, jsonMessage); + } catch (Exception e) { + log.error("发送消息到RocketMQ失败,topic: {}, tag: {}, message: {}", topic, tag, message, e); + } + } + public static void sendDelayMessage(String topic, String tag, MQMessage message, int delayTimeLevel) { + if (template == null) { + log.error("RocketMQTemplate未初始化,无法发送延迟消息"); + return; + } + + try { + String destination = topic + ":" + tag; + String jsonMessage = JsonUtils.toJsonString(message); + template.asyncSend(destination, MessageBuilder.withPayload(jsonMessage).build(), + new SendCallback() { + @Override + public void onSuccess(SendResult sendResult) { + log.info("发送延迟消息到RocketMQ成功,destination: {}, message: {}, result: {}", + destination, jsonMessage, sendResult); + } + + @Override + public void onException(Throwable throwable) { + log.error("发送延迟消息到RocketMQ异常,destination: {}, message: {}", + destination, jsonMessage, throwable); + } + }, 3000, delayTimeLevel); + } catch (Exception e) { + log.error("发送延迟消息到RocketMQ失败,topic: {}, tag: {}, message: {}", topic, tag, message, e); + } + } + + +} diff --git a/ruoyi-common/ruoyi-common-rabbitmq/pom.xml b/ruoyi-common/ruoyi-common-rabbitmq/pom.xml deleted file mode 100644 index 9c282078d..000000000 --- a/ruoyi-common/ruoyi-common-rabbitmq/pom.xml +++ /dev/null @@ -1,39 +0,0 @@ - - - org.dromara - ruoyi-common - ${revision} - - 4.0.0 - - ruoyi-common-rabbitmq - - ruoyi-common-rabbitmq - - - - - - org.dromara - ruoyi-common-core - - - org.dromara - ruoyi-common-log - - - org.springframework.boot - spring-boot-starter-amqp - - - - - com.fasterxml.jackson.core - jackson-databind - - - - - - diff --git a/ruoyi-common/ruoyi-common-rabbitmq/src/main/java/org/dromara/common/rabbitmq/config/properties/RabbitMQConfig.java b/ruoyi-common/ruoyi-common-rabbitmq/src/main/java/org/dromara/common/rabbitmq/config/properties/RabbitMQConfig.java deleted file mode 100644 index 784369596..000000000 --- a/ruoyi-common/ruoyi-common-rabbitmq/src/main/java/org/dromara/common/rabbitmq/config/properties/RabbitMQConfig.java +++ /dev/null @@ -1,55 +0,0 @@ -package org.dromara.common.rabbitmq.config.properties; - - -import org.springframework.amqp.core.*; -import org.springframework.amqp.support.converter.Jackson2JsonMessageConverter; -import org.springframework.amqp.support.converter.MessageConverter; -import org.springframework.context.annotation.Bean; -import org.springframework.context.annotation.Configuration; - -@Configuration -public class RabbitMQConfig { - - public static final String DIRECT_EXCHANGE_NAME = "ruoyi.direct.exchange"; - public static final String DIRECT_QUEUE_NAME = "ruoyi.direct.queue"; - public static final String DIRECT_ROUTING_KEY = "ruoyi.direct.routingkey"; - - public static final String TOPIC_EXCHANGE_NAME = "ruoyi.topic.exchange"; - public static final String TOPIC_QUEUE_NAME = "ruoyi.topic.queue"; - public static final String TOPIC_ROUTING_KEY = "ruoyi.topic.#"; - - @Bean - public DirectExchange directExchange() { - return new DirectExchange(DIRECT_EXCHANGE_NAME, true, false); - } - - @Bean - public TopicExchange topicExchange() { - return new TopicExchange(TOPIC_EXCHANGE_NAME, true, false); - } - - @Bean - public Queue directQueue() { - return new Queue(DIRECT_QUEUE_NAME, true); - } - - @Bean - public Queue topicQueue() { - return new Queue(TOPIC_QUEUE_NAME, true); - } - - @Bean - public Binding directBinding(Queue directQueue, DirectExchange directExchange) { - return BindingBuilder.bind(directQueue).to(directExchange).with(DIRECT_ROUTING_KEY); - } - - @Bean - public Binding topicBinding(Queue topicQueue, TopicExchange topicExchange) { - return BindingBuilder.bind(topicQueue).to(topicExchange).with(TOPIC_ROUTING_KEY); - } - - @Bean - public MessageConverter jsonMessageConverter() { - return new Jackson2JsonMessageConverter(); - } -} diff --git a/ruoyi-common/ruoyi-common-rabbitmq/src/main/java/org/dromara/common/rabbitmq/domain/BaseMessage.java b/ruoyi-common/ruoyi-common-rabbitmq/src/main/java/org/dromara/common/rabbitmq/domain/BaseMessage.java deleted file mode 100644 index 3ab3480e3..000000000 --- a/ruoyi-common/ruoyi-common-rabbitmq/src/main/java/org/dromara/common/rabbitmq/domain/BaseMessage.java +++ /dev/null @@ -1,24 +0,0 @@ -package org.dromara.common.rabbitmq.domain; - -import lombok.Data; - -import java.time.LocalDateTime; - -@Data -public class BaseMessage { - private String messageId; - private String messageType; - private Object data; - private LocalDateTime time; - private String source; - - public BaseMessage() { - this.time = LocalDateTime.now(); - } - - public BaseMessage(String messageType, Object data) { - this(); - this.messageType = messageType; - this.data = data; - } -} diff --git a/ruoyi-common/ruoyi-common-rabbitmq/src/main/java/org/dromara/common/rabbitmq/utils/MqUtil.java b/ruoyi-common/ruoyi-common-rabbitmq/src/main/java/org/dromara/common/rabbitmq/utils/MqUtil.java deleted file mode 100644 index ef92b31e1..000000000 --- a/ruoyi-common/ruoyi-common-rabbitmq/src/main/java/org/dromara/common/rabbitmq/utils/MqUtil.java +++ /dev/null @@ -1,157 +0,0 @@ -package org.dromara.common.rabbitmq.utils; - -import lombok.extern.slf4j.Slf4j; -import org.dromara.common.core.utils.SpringUtils; -import org.dromara.common.json.utils.JsonUtils; -import org.dromara.common.rabbitmq.config.properties.RabbitMQConfig; -import org.springframework.amqp.rabbit.core.RabbitTemplate; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.context.ApplicationContextAware; -import org.springframework.stereotype.Component; -import org.springframework.stereotype.Service; -import org.springframework.amqp.AmqpException; -import org.springframework.amqp.core.Message; -import org.springframework.amqp.core.MessageBuilder; -import org.springframework.amqp.core.MessageDeliveryMode; -import org.springframework.amqp.core.MessageProperties; -import org.springframework.amqp.rabbit.core.RabbitTemplate; -import org.springframework.amqp.support.converter.MessageConverter; -import org.springframework.beans.BeansException; -import org.springframework.context.ApplicationContext; -import org.springframework.context.ApplicationContextAware; -@Slf4j -@Component -public class MqUtil implements ApplicationContextAware { - private static RabbitTemplate rabbitTemplate; - private static MessageConverter messageConverter; - - @Override - public void setApplicationContext(ApplicationContext applicationContext) throws BeansException { - rabbitTemplate = applicationContext.getBean(RabbitTemplate.class); - messageConverter = applicationContext.getBean(MessageConverter.class); - } - - /** - * 发送消息到指定交换机和路由键 - */ - public static void sendMessage(String exchange, String routingKey, Object message) { - try { - rabbitTemplate.convertAndSend(exchange, routingKey, message); - log.debug("消息发送成功 - exchange: {}, routingKey: {}, message: {}", exchange, routingKey, message); - } catch (AmqpException e) { - log.error("消息发送失败 - exchange: {}, routingKey: {}, message: {}", exchange, routingKey, message, e); - throw new RuntimeException("消息发送失败", e); - } - } - - /** - * 发送消息到指定队列(使用默认交换机) - */ - public static void sendToQueue(String queueName, Object message) { - sendMessage("", queueName, message); - } - - /** - * 发送延迟消息 - */ - public static void sendDelayedMessage(String exchange, String routingKey, Object message, long delayMillis) { - try { - Message amqpMessage = messageConverter.toMessage(message, new MessageProperties()); - amqpMessage.getMessageProperties().setDelayLong(delayMillis); - amqpMessage.getMessageProperties().setDeliveryMode(MessageDeliveryMode.PERSISTENT); - - rabbitTemplate.convertAndSend(exchange, routingKey, amqpMessage); - log.debug("延迟消息发送成功 - exchange: {}, routingKey: {}, delay: {}ms", exchange, routingKey, delayMillis); - } catch (AmqpException e) { - log.error("延迟消息发送失败", e); - throw new RuntimeException("延迟消息发送失败", e); - } - } - -// /** -// * 发送带有headers的消息 -// */ -// public static void sendMessageWithHeaders(String exchange, String routingKey, Object message, Map headers) { -// try { -// Message amqpMessage = messageConverter.toMessage(message, new MessageProperties()); -// if (headers != null) { -// headers.forEach((key, value) -> amqpMessage.getMessageProperties().setHeader(key, value)); -// } -// -// rabbitTemplate.convertAndSend(exchange, routingKey, amqpMessage); -// log.debug("带headers的消息发送成功 - exchange: {}, routingKey: {}", exchange, routingKey); -// } catch (AmqpException e) { -// log.error("带headers的消息发送失败", e); -// throw new RuntimeException("消息发送失败", e); -// } -// } - - /** - * 发送JSON格式的消息 - */ - public static void sendJsonMessage(String exchange, String routingKey, Object message) { - try { - Message amqpMessage = MessageBuilder.withBody(JsonUtils.toJsonString(message).getBytes()) - .setContentType(MessageProperties.CONTENT_TYPE_JSON) - .setDeliveryMode(MessageDeliveryMode.PERSISTENT) - .build(); - - rabbitTemplate.convertAndSend(exchange, routingKey, amqpMessage); - log.debug("JSON消息发送成功 - exchange: {}, routingKey: {}", exchange, routingKey); - } catch (AmqpException e) { - log.error("JSON消息发送失败", e); - throw new RuntimeException("JSON消息发送失败", e); - } - } - - /** - * 发送消息并等待确认(同步方式) - */ - public static boolean sendMessageWithConfirm(String exchange, String routingKey, Object message) { - try { - rabbitTemplate.invoke(operations -> { - operations.convertAndSend(exchange, routingKey, message); - // 等待确认 - return operations.waitForConfirms(5000); - }); - log.debug("消息发送并确认成功 - exchange: {}, routingKey: {}", exchange, routingKey); - return true; - } catch (Exception e) { - log.error("消息发送确认失败", e); - return false; - } - } - - /** - * 发送消息到预定义的直连交换机 - */ - public static void sendToDirectExchange(Object message) { - sendMessage("ruoyi.direct.exchange", "ruoyi.direct.routingkey", message); - } - - /** - * 发送消息到预定义的主题交换机 - */ - public static void sendToTopicExchange(String routingKey, Object message) { - sendMessage("ruoyi.topic.exchange", routingKey, message); - } - - /** - * 检查RabbitMQ连接状态 - */ - public static boolean isConnected() { - try { - rabbitTemplate.execute(channel -> { - // 简单的连接检查 - return channel.isOpen(); - }); - return true; - } catch (Exception e) { - log.warn("RabbitMQ连接检查失败", e); - return false; - } - } - - - -} diff --git a/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/rabbitmq/config/properties/RedissonProperties.java b/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/mq/config/properties/RedissonProperties.java similarity index 97% rename from ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/rabbitmq/config/properties/RedissonProperties.java rename to ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/mq/config/properties/RedissonProperties.java index 666c82be9..99b863a4f 100644 --- a/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/rabbitmq/config/properties/RedissonProperties.java +++ b/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/mq/config/properties/RedissonProperties.java @@ -1,4 +1,4 @@ -package org.dromara.common.rabbitmq.config.properties; +package org.dromara.common.mq.config.properties; import lombok.Data; import lombok.NoArgsConstructor; diff --git a/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/config/RedisConfig.java b/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/config/RedisConfig.java index 485cdf12b..7f21cdbea 100644 --- a/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/config/RedisConfig.java +++ b/ruoyi-common/ruoyi-common-redis/src/main/java/org/dromara/common/redis/config/RedisConfig.java @@ -10,7 +10,7 @@ import com.fasterxml.jackson.datatype.jsr310.deser.LocalDateTimeDeserializer; import com.fasterxml.jackson.datatype.jsr310.ser.LocalDateTimeSerializer; import lombok.extern.slf4j.Slf4j; import org.dromara.common.core.utils.SpringUtils; -import org.dromara.common.rabbitmq.config.properties.RedissonProperties; +import org.dromara.common.mq.config.properties.RedissonProperties; import org.dromara.common.redis.handler.KeyPrefixHandler; import org.dromara.common.redis.handler.RedisExceptionHandler; import org.redisson.client.codec.StringCodec; diff --git a/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/config/TenantConfig.java b/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/config/TenantConfig.java index 0599897be..f58555adc 100644 --- a/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/config/TenantConfig.java +++ b/ruoyi-common/ruoyi-common-tenant/src/main/java/org/dromara/common/tenant/config/TenantConfig.java @@ -5,7 +5,7 @@ import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.extension.plugins.inner.TenantLineInnerInterceptor; import org.dromara.common.core.utils.reflect.ReflectUtils; import org.dromara.common.redis.config.RedisConfig; -import org.dromara.common.rabbitmq.config.properties.RedissonProperties; +import org.dromara.common.mq.config.properties.RedissonProperties; import org.dromara.common.tenant.core.TenantSaTokenDao; import org.dromara.common.tenant.handle.PlusTenantLineHandler; import org.dromara.common.tenant.handle.TenantKeyPrefixHandler; diff --git a/ruoyi-modules/ruoyi-content/src/main/java/com/wzj/soopin/content/domain/bo/CommentBO.java b/ruoyi-modules/ruoyi-content/src/main/java/com/wzj/soopin/content/domain/bo/CommentBO.java index ebfbe4b33..11887b46b 100644 --- a/ruoyi-modules/ruoyi-content/src/main/java/com/wzj/soopin/content/domain/bo/CommentBO.java +++ b/ruoyi-modules/ruoyi-content/src/main/java/com/wzj/soopin/content/domain/bo/CommentBO.java @@ -1,18 +1,20 @@ package com.wzj.soopin.content.domain.bo; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.wzj.soopin.content.domain.po.Comment; import jakarta.validation.constraints.NotBlank; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; import lombok.ToString; +import org.dromara.common.core.domain.BaseBO; import org.hibernate.validator.constraints.Length; @Data -@AllArgsConstructor -@NoArgsConstructor -@ToString -public class CommentBO { +public class CommentBO extends BaseBO { + + private Long id; @NotBlank(message = "留言信息不完整") private String vlogerId; @@ -32,7 +34,14 @@ public class CommentBO { private String mobile; - public String getMobile() { return mobile; } - public void setMobile(String mobile) { this.mobile = mobile; } + @Override + public LambdaQueryWrapper toWrapper() { + return super.toWrapper().eq(id!=null,Comment::getId,id) + .eq(vlogerId!=null,Comment::getVlogerId,vlogerId) + .eq(fatherCommentId!=null,Comment::getFatherCommentId,fatherCommentId) + .eq(vlogId!=null,Comment::getVlogId,vlogId) + .eq(commentUserId!=null,Comment::getCommentUserId,commentUserId) + .eq(content!=null,Comment::getContent,content); + } } diff --git a/ruoyi-modules/ruoyi-content/src/main/java/com/wzj/soopin/content/service/impl/CommentServiceImpl.java b/ruoyi-modules/ruoyi-content/src/main/java/com/wzj/soopin/content/service/impl/CommentServiceImpl.java index 0691f93de..c27436d9f 100644 --- a/ruoyi-modules/ruoyi-content/src/main/java/com/wzj/soopin/content/service/impl/CommentServiceImpl.java +++ b/ruoyi-modules/ruoyi-content/src/main/java/com/wzj/soopin/content/service/impl/CommentServiceImpl.java @@ -177,14 +177,11 @@ public class CommentServiceImpl extends BaseInfoProperties implements CommentSer @Override public Page pageComment(Page page, CommentBO bo) { // 如果是按点赞数排序,则调用新的Mapper方法进行聚合排序 -// if (bo != null && "likeCounts".equals(bo.getColumn())) { -// Page voPage = new Page<>(page.getCurrent(), page.getSize()); -// commentMapperCustom.selectCommentsWithAggregatedLikes(voPage, bo); -// return voPage; -// } - LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); - wrapper.eq(Comment::getFatherCommentId, "0"); + LambdaQueryWrapper wrapper = bo.toWrapper(); + if(bo.getFatherCommentId()==null){ + wrapper.eq(Comment::getFatherCommentId, "0"); + } // 手机号查视频 if (bo != null && org.springframework.util.StringUtils.hasText(bo.getMobile())) { diff --git a/ruoyi-modules/ruoyi-im/pom.xml b/ruoyi-modules/ruoyi-im/pom.xml index 99bea4121..90317ef6a 100644 --- a/ruoyi-modules/ruoyi-im/pom.xml +++ b/ruoyi-modules/ruoyi-im/pom.xml @@ -47,7 +47,7 @@ org.dromara - ruoyi-common-rabbitmq + ruoyi-common-mq diff --git a/ruoyi-modules/ruoyi-im/src/main/java/org/dromara/soopin/im/consumer/IMMessageConsumer.java b/ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/consumer/IMMessageConsumer.java similarity index 76% rename from ruoyi-modules/ruoyi-im/src/main/java/org/dromara/soopin/im/consumer/IMMessageConsumer.java rename to ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/consumer/IMMessageConsumer.java index 43a473dd6..2ee024c40 100644 --- a/ruoyi-modules/ruoyi-im/src/main/java/org/dromara/soopin/im/consumer/IMMessageConsumer.java +++ b/ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/consumer/IMMessageConsumer.java @@ -1,16 +1,15 @@ -package org.dromara.soopin.im.consumer; +package com.wzj.soopin.im.consumer; import com.rabbitmq.client.Channel; import lombok.extern.slf4j.Slf4j; -import org.dromara.common.rabbitmq.config.properties.RabbitMQConfig; +//import org.dromara.common.mq.config.properties.RabbitMQConfig; import org.springframework.amqp.core.Message; -import org.springframework.amqp.rabbit.annotation.RabbitListener; import org.springframework.stereotype.Component; import java.io.IOException; @Slf4j @Component public class IMMessageConsumer { - @RabbitListener(queues = RabbitMQConfig.TOPIC_QUEUE_NAME) +// @RabbitListener(queues = RabbitMQConfig.TOPIC_QUEUE_NAME) public void handleDirectMessage(String message, Channel channel, Message amqpMessage) throws IOException { try { log.info("接收到直连队列消息: {}", message); diff --git a/ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/consumer/MessageRocketMQConsumer.java b/ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/consumer/MessageRocketMQConsumer.java similarity index 86% rename from ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/consumer/MessageRocketMQConsumer.java rename to ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/consumer/MessageRocketMQConsumer.java index db6ee580f..dffd3a94a 100644 --- a/ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/consumer/MessageRocketMQConsumer.java +++ b/ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/consumer/MessageRocketMQConsumer.java @@ -1,14 +1,13 @@ -package org.dromara.system.consumer; +package com.wzj.soopin.im.consumer; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; -import org.apache.rocketmq.spring.annotation.RocketMQMessageListener; import org.apache.rocketmq.spring.core.RocketMQListener; import org.dromara.common.core.utils.StringUtils; import org.dromara.common.json.utils.JsonUtils; -import org.dromara.system.config.RocketMQConfig; -import org.dromara.system.domain.vo.SysMessageVo; +//import org.dromara.system.config.RocketMQConfig; +import com.wzj.soopin.im.domain.vo.SysMessageVo; import org.dromara.system.websocket.MessageWebSocketServer; import org.springframework.stereotype.Component; @@ -20,11 +19,11 @@ import org.springframework.stereotype.Component; @Slf4j @Component @RequiredArgsConstructor -@RocketMQMessageListener( - topic = RocketMQConfig.TOPIC_SYS_MSG, - consumerGroup = RocketMQConfig.CONSUMER_GROUP_SYS_MSG, - selectorExpression = RocketMQConfig.TAG_SYS_MSG -) +//@RocketMQMessageListener( +// topic = RocketMQConfig.TOPIC_SYS_MSG, +// consumerGroup = RocketMQConfig.CONSUMER_GROUP_SYS_MSG, +// selectorExpression = RocketMQConfig.TAG_SYS_MSG +//) public class MessageRocketMQConsumer implements RocketMQListener { private final MessageWebSocketServer messageWebSocketServer; diff --git a/ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/controller/SysMessageController.java b/ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/controller/IMMessageController.java similarity index 89% rename from ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/controller/SysMessageController.java rename to ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/controller/IMMessageController.java index bd5aaa822..590f71176 100644 --- a/ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/controller/SysMessageController.java +++ b/ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/controller/IMMessageController.java @@ -1,6 +1,8 @@ -package org.dromara.system.controller; +package com.wzj.soopin.im.controller; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.wzj.soopin.im.domain.SysMessage; +import com.wzj.soopin.im.domain.bo.SysMessageBo; import io.swagger.v3.oas.annotations.tags.Tag; import jakarta.validation.constraints.NotNull; import lombok.RequiredArgsConstructor; @@ -12,10 +14,8 @@ import org.dromara.common.log.enums.BusinessType; import org.dromara.common.mybatis.core.page.PageQuery; import org.dromara.common.satoken.utils.LoginHelper; import org.dromara.common.web.core.BaseController; -import org.dromara.system.domain.SysMessage; -import org.dromara.system.domain.bo.SysMessageBo; -import org.dromara.system.domain.vo.SysMessageVo; -import org.dromara.system.service.ISysMessageService; +import com.wzj.soopin.im.domain.vo.SysMessageVo; +import com.wzj.soopin.im.service.ISysMessageService; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; @@ -28,7 +28,7 @@ import org.springframework.web.bind.annotation.*; @RestController @RequiredArgsConstructor @RequestMapping("/system/message") -public class SysMessageController extends BaseController { +public class IMMessageController extends BaseController { private final ISysMessageService messageService; diff --git a/ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/controller/SysMessageTemplateController.java b/ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/controller/IMMessageTemplateController.java similarity index 66% rename from ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/controller/SysMessageTemplateController.java rename to ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/controller/IMMessageTemplateController.java index 46425fe20..457d4035a 100644 --- a/ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/controller/SysMessageTemplateController.java +++ b/ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/controller/IMMessageTemplateController.java @@ -1,8 +1,8 @@ -package org.dromara.system.controller; +package com.wzj.soopin.im.controller; import cn.dev33.satoken.annotation.SaCheckPermission; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.wzj.soopin.im.domain.bo.SysMessageTemplateBo; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.tags.Tag; import jakarta.validation.constraints.NotEmpty; @@ -10,18 +10,16 @@ import jakarta.validation.constraints.NotNull; import lombok.RequiredArgsConstructor; import org.dromara.common.core.domain.R; import org.dromara.common.core.utils.MapstructUtils; -import org.dromara.common.core.utils.StringUtils; import org.dromara.common.core.validate.AddGroup; import org.dromara.common.core.validate.EditGroup; import org.dromara.common.idempotent.annotation.RepeatSubmit; import org.dromara.common.log.annotation.Log; import org.dromara.common.log.enums.BusinessType; import org.dromara.common.web.core.BaseController; -import org.dromara.system.converter.SysMessageTemplateConvert; -import org.dromara.system.domain.SysMessageTemplate; -import org.dromara.system.domain.bo.SysMessageTemplateBo; -import org.dromara.system.domain.vo.SysMessageTemplateVo; -import org.dromara.system.service.ISysMessageTemplateService; +import com.wzj.soopin.im.converter.SysMessageTemplateConvert; +import com.wzj.soopin.im.domain.SysMessageTemplate; +import com.wzj.soopin.im.domain.vo.SysMessageTemplateVo; +import com.wzj.soopin.im.service.ISysMessageTemplateService; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; @@ -35,8 +33,8 @@ import java.util.List; @Validated @RequiredArgsConstructor @RestController -@RequestMapping("/system/message/template") -public class SysMessageTemplateController extends BaseController { +@RequestMapping("/im/message/template") +public class IMMessageTemplateController extends BaseController { private final ISysMessageTemplateService templateService; @@ -47,12 +45,10 @@ public class SysMessageTemplateController extends BaseController { */ @SaCheckPermission("system:message:template:list") @Tag(name = "查询消息模板列表") - @PostMapping("/list") + @PostMapping("/page") public R> list(@RequestBody SysMessageTemplateBo bo, @RequestBody Page page) { Page templatePage = templateService.page(page, bo.toWrapper()); - Page voPage = new Page<>(templatePage.getCurrent(), templatePage.getSize(), templatePage.getTotal()); - voPage.setRecords(MapstructUtils.convert(templatePage.getRecords(), SysMessageTemplateVo.class)); - return R.ok(voPage); + return R.ok(convert.toVO(templatePage)); } /** @@ -64,7 +60,7 @@ public class SysMessageTemplateController extends BaseController { @GetMapping("/{id}") public R getInfo(@NotNull(message = "消息模板ID不能为空") @PathVariable Long id) { SysMessageTemplate template = templateService.getById(id); - return R.ok(MapstructUtils.convert(template, SysMessageTemplateVo.class)); + return R.ok(convert.toVO(template)); } /** @@ -89,9 +85,9 @@ public class SysMessageTemplateController extends BaseController { @SaCheckPermission("system:message:template:add") @Log(title = "消息模板管理", businessType = BusinessType.INSERT) @RepeatSubmit() - @PostMapping() - public R add(@Validated(AddGroup.class) @RequestBody SysMessageTemplateBo bo) { - return toAjax(templateService.save(convert.toPo(bo))); + @PostMapping("/add") + public R add(@Validated(AddGroup.class) @RequestBody SysMessageTemplateBo bo) { + return R.ok(templateService.save(convert.toPo(bo))); } /** @@ -99,21 +95,20 @@ public class SysMessageTemplateController extends BaseController { */ @SaCheckPermission("system:message:template:edit") @Log(title = "消息模板管理", businessType = BusinessType.UPDATE) - @RepeatSubmit() - @PutMapping() - public R edit(@Validated(EditGroup.class) @RequestBody SysMessageTemplateBo bo) { - return toAjax(templateService.updateById(convert.toPo(bo))); + @PostMapping(("/update")) + public R edit(@Validated(EditGroup.class) @RequestBody SysMessageTemplateBo bo) { + return R.ok(templateService.updateById(convert.toPo(bo))); } /** * 删除消息模板 * - * @param ids 消息模板ID串 + * @param id 消息模板ID */ @SaCheckPermission("system:message:template:remove") @Log(title = "消息模板管理", businessType = BusinessType.DELETE) - @DeleteMapping("/{ids}") - public R remove(@NotEmpty(message = "消息模板ID不能为空") @PathVariable Long[] ids) { - return toAjax(templateService.removeByIds(List.of(ids))); + @DeleteMapping("/{id}") + public R remove(@NotEmpty(message = "消息模板ID不能为空") @PathVariable Long id) { + return R.ok(templateService.removeById(id)); } } diff --git a/ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/controller/SysMessageUserController.java b/ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/controller/IMMessageUserController.java similarity index 85% rename from ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/controller/SysMessageUserController.java rename to ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/controller/IMMessageUserController.java index c5f4b016f..f11a9767e 100644 --- a/ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/controller/SysMessageUserController.java +++ b/ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/controller/IMMessageUserController.java @@ -1,6 +1,8 @@ -package org.dromara.system.controller; +package com.wzj.soopin.im.controller; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.wzj.soopin.im.domain.SysMessage; +import com.wzj.soopin.im.service.ISysMessageService; import io.swagger.v3.oas.annotations.tags.Tag; import jakarta.validation.constraints.NotEmpty; import jakarta.validation.constraints.NotNull; @@ -9,12 +11,10 @@ import org.dromara.common.core.domain.R; import org.dromara.common.log.annotation.Log; import org.dromara.common.log.enums.BusinessType; import org.dromara.common.web.core.BaseController; -import org.dromara.system.domain.SysMessage; -import org.dromara.system.domain.vo.SysMessageVo; -import org.dromara.system.service.ISysMessageService; -import org.dromara.system.service.ISysMessageTemplateService; +import com.wzj.soopin.im.domain.vo.SysMessageVo; +import com.wzj.soopin.im.service.ISysMessageTemplateService; import org.dromara.system.service.ISysUserService; -import org.dromara.system.service.impl.SystemMessageUserService; +import com.wzj.soopin.im.service.impl.SystemMessageUserService; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; @@ -28,8 +28,8 @@ import static org.dromara.common.satoken.utils.LoginHelper.getUserId; @Validated @RestController @RequiredArgsConstructor -@RequestMapping("/system/message/task") -public class SysMessageUserController extends BaseController { +@RequestMapping("/im/message/task") +public class IMMessageUserController extends BaseController { private final ISysMessageService messageService; private final ISysUserService userService; diff --git a/ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/converter/SysMessageConvert.java b/ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/converter/SysMessageConvert.java similarity index 52% rename from ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/converter/SysMessageConvert.java rename to ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/converter/SysMessageConvert.java index 2ac4be07e..e99e63d9c 100644 --- a/ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/converter/SysMessageConvert.java +++ b/ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/converter/SysMessageConvert.java @@ -1,9 +1,9 @@ -package org.dromara.system.converter; +package com.wzj.soopin.im.converter; +import com.wzj.soopin.im.domain.SysMessage; +import com.wzj.soopin.im.domain.bo.SysMessageBo; import org.dromara.common.web.core.BaseConverter; -import org.dromara.system.domain.SysMessage; -import org.dromara.system.domain.bo.SysMessageBo; -import org.dromara.system.domain.vo.SysMessageVo; +import com.wzj.soopin.im.domain.vo.SysMessageVo; import org.mapstruct.Mapper; /** @@ -12,6 +12,6 @@ import org.mapstruct.Mapper; * @author ruoyi */ @Mapper(componentModel = "spring") -public interface SysMessageConvert extends BaseConverter { +public interface SysMessageConvert extends BaseConverter { } diff --git a/ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/converter/SysMessageTemplateConvert.java b/ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/converter/SysMessageTemplateConvert.java new file mode 100644 index 000000000..d21e5d9d1 --- /dev/null +++ b/ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/converter/SysMessageTemplateConvert.java @@ -0,0 +1,17 @@ +package com.wzj.soopin.im.converter; + +import com.wzj.soopin.im.domain.SysMessageTemplate; +import com.wzj.soopin.im.domain.bo.SysMessageTemplateBo; +import org.dromara.common.web.core.BaseConverter; +import com.wzj.soopin.im.domain.vo.SysMessageTemplateVo; +import org.mapstruct.Mapper; + +/** + * 消息对象转换器 + * + * @author ruoyi + */ +@Mapper(componentModel = "spring") +public interface SysMessageTemplateConvert extends BaseConverter { + +} diff --git a/ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/domain/MessageTemplateType.java b/ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/domain/MessageTemplateType.java similarity index 95% rename from ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/domain/MessageTemplateType.java rename to ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/domain/MessageTemplateType.java index 613d30d8a..f2fdaa490 100644 --- a/ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/domain/MessageTemplateType.java +++ b/ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/domain/MessageTemplateType.java @@ -1,4 +1,4 @@ -package org.dromara.system.domain; +package com.wzj.soopin.im.domain; /** * 消息模板类型编号常量 @@ -13,4 +13,4 @@ public class MessageTemplateType { public static final String ORDER_NOTICE = "8"; // 订单通知 public static final String VERIFY_SUCCESS = "9"; // 核销成功 public static final String VERIFY_FAIL = "10"; // 核销失败 -} \ No newline at end of file +} diff --git a/ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/domain/SysMessage.java b/ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/domain/SysMessage.java similarity index 98% rename from ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/domain/SysMessage.java rename to ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/domain/SysMessage.java index d47bbcd6c..064b11e2c 100644 --- a/ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/domain/SysMessage.java +++ b/ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/domain/SysMessage.java @@ -1,4 +1,4 @@ -package org.dromara.system.domain; +package com.wzj.soopin.im.domain; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; diff --git a/ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/domain/SysMessageTemplate.java b/ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/domain/SysMessageTemplate.java similarity index 97% rename from ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/domain/SysMessageTemplate.java rename to ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/domain/SysMessageTemplate.java index fcd9ad467..077d69b84 100644 --- a/ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/domain/SysMessageTemplate.java +++ b/ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/domain/SysMessageTemplate.java @@ -1,4 +1,4 @@ -package org.dromara.system.domain; +package com.wzj.soopin.im.domain; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; diff --git a/ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/domain/SysMessageUser.java b/ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/domain/SysMessageUser.java similarity index 96% rename from ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/domain/SysMessageUser.java rename to ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/domain/SysMessageUser.java index bfe2cd3ff..d053adf54 100644 --- a/ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/domain/SysMessageUser.java +++ b/ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/domain/SysMessageUser.java @@ -1,4 +1,4 @@ -package org.dromara.system.domain; +package com.wzj.soopin.im.domain; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; diff --git a/ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/domain/bo/SysMessageBo.java b/ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/domain/bo/SysMessageBo.java similarity index 91% rename from ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/domain/bo/SysMessageBo.java rename to ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/domain/bo/SysMessageBo.java index 0be169556..7a4035f1c 100644 --- a/ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/domain/bo/SysMessageBo.java +++ b/ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/domain/bo/SysMessageBo.java @@ -1,6 +1,5 @@ -package org.dromara.system.domain.bo; +package com.wzj.soopin.im.domain.bo; -import cn.hutool.core.map.MapWrapper; import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; import com.alibaba.excel.annotation.ExcelProperty; import jakarta.validation.constraints.NotBlank; @@ -9,11 +8,9 @@ import jakarta.validation.constraints.Size; import lombok.Data; import lombok.EqualsAndHashCode; import org.dromara.common.core.domain.BaseBO; -import org.dromara.common.core.domain.model.BaseAudit; import org.dromara.common.core.validate.AddGroup; import org.dromara.common.core.validate.EditGroup; -import org.dromara.common.mybatis.core.domain.BaseEntity; -import org.dromara.system.domain.SysMessage; +import com.wzj.soopin.im.domain.SysMessage; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.StringUtils; import com.fasterxml.jackson.annotation.JsonFormat; @@ -24,8 +21,7 @@ import java.util.HashMap; import java.util.List; import java.util.Map; -import com.baomidou.mybatisplus.annotation.TableField; -import org.dromara.system.domain.SysMessageTemplate; +import com.wzj.soopin.im.domain.SysMessageTemplate; /** * 消息业务对象 diff --git a/ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/domain/bo/SysMessageTemplateBo.java b/ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/domain/bo/SysMessageTemplateBo.java similarity index 91% rename from ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/domain/bo/SysMessageTemplateBo.java rename to ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/domain/bo/SysMessageTemplateBo.java index 53b841e6d..f81a1bb0c 100644 --- a/ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/domain/bo/SysMessageTemplateBo.java +++ b/ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/domain/bo/SysMessageTemplateBo.java @@ -1,17 +1,14 @@ -package org.dromara.system.domain.bo; +package com.wzj.soopin.im.domain.bo; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import io.github.linpeilie.annotations.AutoMapper; import lombok.Data; import lombok.EqualsAndHashCode; import lombok.NoArgsConstructor; import org.dromara.common.core.domain.BaseBO; -import org.dromara.common.core.domain.model.BaseAudit; import org.dromara.common.core.utils.StringUtils; import org.dromara.common.core.validate.AddGroup; import org.dromara.common.core.validate.EditGroup; -import org.dromara.common.mybatis.core.domain.BaseEntity; -import org.dromara.system.domain.SysMessageTemplate; +import com.wzj.soopin.im.domain.SysMessageTemplate; import jakarta.validation.constraints.NotBlank; import jakarta.validation.constraints.NotNull; diff --git a/ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/domain/event/MessageEvent.java b/ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/domain/event/MessageEvent.java similarity index 93% rename from ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/domain/event/MessageEvent.java rename to ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/domain/event/MessageEvent.java index 97cf2e934..ce595b655 100644 --- a/ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/domain/event/MessageEvent.java +++ b/ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/domain/event/MessageEvent.java @@ -1,7 +1,7 @@ -package org.dromara.system.domain.event; +package com.wzj.soopin.im.domain.event; import lombok.Getter; -import org.dromara.system.domain.vo.SysMessageVo; +import com.wzj.soopin.im.domain.vo.SysMessageVo; import org.springframework.context.ApplicationEvent; /** @@ -25,7 +25,7 @@ public class MessageEvent extends ApplicationEvent { this.userId = userId; this.userIdStr = userId != null ? String.valueOf(userId) : null; } - + /** * 使用 String 类型用户 ID 创建消息事件 */ @@ -33,7 +33,7 @@ public class MessageEvent extends ApplicationEvent { super(source); this.message = message; this.userIdStr = userIdStr; - + // 尝试转换为 Long 类型 Long parsedUserId = null; try { @@ -45,10 +45,10 @@ public class MessageEvent extends ApplicationEvent { } this.userId = parsedUserId; } - + /** * 创建 MessageEvent 实例(支持 String 类型用户ID) - * + * * @param source 事件源 * @param message 消息对象 * @param userIdStr 用户ID (String类型) @@ -57,4 +57,4 @@ public class MessageEvent extends ApplicationEvent { public static MessageEvent createWithStringUserId(Object source, SysMessageVo message, String userIdStr) { return new MessageEvent(source, message, userIdStr); } -} \ No newline at end of file +} diff --git a/ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/domain/vo/SysMessageTemplateVo.java b/ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/domain/vo/SysMessageTemplateVo.java similarity index 78% rename from ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/domain/vo/SysMessageTemplateVo.java rename to ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/domain/vo/SysMessageTemplateVo.java index 8249170ae..1ff4b88af 100644 --- a/ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/domain/vo/SysMessageTemplateVo.java +++ b/ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/domain/vo/SysMessageTemplateVo.java @@ -1,12 +1,6 @@ -package org.dromara.system.domain.vo; +package com.wzj.soopin.im.domain.vo; -import com.baomidou.mybatisplus.annotation.TableId; -import io.github.linpeilie.annotations.AutoMapper; import lombok.Data; -import lombok.EqualsAndHashCode; -import org.dromara.common.tenant.core.TenantEntity; -import org.dromara.system.domain.SysMessage; -import org.dromara.system.domain.SysMessageTemplate; import java.io.Serializable; import java.util.Date; diff --git a/ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/domain/vo/SysMessageUserVo.java b/ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/domain/vo/SysMessageUserVo.java similarity index 94% rename from ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/domain/vo/SysMessageUserVo.java rename to ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/domain/vo/SysMessageUserVo.java index 635c1beb1..8ac7f51bf 100644 --- a/ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/domain/vo/SysMessageUserVo.java +++ b/ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/domain/vo/SysMessageUserVo.java @@ -1,4 +1,4 @@ -package org.dromara.system.domain.vo; +package com.wzj.soopin.im.domain.vo; import lombok.Data; import lombok.EqualsAndHashCode; diff --git a/ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/domain/vo/SysMessageVo.java b/ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/domain/vo/SysMessageVo.java similarity index 91% rename from ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/domain/vo/SysMessageVo.java rename to ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/domain/vo/SysMessageVo.java index 97f0ecc66..82c447ed5 100644 --- a/ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/domain/vo/SysMessageVo.java +++ b/ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/domain/vo/SysMessageVo.java @@ -1,17 +1,14 @@ -package org.dromara.system.domain.vo; +package com.wzj.soopin.im.domain.vo; import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; import com.alibaba.excel.annotation.ExcelProperty; +import com.wzj.soopin.im.domain.SysMessage; import io.github.linpeilie.annotations.AutoMapper; import lombok.Data; -import org.dromara.system.domain - .SysMessage; -import org.dromara.system.domain.SysNotice; import java.io.Serial; import java.io.Serializable; import java.util.Date; -import java.util.HashMap; import java.util.Map; /** diff --git a/ruoyi-modules/ruoyi-im/src/main/java/org/dromara/im/enums/MessageActionEnum.java b/ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/enums/MessageActionEnum.java similarity index 98% rename from ruoyi-modules/ruoyi-im/src/main/java/org/dromara/im/enums/MessageActionEnum.java rename to ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/enums/MessageActionEnum.java index 2d3f08f1e..fb55066b0 100644 --- a/ruoyi-modules/ruoyi-im/src/main/java/org/dromara/im/enums/MessageActionEnum.java +++ b/ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/enums/MessageActionEnum.java @@ -1,4 +1,4 @@ -package org.dromara.im.enums; +package com.wzj.soopin.im.enums; public enum MessageActionEnum { diff --git a/ruoyi-modules/ruoyi-im/src/main/java/org/dromara/im/enums/MessageScopeEnum.java b/ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/enums/MessageScopeEnum.java similarity index 94% rename from ruoyi-modules/ruoyi-im/src/main/java/org/dromara/im/enums/MessageScopeEnum.java rename to ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/enums/MessageScopeEnum.java index 98494c561..d5e4c8f66 100644 --- a/ruoyi-modules/ruoyi-im/src/main/java/org/dromara/im/enums/MessageScopeEnum.java +++ b/ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/enums/MessageScopeEnum.java @@ -1,4 +1,4 @@ -package org.dromara.im.enums; +package com.wzj.soopin.im.enums; public enum MessageScopeEnum { /** diff --git a/ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/event/MessageEventListener.java b/ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/event/MessageEventListener.java similarity index 95% rename from ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/event/MessageEventListener.java rename to ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/event/MessageEventListener.java index 9ab0ae719..fb23706c9 100644 --- a/ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/event/MessageEventListener.java +++ b/ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/event/MessageEventListener.java @@ -1,17 +1,16 @@ -package org.dromara.system.event; +package com.wzj.soopin.im.event; import cn.hutool.json.JSONObject; -import com.google.gson.JsonObject; import lombok.extern.slf4j.Slf4j; import org.dromara.common.core.utils.StringUtils; import org.dromara.common.json.utils.JsonUtils; -import org.dromara.system.consumer.MessageRocketMQConsumer; -import org.dromara.system.domain.event.MessageEvent; -import org.dromara.system.service.IRocketMQService; -import org.dromara.system.service.ITencentIMService; +import com.wzj.soopin.im.consumer.MessageRocketMQConsumer; +import com.wzj.soopin.im.domain.event.MessageEvent; +import org.dromara.common.mq.service.IRocketMQService; +import com.wzj.soopin.im.service.ITencentIMService; import org.dromara.system.websocket.MessageWebSocketServer; -import org.dromara.system.service.impl.TencentIMServiceImpl; +import com.wzj.soopin.im.service.impl.TencentIMServiceImpl; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.context.event.EventListener; diff --git a/ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/mapper/SysMessageMapper.java b/ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/mapper/SysMessageMapper.java similarity index 78% rename from ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/mapper/SysMessageMapper.java rename to ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/mapper/SysMessageMapper.java index 03bcd9c77..7ad721ac9 100644 --- a/ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/mapper/SysMessageMapper.java +++ b/ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/mapper/SysMessageMapper.java @@ -1,9 +1,9 @@ -package org.dromara.system.mapper; +package com.wzj.soopin.im.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; -import org.dromara.system.domain.SysMessage; -import org.dromara.system.domain.vo.SysMessageVo; +import com.wzj.soopin.im.domain.SysMessage; +import com.wzj.soopin.im.domain.vo.SysMessageVo; /** * 消息Mapper接口 @@ -20,4 +20,4 @@ public interface SysMessageMapper extends BaseMapper { * @return 消息分页列表 */ Page selectPageUnreadMessages(Page page, Long userId); -} \ No newline at end of file +} diff --git a/ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/mapper/SysMessageTemplateMapper.java b/ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/mapper/SysMessageTemplateMapper.java similarity index 70% rename from ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/mapper/SysMessageTemplateMapper.java rename to ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/mapper/SysMessageTemplateMapper.java index 19c70f7c3..839f3f514 100644 --- a/ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/mapper/SysMessageTemplateMapper.java +++ b/ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/mapper/SysMessageTemplateMapper.java @@ -1,8 +1,8 @@ -package org.dromara.system.mapper; +package com.wzj.soopin.im.mapper; import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; -import org.dromara.system.domain.SysMessageTemplate; -import org.dromara.system.domain.vo.SysMessageTemplateVo; +import com.wzj.soopin.im.domain.SysMessageTemplate; +import com.wzj.soopin.im.domain.vo.SysMessageTemplateVo; /** * 消息模板Mapper接口 @@ -15,4 +15,4 @@ public interface SysMessageTemplateMapper extends BaseMapperPlus { * @param userIds 用户ID列表 (String类型) * @return 结果 */ - int sendMessageToUsers(SysMessage message, SysMessageTemplate template,List userIds); + int sendMessageToUsers(SysMessage message, SysMessageTemplate template, List userIds); // /** // * diff --git a/ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/service/ISysMessageTemplateService.java b/ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/service/ISysMessageTemplateService.java similarity index 89% rename from ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/service/ISysMessageTemplateService.java rename to ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/service/ISysMessageTemplateService.java index 26903369d..37f65341a 100644 --- a/ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/service/ISysMessageTemplateService.java +++ b/ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/service/ISysMessageTemplateService.java @@ -1,11 +1,11 @@ -package org.dromara.system.service; +package com.wzj.soopin.im.service; import com.baomidou.mybatisplus.extension.service.IService; +import com.wzj.soopin.im.domain.SysMessageTemplate; +import com.wzj.soopin.im.domain.bo.SysMessageTemplateBo; import org.dromara.common.mybatis.core.page.PageQuery; import org.dromara.common.mybatis.core.page.TableDataInfo; -import org.dromara.system.domain.SysMessageTemplate; -import org.dromara.system.domain.bo.SysMessageTemplateBo; -import org.dromara.system.domain.vo.SysMessageTemplateVo; +import com.wzj.soopin.im.domain.vo.SysMessageTemplateVo; import java.util.List; diff --git a/ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/service/ISystemMessageUserService.java b/ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/service/ISystemMessageUserService.java new file mode 100644 index 000000000..0672501c8 --- /dev/null +++ b/ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/service/ISystemMessageUserService.java @@ -0,0 +1,4 @@ +package com.wzj.soopin.im.service; + +public interface ISystemMessageUserService { +} diff --git a/ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/service/ITencentIMService.java b/ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/service/ITencentIMService.java similarity index 95% rename from ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/service/ITencentIMService.java rename to ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/service/ITencentIMService.java index 5c9f226be..b7c1fda87 100644 --- a/ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/service/ITencentIMService.java +++ b/ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/service/ITencentIMService.java @@ -1,8 +1,8 @@ -package org.dromara.system.service; +package com.wzj.soopin.im.service; import java.util.List; import java.util.Map; -import org.dromara.system.service.impl.TencentIMServiceImpl; +import com.wzj.soopin.im.service.impl.TencentIMServiceImpl; /** * 腾讯IM服务接口 diff --git a/ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/service/impl/MessageWebSocketServiceImpl.java b/ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/service/impl/MessageWebSocketServiceImpl.java similarity index 83% rename from ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/service/impl/MessageWebSocketServiceImpl.java rename to ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/service/impl/MessageWebSocketServiceImpl.java index 9af04a16c..2be5272b3 100644 --- a/ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/service/impl/MessageWebSocketServiceImpl.java +++ b/ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/service/impl/MessageWebSocketServiceImpl.java @@ -1,9 +1,9 @@ -package org.dromara.system.service.impl; +package com.wzj.soopin.im.service.impl; +import com.wzj.soopin.im.domain.vo.SysMessageVo; +import com.wzj.soopin.im.service.IMessageWebSocketService; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; -import org.dromara.system.domain.vo.SysMessageVo; -import org.dromara.system.service.IMessageWebSocketService; import org.dromara.system.websocket.MessageWebSocketServer; import org.springframework.stereotype.Service; diff --git a/ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/service/impl/SysMessageServiceImpl.java b/ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/service/impl/SysMessageServiceImpl.java similarity index 96% rename from ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/service/impl/SysMessageServiceImpl.java rename to ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/service/impl/SysMessageServiceImpl.java index 7515d88a0..d6694937a 100644 --- a/ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/service/impl/SysMessageServiceImpl.java +++ b/ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/service/impl/SysMessageServiceImpl.java @@ -1,12 +1,22 @@ -package org.dromara.system.service.impl; +package com.wzj.soopin.im.service.impl; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.wzj.soopin.content.domain.po.Vlog; import com.wzj.soopin.content.service.VlogService; -import com.wzj.soopin.member.domain.po.Member; +import com.wzj.soopin.im.converter.SysMessageConvert; +import com.wzj.soopin.im.converter.SysMessageTemplateConvert; +import com.wzj.soopin.im.domain.SysMessage; +import com.wzj.soopin.im.domain.SysMessageTemplate; +import com.wzj.soopin.im.domain.SysMessageUser; +import com.wzj.soopin.im.domain.bo.SysMessageBo; +import com.wzj.soopin.im.domain.event.MessageEvent; +import com.wzj.soopin.im.domain.vo.SysMessageVo; +import com.wzj.soopin.im.mapper.SysMessageMapper; +import com.wzj.soopin.im.mapper.SysMessageUserMapper; +import com.wzj.soopin.im.service.ISysMessageService; +import com.wzj.soopin.im.service.ISysMessageTemplateService; import com.wzj.soopin.member.service.IMemberService; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; @@ -17,20 +27,8 @@ import org.dromara.common.core.utils.MapstructUtils; import org.dromara.common.core.utils.StringUtils; import org.dromara.common.mybatis.core.page.PageQuery; import org.dromara.common.mybatis.core.page.TableDataInfo; -import org.dromara.im.enums.MessageActionEnum; -import org.dromara.system.converter.SysMessageConvert; -import org.dromara.system.converter.SysMessageTemplateConvert; -import org.dromara.system.domain.SysMessage; -import org.dromara.system.domain.SysMessageTemplate; -import org.dromara.system.domain.SysMessageUser; -import org.dromara.system.domain.bo.SysMessageBo; -import org.dromara.system.domain.event.MessageEvent; -import org.dromara.system.domain.vo.SysMessageVo; +import com.wzj.soopin.im.enums.MessageActionEnum; import org.dromara.system.domain.vo.SysUserVo; -import org.dromara.system.mapper.SysMessageMapper; -import org.dromara.system.mapper.SysMessageUserMapper; -import org.dromara.system.service.ISysMessageService; -import org.dromara.system.service.ISysMessageTemplateService; import org.dromara.system.service.ISysTenantService; import org.dromara.system.service.ISysUserService; import org.springframework.context.ApplicationEventPublisher; diff --git a/ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/service/impl/SysMessageTemplateServiceImpl.java b/ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/service/impl/SysMessageTemplateServiceImpl.java similarity index 90% rename from ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/service/impl/SysMessageTemplateServiceImpl.java rename to ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/service/impl/SysMessageTemplateServiceImpl.java index 3bec61255..cf98d70ac 100644 --- a/ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/service/impl/SysMessageTemplateServiceImpl.java +++ b/ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/service/impl/SysMessageTemplateServiceImpl.java @@ -1,18 +1,18 @@ -package org.dromara.system.service.impl; +package com.wzj.soopin.im.service.impl; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.wzj.soopin.im.domain.SysMessageTemplate; +import com.wzj.soopin.im.domain.bo.SysMessageTemplateBo; +import com.wzj.soopin.im.mapper.SysMessageTemplateMapper; import lombok.RequiredArgsConstructor; import org.dromara.common.core.utils.MapstructUtils; import org.dromara.common.core.utils.StringUtils; import org.dromara.common.mybatis.core.page.PageQuery; import org.dromara.common.mybatis.core.page.TableDataInfo; -import org.dromara.system.domain.SysMessageTemplate; -import org.dromara.system.domain.bo.SysMessageTemplateBo; -import org.dromara.system.domain.vo.SysMessageTemplateVo; -import org.dromara.system.mapper.SysMessageTemplateMapper; -import org.dromara.system.service.ISysMessageTemplateService; +import com.wzj.soopin.im.domain.vo.SysMessageTemplateVo; +import com.wzj.soopin.im.service.ISysMessageTemplateService; import org.springframework.stereotype.Service; import java.util.List; diff --git a/ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/service/impl/SystemMessageUserService.java b/ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/service/impl/SystemMessageUserService.java new file mode 100644 index 000000000..9bc5a5636 --- /dev/null +++ b/ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/service/impl/SystemMessageUserService.java @@ -0,0 +1,16 @@ +package com.wzj.soopin.im.service.impl; + +import com.wzj.soopin.im.service.ISystemMessageUserService; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Service; + +@Service +@RequiredArgsConstructor +@Slf4j +public class SystemMessageUserService implements ISystemMessageUserService { + + + + +} diff --git a/ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/service/impl/TencentIMServiceImpl.java b/ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/service/impl/TencentIMServiceImpl.java similarity index 99% rename from ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/service/impl/TencentIMServiceImpl.java rename to ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/service/impl/TencentIMServiceImpl.java index 4be3abefa..36f96e25f 100644 --- a/ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/service/impl/TencentIMServiceImpl.java +++ b/ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/service/impl/TencentIMServiceImpl.java @@ -1,11 +1,11 @@ -package org.dromara.system.service.impl; +package com.wzj.soopin.im.service.impl; import cn.hutool.json.JSONArray; import cn.hutool.json.JSONObject; +import com.wzj.soopin.im.service.ITencentIMService; +import com.wzj.soopin.im.util.TLSSigAPIv2; import jakarta.annotation.PostConstruct; import lombok.extern.slf4j.Slf4j; -import org.dromara.system.service.ITencentIMService; -import org.dromara.system.util.TLSSigAPIv2; import org.springframework.beans.factory.annotation.Value; import org.springframework.http.*; import org.springframework.stereotype.Service; diff --git a/ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/util/TLSSigAPIv2.java b/ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/util/TLSSigAPIv2.java similarity index 99% rename from ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/util/TLSSigAPIv2.java rename to ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/util/TLSSigAPIv2.java index 083d69b4c..3270cb71f 100644 --- a/ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/util/TLSSigAPIv2.java +++ b/ruoyi-modules/ruoyi-im/src/main/java/com/wzj/soopin/im/util/TLSSigAPIv2.java @@ -1,4 +1,4 @@ -package org.dromara.system.util; +package com.wzj.soopin.im.util; import cn.hutool.json.JSONException; diff --git a/ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/converter/SysMessageTemplateConvert.java b/ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/converter/SysMessageTemplateConvert.java deleted file mode 100644 index 5ac9c1fdc..000000000 --- a/ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/converter/SysMessageTemplateConvert.java +++ /dev/null @@ -1,20 +0,0 @@ -package org.dromara.system.converter; - -import org.dromara.common.web.core.BaseConverter; -import org.dromara.system.domain.SysMessage; -import org.dromara.system.domain.SysMessageTemplate; -import org.dromara.system.domain.bo.SysMessageBo; -import org.dromara.system.domain.bo.SysMessageTemplateBo; -import org.dromara.system.domain.vo.SysMessageTemplateVo; -import org.dromara.system.domain.vo.SysMessageVo; -import org.mapstruct.Mapper; - -/** - * 消息对象转换器 - * - * @author ruoyi - */ -@Mapper(componentModel = "spring") -public interface SysMessageTemplateConvert extends BaseConverter { - -} diff --git a/ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/service/ISystemMessageUserService.java b/ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/service/ISystemMessageUserService.java deleted file mode 100644 index 13723bf83..000000000 --- a/ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/service/ISystemMessageUserService.java +++ /dev/null @@ -1,6 +0,0 @@ -package org.dromara.system.service; - -import org.dromara.system.domain.bo.SysMessageBo; - -public interface ISystemMessageUserService { -} diff --git a/ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/service/impl/SystemMessageUserService.java b/ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/service/impl/SystemMessageUserService.java deleted file mode 100644 index 8bf655d6f..000000000 --- a/ruoyi-modules/ruoyi-im/src/main/java/org/dromara/system/service/impl/SystemMessageUserService.java +++ /dev/null @@ -1,23 +0,0 @@ -package org.dromara.system.service.impl; - -import lombok.RequiredArgsConstructor; -import lombok.extern.slf4j.Slf4j; -import org.dromara.common.core.exception.ServiceException; -import org.dromara.system.domain.SysMessageTemplate; -import org.dromara.system.domain.bo.SysMessageBo; -import org.dromara.system.domain.vo.SysUserVo; -import org.dromara.system.service.*; -import org.springframework.stereotype.Service; - -import java.util.ArrayList; -import java.util.List; - -@Service -@RequiredArgsConstructor -@Slf4j -public class SystemMessageUserService implements ISystemMessageUserService { - - - - -} diff --git a/ruoyi-modules/ruoyi-im/src/main/resources/mapper.system/SysMessageMapper.xml b/ruoyi-modules/ruoyi-im/src/main/resources/mapper.system/SysMessageMapper.xml index bc5135bf9..4794b9b91 100644 --- a/ruoyi-modules/ruoyi-im/src/main/resources/mapper.system/SysMessageMapper.xml +++ b/ruoyi-modules/ruoyi-im/src/main/resources/mapper.system/SysMessageMapper.xml @@ -2,9 +2,9 @@ - + - + diff --git a/ruoyi-modules/ruoyi-im/src/main/resources/mapper.system/SysMessageUserMapper.xml b/ruoyi-modules/ruoyi-im/src/main/resources/mapper.system/SysMessageUserMapper.xml index c89c93e52..adf367b03 100644 --- a/ruoyi-modules/ruoyi-im/src/main/resources/mapper.system/SysMessageUserMapper.xml +++ b/ruoyi-modules/ruoyi-im/src/main/resources/mapper.system/SysMessageUserMapper.xml @@ -2,9 +2,9 @@ - + - + diff --git a/ruoyi-modules/ruoyi-member/pom.xml b/ruoyi-modules/ruoyi-member/pom.xml index acc13c044..4fb8823ce 100644 --- a/ruoyi-modules/ruoyi-member/pom.xml +++ b/ruoyi-modules/ruoyi-member/pom.xml @@ -29,6 +29,10 @@ org.dromara ruoyi-common-mybatis + + org.dromara + ruoyi-common-mq + org.dromara diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/service/impl/FansServiceImpl.java b/ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/service/impl/FansServiceImpl.java index f0a4c17d3..5c6af8676 100644 --- a/ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/service/impl/FansServiceImpl.java +++ b/ruoyi-modules/ruoyi-member/src/main/java/com/wzj/soopin/member/service/impl/FansServiceImpl.java @@ -1,5 +1,6 @@ package com.wzj.soopin.member.service.impl; +import cn.hutool.core.util.IdUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; @@ -15,11 +16,15 @@ import lombok.extern.slf4j.Slf4j; import org.dromara.common.core.constant.CacheConstants; import org.dromara.common.core.enums.YesOrNo; import org.dromara.common.core.utils.StringUtils; +import org.dromara.common.mq.domain.MQMessage; +import org.dromara.common.mq.enums.MessageActionEnum; +import org.dromara.common.mq.utils.MqUtil; import org.dromara.common.redis.redis.RedisCache; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import java.time.LocalDateTime; import java.util.HashMap; import java.util.Map; @@ -38,6 +43,9 @@ public class FansServiceImpl extends ServiceImpl implements IF @Override public void doFollow(Long myId, Long vloggerId) { // 幂等性校验:已存在则不再插入 + + + Fans existing = queryFansRelationship(myId, vloggerId); if (existing != null) { return; @@ -64,17 +72,17 @@ public class FansServiceImpl extends ServiceImpl implements IF Member vlogger = memberService.getById(vloggerId); if (follower != null && vlogger != null && !myId.equals(vloggerId)) { // 新版:使用模板类型编号和参数 -// Map params = new HashMap<>(); -// params.put("followerNickname", follower.getNickname() == null ? "" : follower.getNickname()); -// params.put("vloggerNickname", vlogger.getNickname() == null ? "" : vlogger.getNickname()); -// SysMessageBo messageBo = new SysMessageBo(); -// // 关注类型编号 -// messageBo.setTemplateType(org.dromara.system.domain.MessageTemplateType.FOLLOW); -// messageBo.setTemplateParams(params); -// messageBo.setSenderId(myId); -// // 补充:设置消息标题,防止title为null -// messageBo.setTitle("关注通知"); -// sysMessageService.sendMessageToUser(messageBo, vloggerId); + Map params = new HashMap<>(); + params.put("followerNickname", follower.getNickname() == null ? "" : follower.getNickname()); + params.put("vloggerNickname", vlogger.getNickname() == null ? "" : vlogger.getNickname()); + MQMessage message = MQMessage.builder() + .messageType("follow") + .data(params) + .source("member") + .build(); + // 关注消息 + MqUtil.sendMessage(MessageActionEnum.NEW_FOUCS.name(), message); + } } diff --git a/ruoyi-modules/ruoyi-system/pom.xml b/ruoyi-modules/ruoyi-system/pom.xml index 1cc01b5b3..5f4e5edf2 100644 --- a/ruoyi-modules/ruoyi-system/pom.xml +++ b/ruoyi-modules/ruoyi-system/pom.xml @@ -141,25 +141,7 @@ 1.4.1 - - - org.apache.rocketmq - rocketmq-spring-boot-starter - 2.2.3 - - - - org.springframework - spring-messaging - - - - - com.fasterxml.jackson.core - jackson-databind - 2.15.2 - diff --git a/ruoyi-modules/ruoyi-system/src/main/resources/META-INF/spring.factories b/ruoyi-modules/ruoyi-system/src/main/resources/META-INF/spring.factories index a13a85b2b..0a2128054 100644 --- a/ruoyi-modules/ruoyi-system/src/main/resources/META-INF/spring.factories +++ b/ruoyi-modules/ruoyi-system/src/main/resources/META-INF/spring.factories @@ -1,2 +1,2 @@ org.springframework.boot.autoconfigure.EnableAutoConfiguration=\ - org.dromara.system.config.RocketMQConfiguration \ No newline at end of file + org.dromara.common.mq.config.RocketMQConfiguration diff --git a/ruoyi-modules/ruoyi-system/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports b/ruoyi-modules/ruoyi-system/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports index ea40cbdfa..6008371f1 100644 --- a/ruoyi-modules/ruoyi-system/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports +++ b/ruoyi-modules/ruoyi-system/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports @@ -1 +1 @@ -org.dromara.system.config.RocketMQConfig \ No newline at end of file +org.dromara.common.mq.config.RocketMQConfig