From 955693d49c40ad36ff70df03fa39fc0ba9342647 Mon Sep 17 00:00:00 2001 From: Derran Date: Tue, 3 Feb 2026 15:39:25 +0800 Subject: [PATCH] =?UTF-8?q?=E7=9B=B4=E6=92=AD=E7=BA=A2=E5=A8=98=E4=BB=BB?= =?UTF-8?q?=E5=8A=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../vobj/PurchaseProductRecord.java | 11 +++++++++++ .../application/handler/order/OrderEventHandler.java | 9 ++++++++- 2 files changed, 19 insertions(+), 1 deletion(-) diff --git a/dating-agency-mall-entity/src/main/java/com/qniao/dam/domain/aggregate/purchaseproductrecord/vobj/PurchaseProductRecord.java b/dating-agency-mall-entity/src/main/java/com/qniao/dam/domain/aggregate/purchaseproductrecord/vobj/PurchaseProductRecord.java index 1c09785..21cd887 100644 --- a/dating-agency-mall-entity/src/main/java/com/qniao/dam/domain/aggregate/purchaseproductrecord/vobj/PurchaseProductRecord.java +++ b/dating-agency-mall-entity/src/main/java/com/qniao/dam/domain/aggregate/purchaseproductrecord/vobj/PurchaseProductRecord.java @@ -23,4 +23,15 @@ public class PurchaseProductRecord extends ValueObject { @ApiModelProperty("订单标识") private Long orderId; + public static PurchaseProductRecord build(Long userId, + Long productId, + Long productSpecId, + Long orderId) { + PurchaseProductRecord purchaseProductRecord = new PurchaseProductRecord(); + purchaseProductRecord.setUserId(userId); + purchaseProductRecord.setProductId(productId); + purchaseProductRecord.setProductSpecId(productSpecId); + purchaseProductRecord.setOrderId(orderId); + return purchaseProductRecord; + } } diff --git a/dating-agency-mall-server/src/main/java/com/qniao/dam/application/handler/order/OrderEventHandler.java b/dating-agency-mall-server/src/main/java/com/qniao/dam/application/handler/order/OrderEventHandler.java index 007de73..68b385d 100644 --- a/dating-agency-mall-server/src/main/java/com/qniao/dam/application/handler/order/OrderEventHandler.java +++ b/dating-agency-mall-server/src/main/java/com/qniao/dam/application/handler/order/OrderEventHandler.java @@ -20,6 +20,7 @@ import com.qniao.dam.domain.aggregate.product.repository.ProductRepository; import com.qniao.dam.domain.aggregate.productspec.entity.ProductSpec; import com.qniao.dam.domain.aggregate.productspec.repository.ProductSpecRepository; import com.qniao.dam.domain.aggregate.productspec.valueobj.ProductSpecTerm; +import com.qniao.dam.domain.aggregate.purchaseproductrecord.vobj.PurchaseProductRecord; import com.qniao.dam.domain.aggregate.right.RightAggregate; import com.qniao.dam.domain.aggregate.right.entity.Right; import com.qniao.dam.domian.aggregate.externalorder.constant.ExternalOrderRelStatus; @@ -36,6 +37,7 @@ import com.qniao.dam.infrastructure.constant.MqExchange; import com.qniao.dam.infrastructure.persistent.dao.domain.ExternalOrderRelDao; import com.qniao.dam.infrastructure.persistent.dao.domain.MarriageInformationDao; import com.qniao.dam.infrastructure.persistent.dao.domain.SiteActivityDao; +import com.qniao.dam.infrastructure.persistent.dao.purchaseproductrecord.PurchaseProductRecordDao; import com.qniao.dam.infrastructure.utils.SnowFlakeUtil; import com.qniao.dam.query.product.ProductQueryService; import com.qniao.das.domian.aggregate.marriageinformation.MarriageInformation; @@ -91,6 +93,8 @@ public class OrderEventHandler extends BaseApplicationService { @Resource private VirtualAccountApplicationService virtualAccountApplicationService; @Resource + private PurchaseProductRecordDao purchaseProductRecordDao; + @Resource private SnowFlakeUtil snowFlakeUtil; @Resource private AmqpTemplate amqpTemplate; @@ -117,8 +121,11 @@ public class OrderEventHandler extends BaseApplicationService { } if (ProductSubCategoryEnum.VIRTUAL_CURRENCY.equals(product.getSubCategory())) { //玫瑰充值 - virtualAccountApplicationService.recharge(product,productSpec,order); + virtualAccountApplicationService.recharge(product, productSpec, order); } + //产品 + PurchaseProductRecord record = PurchaseProductRecord.build(order.getUserId(), orderItem.getProductId(), orderItem.getId(), order.getId()); + purchaseProductRecordDao.insert(record); } } batchCreate(rightList);