From 4879adf524660366754b64b7a614f24ce7528bb2 Mon Sep 17 00:00:00 2001 From: wuxicheng <1441859745@qq.com> Date: Mon, 12 Jun 2023 09:33:23 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9A=82=E6=97=B6=E5=B1=8F=E8=94=BD=E8=AE=A2?= =?UTF-8?q?=E5=8D=95=E6=8E=A8=E9=80=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../rocketmq/handle/EnhanceMessageHandler.java | 4 ---- .../pay/listener/ThirdPayOrderPushConsumer.java | 2 -- .../pay/service/impl/PayInfoServiceImpl.java | 12 ++++++------ .../pay/service/impl/UnifiedPayServiceImpl.java | 15 ++++++++------- 4 files changed, 14 insertions(+), 19 deletions(-) diff --git a/bnyer-common/bnyer-common-rocketmq/src/main/java/com/bnyer/common/rocketmq/handle/EnhanceMessageHandler.java b/bnyer-common/bnyer-common-rocketmq/src/main/java/com/bnyer/common/rocketmq/handle/EnhanceMessageHandler.java index 9ef57f7..8828869 100644 --- a/bnyer-common/bnyer-common-rocketmq/src/main/java/com/bnyer/common/rocketmq/handle/EnhanceMessageHandler.java +++ b/bnyer-common/bnyer-common-rocketmq/src/main/java/com/bnyer/common/rocketmq/handle/EnhanceMessageHandler.java @@ -230,8 +230,6 @@ public abstract class EnhanceMessageHandler { */ protected void sendReturnSuccessMessage(BnyerMessage message){ //发送返回队列,告知已经处理成功,完成最终一致性 - //TODO: 2023/05/20 为避免这里消息通知失败,定时补偿的时候需要根据创建时间,判断如果超过固定时间比如30分钟,就直接设置成作废,避免 - // 定时任务一直补偿,因为这里不做补偿机制,是不会重发消息的 if (StringUtils.isNotBlank(message.getReturnTopic())){ BnyerMessage returnMessage = new BnyerMessage(); returnMessage.setStatus(EnumMessageStatus.SUCCESS); @@ -246,8 +244,6 @@ public abstract class EnhanceMessageHandler { */ protected void sendReturnFailsMessage(BnyerMessage message){ //发送返回队列,告知已经超过最大重试次数,消费失败,需人工处理该记录 - //TODO: 2023/05/20 为避免这里消息通知失败,定时补偿的时候需要根据创建时间,判断如果超过固定时间比如30分钟,就直接设置成作废,避免 - // 定时任务一直补偿,因为这里不做补偿机制,是不会重发消息的 if (StringUtils.isNotBlank(message.getReturnTopic())){ BnyerMessage returnMessage = new BnyerMessage(); returnMessage.setStatus(EnumMessageStatus.FAILS); diff --git a/bnyer-services/bnyer-pay/src/main/java/com/bnyer/pay/listener/ThirdPayOrderPushConsumer.java b/bnyer-services/bnyer-pay/src/main/java/com/bnyer/pay/listener/ThirdPayOrderPushConsumer.java index 3d8fb7f..4eda4ec 100644 --- a/bnyer-services/bnyer-pay/src/main/java/com/bnyer/pay/listener/ThirdPayOrderPushConsumer.java +++ b/bnyer-services/bnyer-pay/src/main/java/com/bnyer/pay/listener/ThirdPayOrderPushConsumer.java @@ -1,7 +1,5 @@ package com.bnyer.pay.listener; -import com.bnyer.common.core.enums.ResponseEnum; -import com.bnyer.common.core.exception.ServiceException; import com.bnyer.common.rocketmq.constant.RocketMqTopic; import com.bnyer.common.rocketmq.domain.BnyerMessage; import com.bnyer.common.rocketmq.domain.pay.ThirdPayOrderPushMessage; diff --git a/bnyer-services/bnyer-pay/src/main/java/com/bnyer/pay/service/impl/PayInfoServiceImpl.java b/bnyer-services/bnyer-pay/src/main/java/com/bnyer/pay/service/impl/PayInfoServiceImpl.java index 9b5d470..1e629f2 100644 --- a/bnyer-services/bnyer-pay/src/main/java/com/bnyer/pay/service/impl/PayInfoServiceImpl.java +++ b/bnyer-services/bnyer-pay/src/main/java/com/bnyer/pay/service/impl/PayInfoServiceImpl.java @@ -105,12 +105,12 @@ public class PayInfoServiceImpl implements PayInfoService { throw new ServiceException("未匹配上对应的支付场景"); } //推送订单 - EnumPayType enumPayType = EnumPayType.getEnumPayTypeByType(payInfo.getPayType()); - if (EnumPayType.DY_PAY == enumPayType){ - ThirdPayOrderPushMessage thirdPayOrderPushMessage = new ThirdPayOrderPushMessage(); - thirdPayOrderPushMessage.setPayId(payInfo.getPayId()); - mqMessageRecordService.sendAsyncMsg(RocketMqTopic.THIRD_PAY_ORDER_PUSH_TOPIC,null,thirdPayOrderPushMessage); - } + //EnumPayType enumPayType = EnumPayType.getEnumPayTypeByType(payInfo.getPayType()); + //if (EnumPayType.DY_PAY == enumPayType){ + // ThirdPayOrderPushMessage thirdPayOrderPushMessage = new ThirdPayOrderPushMessage(); + // thirdPayOrderPushMessage.setPayId(payInfo.getPayId()); + // mqMessageRecordService.sendAsyncMsg(RocketMqTopic.THIRD_PAY_ORDER_PUSH_TOPIC,null,thirdPayOrderPushMessage); + //} } /** diff --git a/bnyer-services/bnyer-pay/src/main/java/com/bnyer/pay/service/impl/UnifiedPayServiceImpl.java b/bnyer-services/bnyer-pay/src/main/java/com/bnyer/pay/service/impl/UnifiedPayServiceImpl.java index 6a69a5b..546a549 100644 --- a/bnyer-services/bnyer-pay/src/main/java/com/bnyer/pay/service/impl/UnifiedPayServiceImpl.java +++ b/bnyer-services/bnyer-pay/src/main/java/com/bnyer/pay/service/impl/UnifiedPayServiceImpl.java @@ -125,12 +125,12 @@ public class UnifiedPayServiceImpl implements UnifiedPayService { payInfoService.addPayInfo(addPayInfoDto); UnifiedOrderVo unifiedOrderVo = EntityConvertUtil.copy(thirdUnifiedOrderVo, UnifiedOrderVo.class); //推送订单 - EnumPayType enumPayType = EnumPayType.getEnumPayTypeByType(addPayInfoDto.getPayType()); - if (EnumPayType.DY_PAY == enumPayType){ - ThirdPayOrderPushMessage thirdPayOrderPushMessage = new ThirdPayOrderPushMessage(); - thirdPayOrderPushMessage.setPayId(addPayInfoDto.getPayId()); - mqMessageRecordService.sendAsyncMsg(RocketMqTopic.THIRD_PAY_ORDER_PUSH_TOPIC,null,thirdPayOrderPushMessage); - } + //EnumPayType enumPayType = EnumPayType.getEnumPayTypeByType(addPayInfoDto.getPayType()); + //if (EnumPayType.DY_PAY == enumPayType){ + // ThirdPayOrderPushMessage thirdPayOrderPushMessage = new ThirdPayOrderPushMessage(); + // thirdPayOrderPushMessage.setPayId(addPayInfoDto.getPayId()); + // mqMessageRecordService.sendAsyncMsg(RocketMqTopic.THIRD_PAY_ORDER_PUSH_TOPIC,null,thirdPayOrderPushMessage); + //} return unifiedOrderVo; } @@ -392,8 +392,8 @@ public class UnifiedPayServiceImpl implements UnifiedPayService { log.error("内部接口:查询会员订单调用失败:request:{} result{}", JSON.toJSONString(vipOrderExtQuery),JSON.toJSONString(vipOrderVoR)); throw new ServiceException(vipOrderVoR.getMsg()); } - PushOrderBo pushOrderBo = new PushOrderBo(); VipOrderVo vipOrderVo = vipOrderVoR.getData(); + PushOrderBo pushOrderBo = new PushOrderBo(); List goodsList = new ArrayList<>(); //封装商品信息 PushOrderBo.Goods goods = new PushOrderBo.Goods(); @@ -403,6 +403,7 @@ public class UnifiedPayServiceImpl implements UnifiedPayService { goods.setItemCode(vipOrderVo.getVipCode()); goods.setPrice(Integer.parseInt(MoneyUtil.yuanToFen(vipOrderVo.getPayAmount().toString()))); goods.setTitle(payInfo.getGoodsSubject()); + goodsList.add(goods); pushOrderBo.setGoodsNum(goodsList.size()); pushOrderBo.setUpdateTime(payInfo.getUpdateTime());