From 973f76a43813b0f0fe03e4c0f7f97d6b275c5a9f Mon Sep 17 00:00:00 2001 From: hy001 Date: Thu, 28 May 2026 15:07:52 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E9=A6=96=E5=86=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../model/event/pay/RechargeSuccessEvent.java | 2 ++ .../task/RechargeSuccessEventPublisher.java | 23 +++++++++++++++---- 2 files changed, 21 insertions(+), 4 deletions(-) diff --git a/rc-common-business/common-business-mq/business-mq-model/src/main/java/com/red/circle/mq/business/model/event/pay/RechargeSuccessEvent.java b/rc-common-business/common-business-mq/business-mq-model/src/main/java/com/red/circle/mq/business/model/event/pay/RechargeSuccessEvent.java index 6b1aa063..2d57eb92 100644 --- a/rc-common-business/common-business-mq/business-mq-model/src/main/java/com/red/circle/mq/business/model/event/pay/RechargeSuccessEvent.java +++ b/rc-common-business/common-business-mq/business-mq-model/src/main/java/com/red/circle/mq/business/model/event/pay/RechargeSuccessEvent.java @@ -29,6 +29,8 @@ public class RechargeSuccessEvent implements Serializable { private String currency; private String payPlatform; private String paymentMethod; + private String googleProductId; + private String productId; private String appVersion; private String sourceOrderId; private String orderId; diff --git a/rc-service/rc-service-order/order-application/src/main/java/com/red/circle/order/app/common/task/RechargeSuccessEventPublisher.java b/rc-service/rc-service-order/order-application/src/main/java/com/red/circle/order/app/common/task/RechargeSuccessEventPublisher.java index e9fa7959..33237644 100644 --- a/rc-service/rc-service-order/order-application/src/main/java/com/red/circle/order/app/common/task/RechargeSuccessEventPublisher.java +++ b/rc-service/rc-service-order/order-application/src/main/java/com/red/circle/order/app/common/task/RechargeSuccessEventPublisher.java @@ -58,6 +58,15 @@ public class RechargeSuccessEventPublisher { return; } + String sourceOrderId = String.valueOf(purchaseHistoryId); + String payPlatform = normalizePayPlatform(defaultIfBlank(event.getPayPlatform(), event.getPlatform())); + String paymentMethod = classifyPaymentMethod(payPlatform); + String appVersion = defaultIfBlank(event.getAppVersion(), ""); + String productId = Objects.nonNull(event.getProductConfig()) + ? defaultIfBlank(event.getProductConfig().getProductId(), event.getOrigin()) + : defaultIfBlank(event.getOrigin(), ""); + String googleProductId = Objects.equals(GOOGLE, payPlatform) ? productId : ""; + Map payload = new HashMap<>(); payload.put("payerUserId", event.getUserId()); payload.put("acceptUserId", userId); @@ -66,11 +75,9 @@ public class RechargeSuccessEventPublisher { payload.put("platform", event.getPlatform()); payload.put("payPlatform", event.getPayPlatform()); payload.put("appVersion", event.getAppVersion()); + payload.put("productId", productId); + payload.put("googleProductId", googleProductId); - String sourceOrderId = String.valueOf(purchaseHistoryId); - String payPlatform = normalizePayPlatform(defaultIfBlank(event.getPayPlatform(), event.getPlatform())); - String paymentMethod = classifyPaymentMethod(payPlatform); - String appVersion = defaultIfBlank(event.getAppVersion(), ""); publish(new RechargeSuccessEvent() .setEventId("RECHARGE_SUCCESS:" + paymentMethod + ":" + sourceOrderId) .setSysOrigin(event.getSysOrigin()) @@ -80,6 +87,8 @@ public class RechargeSuccessEventPublisher { .setCurrency("USD") .setPayPlatform(payPlatform) .setPaymentMethod(paymentMethod) + .setProductId(productId) + .setGoogleProductId(googleProductId) .setAppVersion(appVersion) .setSourceOrderId(sourceOrderId) .setOrderId(sourceOrderId) @@ -115,6 +124,10 @@ public class RechargeSuccessEventPublisher { payload.put("productContent", product.getContent()); String appVersion = appVersionFromMetadata(order); payload.put("appVersion", appVersion); + String productId = defaultIfBlank(order.getTrackId(), ""); + String googleProductId = Objects.equals(GOOGLE, payPlatform) ? productId : ""; + payload.put("productId", productId); + payload.put("googleProductId", googleProductId); publish(new RechargeSuccessEvent() .setEventId("RECHARGE_SUCCESS:" + paymentMethod + ":" + payPlatform + ":" + order.getId()) @@ -125,6 +138,8 @@ public class RechargeSuccessEventPublisher { .setCurrency(defaultIfBlank(order.getCurrency(), "USD")) .setPayPlatform(payPlatform) .setPaymentMethod(paymentMethod) + .setProductId(productId) + .setGoogleProductId(googleProductId) .setAppVersion(appVersion) .setSourceOrderId(order.getId()) .setOrderId(defaultIfBlank(order.getOrderId(), order.getId()))