From 4898de5d89f5c3dba9f2a695d0b4f52cb3e38326 Mon Sep 17 00:00:00 2001 From: gdlcf88 Date: Fri, 18 Sep 2020 14:29:27 +0800 Subject: [PATCH] Add param "customerUserId" to INewOrderGenerator.GenerateAsync method --- common.props | 2 +- .../EShop/Orders/Orders/INewOrderGenerator.cs | 2 +- .../EShop/Orders/Orders/NewOrderGenerator.cs | 19 ++++++++----------- .../EShop/Orders/Orders/OrderAppService.cs | 2 +- 4 files changed, 11 insertions(+), 14 deletions(-) diff --git a/common.props b/common.props index 9ed06b2a..9c38dcab 100644 --- a/common.props +++ b/common.props @@ -1,7 +1,7 @@ latest - 1.0.1 + 1.1.0 $(NoWarn);CS1591 true EasyAbp Team diff --git a/modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.Application/EasyAbp/EShop/Orders/Orders/INewOrderGenerator.cs b/modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.Application/EasyAbp/EShop/Orders/Orders/INewOrderGenerator.cs index efbbd6b1..ad460246 100644 --- a/modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.Application/EasyAbp/EShop/Orders/Orders/INewOrderGenerator.cs +++ b/modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.Application/EasyAbp/EShop/Orders/Orders/INewOrderGenerator.cs @@ -8,6 +8,6 @@ namespace EasyAbp.EShop.Orders.Orders { public interface INewOrderGenerator { - Task GenerateAsync(CreateOrderDto input, Dictionary productDict); + Task GenerateAsync(Guid customerUserId, CreateOrderDto input, Dictionary productDict); } } \ No newline at end of file diff --git a/modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.Application/EasyAbp/EShop/Orders/Orders/NewOrderGenerator.cs b/modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.Application/EasyAbp/EShop/Orders/Orders/NewOrderGenerator.cs index ffc44a29..b9ffe3be 100644 --- a/modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.Application/EasyAbp/EShop/Orders/Orders/NewOrderGenerator.cs +++ b/modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.Application/EasyAbp/EShop/Orders/Orders/NewOrderGenerator.cs @@ -9,7 +9,6 @@ using Volo.Abp.DependencyInjection; using Volo.Abp.Guids; using Volo.Abp.MultiTenancy; using Volo.Abp.ObjectExtending; -using Volo.Abp.Users; namespace EasyAbp.EShop.Orders.Orders { @@ -17,25 +16,23 @@ namespace EasyAbp.EShop.Orders.Orders { private readonly IGuidGenerator _guidGenerator; private readonly ICurrentTenant _currentTenant; - private readonly ICurrentUser _currentUser; private readonly IOrderNumberGenerator _orderNumberGenerator; private readonly IProductSkuDescriptionProvider _productSkuDescriptionProvider; public NewOrderGenerator( IGuidGenerator guidGenerator, ICurrentTenant currentTenant, - ICurrentUser currentUser, IOrderNumberGenerator orderNumberGenerator, IProductSkuDescriptionProvider productSkuDescriptionProvider) { _guidGenerator = guidGenerator; _currentTenant = currentTenant; - _currentUser = currentUser; _orderNumberGenerator = orderNumberGenerator; _productSkuDescriptionProvider = productSkuDescriptionProvider; } - - public virtual async Task GenerateAsync(CreateOrderDto input, Dictionary productDict) + + public virtual async Task GenerateAsync(Guid customerUserId, CreateOrderDto input, + Dictionary productDict) { var orderLines = new List(); @@ -56,25 +53,25 @@ namespace EasyAbp.EShop.Orders.Orders // Todo: totalPrice may contain other fee. var totalPrice = productTotalPrice; var totalDiscount = orderLines.Select(x => x.TotalDiscount).Sum(); - + var order = new Order( id: _guidGenerator.Create(), tenantId: _currentTenant.Id, storeId: input.StoreId, - customerUserId: _currentUser.GetId(), + customerUserId: customerUserId, currency: storeCurrency, productTotalPrice: productTotalPrice, totalDiscount: totalDiscount, totalPrice: totalPrice, actualTotalPrice: totalPrice - totalDiscount, customerRemark: input.CustomerRemark); - + input.MapExtraPropertiesTo(order, MappingPropertyDefinitionChecks.Destination); order.SetOrderLines(orderLines); - + order.SetOrderNumber(await _orderNumberGenerator.CreateAsync(order)); - + return order; } diff --git a/modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.Application/EasyAbp/EShop/Orders/Orders/OrderAppService.cs b/modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.Application/EasyAbp/EShop/Orders/Orders/OrderAppService.cs index 6ccf591f..cd9899f4 100644 --- a/modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.Application/EasyAbp/EShop/Orders/Orders/OrderAppService.cs +++ b/modules/EasyAbp.EShop.Orders/src/EasyAbp.EShop.Orders.Application/EasyAbp/EShop/Orders/Orders/OrderAppService.cs @@ -97,7 +97,7 @@ namespace EasyAbp.EShop.Orders.Orders new OrderOperationAuthorizationRequirement(OrderOperation.Creation) ); - var order = await _newOrderGenerator.GenerateAsync(input, productDict); + var order = await _newOrderGenerator.GenerateAsync(CurrentUser.GetId(), input, productDict); await _orderManager.DiscountAsync(order, input.ExtraProperties);