diff --git a/modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.Domain/EasyAbp/EShop/Orders/Orders/OrderPaymentCompletedEventHandler.cs b/modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.Domain/EasyAbp/EShop/Orders/Orders/OrderPaymentCompletedEventHandler.cs index 6536dad5..bf5bad74 100644 --- a/modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.Domain/EasyAbp/EShop/Orders/Orders/OrderPaymentCompletedEventHandler.cs +++ b/modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.Domain/EasyAbp/EShop/Orders/Orders/OrderPaymentCompletedEventHandler.cs @@ -3,6 +3,7 @@ using System.Threading.Tasks; using EasyAbp.EShop.Payments.Payments; using Volo.Abp.DependencyInjection; using Volo.Abp.Domain.Entities.Events.Distributed; +using Volo.Abp.MultiTenancy; using Volo.Abp.Timing; using Volo.Abp.Uow; @@ -11,13 +12,16 @@ namespace EasyAbp.EShop.Orders.Orders public class OrderPaymentCompletedEventHandler : IOrderPaymentCompletedEventHandler, ITransientDependency { private readonly IClock _clock; + private readonly ICurrentTenant _currentTenant; private readonly IOrderRepository _orderRepository; public OrderPaymentCompletedEventHandler( IClock clock, + ICurrentTenant currentTenant, IOrderRepository orderRepository) { _clock = clock; + _currentTenant = currentTenant; _orderRepository = orderRepository; } @@ -29,6 +33,8 @@ namespace EasyAbp.EShop.Orders.Orders return; } + using var currentTenant = _currentTenant.Change(eventData.Entity.TenantId); + foreach (var item in eventData.Entity.PaymentItems.Where(item => item.ItemType == "EasyAbpEShopOrder")) { var order = await _orderRepository.FindAsync(item.ItemKey); diff --git a/modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.Domain/EasyAbp/EShop/Orders/Orders/OrderPaymentCreatedEventHandler.cs b/modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.Domain/EasyAbp/EShop/Orders/Orders/OrderPaymentCreatedEventHandler.cs index c005cf7f..7cbcbe3e 100644 --- a/modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.Domain/EasyAbp/EShop/Orders/Orders/OrderPaymentCreatedEventHandler.cs +++ b/modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.Domain/EasyAbp/EShop/Orders/Orders/OrderPaymentCreatedEventHandler.cs @@ -3,22 +3,29 @@ using System.Threading.Tasks; using EasyAbp.EShop.Payments.Payments; using Volo.Abp.DependencyInjection; using Volo.Abp.Domain.Entities.Events.Distributed; +using Volo.Abp.MultiTenancy; using Volo.Abp.Uow; namespace EasyAbp.EShop.Orders.Orders { public class OrderPaymentCreatedEventHandler : IOrderPaymentCreatedEventHandler, ITransientDependency { + private readonly ICurrentTenant _currentTenant; private readonly IOrderRepository _orderRepository; - public OrderPaymentCreatedEventHandler(IOrderRepository orderRepository) + public OrderPaymentCreatedEventHandler( + ICurrentTenant currentTenant, + IOrderRepository orderRepository) { + _currentTenant = currentTenant; _orderRepository = orderRepository; } [UnitOfWork(true)] public virtual async Task HandleEventAsync(EntityCreatedEto eventData) { + using var currentTenant = _currentTenant.Change(eventData.Entity.TenantId); + foreach (var item in eventData.Entity.PaymentItems.Where(item => item.ItemType == "EasyAbpEShopOrder")) { var order = await _orderRepository.FindAsync(item.ItemKey); diff --git a/modules/EasyAbp.EShop.Products/src/EasyAbp.EShop.Products.Domain/EasyAbp/EShop/Products/Products/OrderCreatedEventHandler.cs b/modules/EasyAbp.EShop.Products/src/EasyAbp.EShop.Products.Domain/EasyAbp/EShop/Products/Products/OrderCreatedEventHandler.cs index b7dd0462..b1a2c8ac 100644 --- a/modules/EasyAbp.EShop.Products/src/EasyAbp.EShop.Products.Domain/EasyAbp/EShop/Products/Products/OrderCreatedEventHandler.cs +++ b/modules/EasyAbp.EShop.Products/src/EasyAbp.EShop.Products.Domain/EasyAbp/EShop/Products/Products/OrderCreatedEventHandler.cs @@ -55,7 +55,7 @@ namespace EasyAbp.EShop.Products.Products orderLine.Quantity)) { await _distributedEventBus.PublishAsync(new ProductInventoryReductionAfterOrderPlacedResultEto - {OrderId = eventData.Entity.Id, IsSuccess = false}); + {TenantId = eventData.Entity.TenantId, OrderId = eventData.Entity.Id, IsSuccess = false}); return; } @@ -75,7 +75,7 @@ namespace EasyAbp.EShop.Products.Products } await _distributedEventBus.PublishAsync(new ProductInventoryReductionAfterOrderPlacedResultEto - {OrderId = eventData.Entity.Id, IsSuccess = true}); + {TenantId = eventData.Entity.TenantId, OrderId = eventData.Entity.Id, IsSuccess = true}); } } }