diff --git a/bnyer-common/bnyer-common-rocketmq/src/main/java/com/bnyer/common/rocketmq/constant/RocketMqRepeatConstant.java b/bnyer-common/bnyer-common-rocketmq/src/main/java/com/bnyer/common/rocketmq/constant/RocketMqRepeatConstant.java index ec24b49..1802dbe 100644 --- a/bnyer-common/bnyer-common-rocketmq/src/main/java/com/bnyer/common/rocketmq/constant/RocketMqRepeatConstant.java +++ b/bnyer-common/bnyer-common-rocketmq/src/main/java/com/bnyer/common/rocketmq/constant/RocketMqRepeatConstant.java @@ -20,4 +20,19 @@ public class RocketMqRepeatConstant { */ public final static String REPEAT_REDIS_KEY_PREFIX = "RepeatMessage:"; + /** + * 订单服务消息id前缀 + */ + public final static String MESSAGE_ID_PREFIX_ORDER = "order-"; + + /** + * 支付服务消息id前缀 + */ + public final static String MESSAGE_ID_PREFIX_PAY = "pay-"; + + /** + * 图片服务消息id前缀 + */ + public final static String MESSAGE_ID_PREFIX_IMG = "img-"; + } diff --git a/bnyer-common/bnyer-common-rocketmq/src/main/java/com/bnyer/common/rocketmq/template/RocketMQEnhanceTemplate.java b/bnyer-common/bnyer-common-rocketmq/src/main/java/com/bnyer/common/rocketmq/template/RocketMQEnhanceTemplate.java index 4c0483e..8c184b8 100644 --- a/bnyer-common/bnyer-common-rocketmq/src/main/java/com/bnyer/common/rocketmq/template/RocketMQEnhanceTemplate.java +++ b/bnyer-common/bnyer-common-rocketmq/src/main/java/com/bnyer/common/rocketmq/template/RocketMQEnhanceTemplate.java @@ -49,7 +49,9 @@ public class RocketMQEnhanceTemplate { */ public String reBuildTopic(String topic) { if(rocketEnhanceProperties.isEnabledIsolation() && StringUtils.isNoneBlank(rocketEnhanceProperties.getEnvironment())){ - return topic +"-" + rocketEnhanceProperties.getEnvironment(); + if (!topic.endsWith(rocketEnhanceProperties.getEnvironment())){ + return topic +"-" + rocketEnhanceProperties.getEnvironment(); + } } return topic; } diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/ImgMqMessageRecordServiceImpl.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/ImgMqMessageRecordServiceImpl.java index 47a65e3..bb8de81 100644 --- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/ImgMqMessageRecordServiceImpl.java +++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/ImgMqMessageRecordServiceImpl.java @@ -1,11 +1,13 @@ package com.bnyer.img.service.impl; +import cn.hutool.core.util.IdUtil; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import com.bnyer.common.core.domain.ImgMqMessageRecord; import com.bnyer.common.core.enums.EnumMessageStatus; import com.bnyer.common.core.utils.uuid.IdUtils; import com.bnyer.common.rocketmq.constant.RocketMqConstant; +import com.bnyer.common.rocketmq.constant.RocketMqRepeatConstant; import com.bnyer.common.rocketmq.constant.RocketMqTopic; import com.bnyer.common.rocketmq.domain.MqRecordMessage; import com.bnyer.common.rocketmq.template.RocketMQEnhanceTemplate; @@ -68,7 +70,7 @@ public class ImgMqMessageRecordServiceImpl implements ImgMqMessageRecordService mqRecordMessage.setTopic(buildTopic); mqRecordMessage.setTag(tag); mqRecordMessage.setConsumerGroupName(buildTopic); - mqRecordMessage.setMessageKey(IdUtils.randomUUID()); + mqRecordMessage.setMessageKey(RocketMqRepeatConstant.MESSAGE_ID_PREFIX_IMG + IdUtil.getSnowflakeNextIdStr()); mqRecordMessage.setContent(JSON.toJSONString(message)); mqRecordMessage.setSource(applicationName); mqRecordMessage.setReturnTopic(RocketMqTopic.IMG_RETURN_MSG_TOPIC); @@ -175,7 +177,7 @@ public class ImgMqMessageRecordServiceImpl implements ImgMqMessageRecordService imgMqMessageRecord.setTopic(message.getTopic()); imgMqMessageRecord.setTag(message.getTag()); imgMqMessageRecord.setCreateTime(new Date()); - imgMqMessageRecord.setMessageKey(IdUtils.randomUUID()); + imgMqMessageRecord.setMessageKey(message.getMessageKey()); imgMqMessageRecord.setContent(JSON.toJSONString(message)); imgMqMessageRecordMapper.insert(imgMqMessageRecord); return imgMqMessageRecord; diff --git a/bnyer-services/bnyer-order/src/main/java/com/bnyer/order/service/impl/OrderMqMessageRecordServiceImpl.java b/bnyer-services/bnyer-order/src/main/java/com/bnyer/order/service/impl/OrderMqMessageRecordServiceImpl.java index 12ec9e0..6664fd5 100644 --- a/bnyer-services/bnyer-order/src/main/java/com/bnyer/order/service/impl/OrderMqMessageRecordServiceImpl.java +++ b/bnyer-services/bnyer-order/src/main/java/com/bnyer/order/service/impl/OrderMqMessageRecordServiceImpl.java @@ -1,11 +1,13 @@ package com.bnyer.order.service.impl; +import cn.hutool.core.util.IdUtil; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import com.bnyer.common.core.domain.OrderMqMessageRecord; import com.bnyer.common.core.enums.EnumMessageStatus; import com.bnyer.common.core.utils.uuid.IdUtils; import com.bnyer.common.rocketmq.constant.RocketMqConstant; +import com.bnyer.common.rocketmq.constant.RocketMqRepeatConstant; import com.bnyer.common.rocketmq.constant.RocketMqTopic; import com.bnyer.common.rocketmq.domain.MqRecordMessage; import com.bnyer.common.rocketmq.template.RocketMQEnhanceTemplate; @@ -67,7 +69,7 @@ public class OrderMqMessageRecordServiceImpl implements OrderMqMessageRecordServ mqRecordMessage.setTopic(buildTopic); mqRecordMessage.setTag(tag); mqRecordMessage.setConsumerGroupName(buildTopic); - mqRecordMessage.setMessageKey(IdUtils.randomUUID()); + mqRecordMessage.setMessageKey(RocketMqRepeatConstant.MESSAGE_ID_PREFIX_ORDER + IdUtil.getSnowflakeNextIdStr()); mqRecordMessage.setContent(JSON.toJSONString(message)); mqRecordMessage.setSource(applicationName); mqRecordMessage.setReturnTopic(RocketMqTopic.ORDER_RETURN_MSG_TOPIC); @@ -174,7 +176,7 @@ public class OrderMqMessageRecordServiceImpl implements OrderMqMessageRecordServ orderMqMessageRecord.setTopic(message.getTopic()); orderMqMessageRecord.setTag(message.getTag()); orderMqMessageRecord.setCreateTime(new Date()); - orderMqMessageRecord.setMessageKey(IdUtils.randomUUID()); + orderMqMessageRecord.setMessageKey(message.getMessageKey()); orderMqMessageRecord.setContent(JSON.toJSONString(message)); orderMqMessageRecordMapper.insert(orderMqMessageRecord); return orderMqMessageRecord; diff --git a/bnyer-services/bnyer-pay/src/main/java/com/bnyer/pay/service/impl/PayMqMessageRecordServiceImpl.java b/bnyer-services/bnyer-pay/src/main/java/com/bnyer/pay/service/impl/PayMqMessageRecordServiceImpl.java index 1e9c845..a00c876 100644 --- a/bnyer-services/bnyer-pay/src/main/java/com/bnyer/pay/service/impl/PayMqMessageRecordServiceImpl.java +++ b/bnyer-services/bnyer-pay/src/main/java/com/bnyer/pay/service/impl/PayMqMessageRecordServiceImpl.java @@ -1,12 +1,13 @@ package com.bnyer.pay.service.impl; +import cn.hutool.core.util.IdUtil; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import com.bnyer.common.core.domain.PayMqMessageRecord; import com.bnyer.common.core.enums.EnumMessageStatus; -import com.bnyer.common.core.utils.bean.EntityConvertUtil; import com.bnyer.common.core.utils.uuid.IdUtils; import com.bnyer.common.rocketmq.constant.RocketMqConstant; +import com.bnyer.common.rocketmq.constant.RocketMqRepeatConstant; import com.bnyer.common.rocketmq.constant.RocketMqTopic; import com.bnyer.common.rocketmq.domain.MqRecordMessage; import com.bnyer.common.rocketmq.template.RocketMQEnhanceTemplate; @@ -69,7 +70,7 @@ public class PayMqMessageRecordServiceImpl implements PayMqMessageRecordService mqRecordMessage.setTopic(buildTopic); mqRecordMessage.setTag(tag); mqRecordMessage.setConsumerGroupName(buildTopic); - mqRecordMessage.setMessageKey(IdUtils.randomUUID()); + mqRecordMessage.setMessageKey(RocketMqRepeatConstant.MESSAGE_ID_PREFIX_PAY + IdUtil.getSnowflakeNextIdStr()); mqRecordMessage.setContent(JSON.toJSONString(message)); mqRecordMessage.setSource(applicationName); mqRecordMessage.setReturnTopic(RocketMqTopic.PAY_RETURN_MSG_TOPIC); @@ -176,7 +177,7 @@ public class PayMqMessageRecordServiceImpl implements PayMqMessageRecordService payMqMessageRecord.setTopic(message.getTopic()); payMqMessageRecord.setTag(message.getTag()); payMqMessageRecord.setCreateTime(new Date()); - payMqMessageRecord.setMessageKey(IdUtils.randomUUID()); + payMqMessageRecord.setMessageKey(message.getMessageKey()); payMqMessageRecord.setContent(JSON.toJSONString(message)); payMqMessageRecordMapper.insert(payMqMessageRecord); return payMqMessageRecord;