Skip to content

Commit 01f34eb

Browse files
committed
Merge branch 'release/3.867.0'
2 parents b50aa0b + ac7b47f commit 01f34eb

8 files changed

Lines changed: 33 additions & 18 deletions

File tree

Directory.Build.props

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
<Project>
33
<!-- These properties will be shared for all projects -->
44
<PropertyGroup>
5-
<VersionPrefix>3.866.0</VersionPrefix>
5+
<VersionPrefix>3.867.0</VersionPrefix>
66
<VersionSuffix>
77
</VersionSuffix>
88
<VersionSuffix Condition=" '$(VersionSuffix)' != '' AND '$(BuildNumber)' != '' ">$(VersionSuffix)-$(BuildNumber)</VersionSuffix>

src/VirtoCommerce.OrdersModule.Core/VirtoCommerce.OrdersModule.Core.csproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@
1919
<PackageReference Include="VirtoCommerce.CoreModule.Core" Version="3.824.0" />
2020
<PackageReference Include="VirtoCommerce.CustomerModule.Core" Version="3.846.0" />
2121
<PackageReference Include="VirtoCommerce.NotificationsModule.Core" Version="3.830.0" />
22-
<PackageReference Include="VirtoCommerce.PaymentModule.Core" Version="3.811.0" />
22+
<PackageReference Include="VirtoCommerce.PaymentModule.Core" Version="3.813.0" />
2323
<PackageReference Include="VirtoCommerce.Platform.Core" Version="3.917.0" />
2424
<PackageReference Include="VirtoCommerce.ShippingModule.Core" Version="3.816.0" />
2525
<PackageReference Include="VirtoCommerce.StoreModule.Core" Version="3.823.0" />

src/VirtoCommerce.OrdersModule.Data/Handlers/CancelPaymentOrderChangedEventHandler.cs

Lines changed: 16 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,9 @@ public virtual async Task TryToCancelOrderPaymentsAsync(PaymentToCancelJobArgume
4646
var paymentToCancel = order.InPayments.FirstOrDefault(x => x.Id.EqualsIgnoreCase(jobArgument.PaymentId));
4747
if (paymentToCancel != null && !paymentToCancel.IsCancelled)
4848
{
49+
#pragma warning disable VC0012
4950
CancelPayment(paymentToCancel, order);
51+
#pragma warning restore VC0012
5052

5153
if (!changedOrders.Contains(order))
5254
{
@@ -85,15 +87,27 @@ protected virtual PaymentToCancelJobArgument[] GetJobArgumentsForChangedEntry(Ge
8587
return toCancelPayments.Select(x => PaymentToCancelJobArgument.FromChangedEntry(changedEntry, x)).ToArray();
8688
}
8789

90+
[Obsolete("Use CancelPaymentAsync method instead", DiagnosticId = "VC0012", UrlFormat = "https://docs.virtocommerce.org/products/products-virto3-versions")]
8891
protected virtual void CancelPayment(PaymentIn paymentToCancel, CustomerOrder order)
92+
{
93+
CancelPaymentAsync(paymentToCancel, order).GetAwaiter().GetResult();
94+
}
95+
96+
protected virtual async Task CancelPaymentAsync(PaymentIn paymentToCancel, CustomerOrder order)
8997
{
9098
if (paymentToCancel.PaymentStatus == PaymentStatus.Authorized)
9199
{
92-
paymentToCancel.PaymentMethod?.VoidProcessPayment(new VoidPaymentRequest { PaymentId = paymentToCancel.Id, OrderId = order.Id, Payment = paymentToCancel, Order = order });
100+
if (paymentToCancel.PaymentMethod != null)
101+
{
102+
await paymentToCancel.PaymentMethod.VoidProcessPaymentAsync(new VoidPaymentRequest { PaymentId = paymentToCancel.Id, OrderId = order.Id, Payment = paymentToCancel, Order = order });
103+
}
93104
}
94105
else if (paymentToCancel.PaymentStatus == PaymentStatus.Paid)
95106
{
96-
paymentToCancel.PaymentMethod?.RefundProcessPayment(new RefundPaymentRequest { PaymentId = paymentToCancel.Id, OrderId = order.Id, Payment = paymentToCancel, Order = order });
107+
if (paymentToCancel.PaymentMethod != null)
108+
{
109+
await paymentToCancel.PaymentMethod.RefundProcessPaymentAsync(new RefundPaymentRequest { PaymentId = paymentToCancel.Id, OrderId = order.Id, Payment = paymentToCancel, Order = order });
110+
}
97111
}
98112
else
99113
{

src/VirtoCommerce.OrdersModule.Data/Services/CustomerOrderPaymentService.cs

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,14 +4,12 @@
44
using System.Threading.Tasks;
55
using FluentValidation;
66
using FluentValidation.Results;
7-
using VirtoCommerce.OrdersModule.Core;
87
using VirtoCommerce.OrdersModule.Core.Model;
98
using VirtoCommerce.OrdersModule.Core.Model.Search;
109
using VirtoCommerce.OrdersModule.Core.Services;
1110
using VirtoCommerce.OrdersModule.Data.Model;
1211
using VirtoCommerce.PaymentModule.Model.Requests;
1312
using VirtoCommerce.Platform.Core.Common;
14-
using VirtoCommerce.Platform.Core.Settings;
1513
using VirtoCommerce.StoreModule.Core.Model;
1614
using VirtoCommerce.StoreModule.Core.Services;
1715

@@ -45,7 +43,7 @@ public virtual async Task<PostProcessPaymentRequestResult> PostProcessPaymentAsy
4543
foreach (var inPayment in inPayments)
4644
{
4745
// Each payment method must check that these parameters are addressed to it
48-
var paymentMethodValidationResult = inPayment.PaymentMethod.ValidatePostProcessRequest(paymentParameters.Parameters);
46+
var paymentMethodValidationResult = await inPayment.PaymentMethod.ValidatePostProcessRequestAsync(paymentParameters.Parameters);
4947
if (!paymentMethodValidationResult.IsSuccess)
5048
{
5149
continue;
@@ -63,7 +61,7 @@ public virtual async Task<PostProcessPaymentRequestResult> PostProcessPaymentAsy
6361
Parameters = paymentParameters.Parameters,
6462
};
6563

66-
var paymentMethodPostProcessResult = inPayment.PaymentMethod.PostProcessPayment(paymentMethodRequest);
64+
var paymentMethodPostProcessResult = await inPayment.PaymentMethod.PostProcessPaymentAsync(paymentMethodRequest);
6765
if (paymentMethodPostProcessResult == null)
6866
{
6967
continue;

src/VirtoCommerce.OrdersModule.Data/Services/PaymentFlowService.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -199,7 +199,7 @@ protected virtual async Task<RefundPaymentRequestResult> ProcessRefund(RefundOrd
199199
var paymentInfo = await GetPaymentInfoAsync(request, RefundAllowedPaymentStatuses);
200200
var refundRequest = GetRefundPaymentRequest(paymentInfo, request);
201201

202-
return paymentInfo.Payment.PaymentMethod.RefundProcessPayment(refundRequest);
202+
return await paymentInfo.Payment.PaymentMethod.RefundProcessPaymentAsync(refundRequest);
203203
}
204204

205205
protected virtual RefundPaymentRequest GetRefundPaymentRequest(OrderPaymentInfo paymentInfo, RefundOrderPaymentRequest request)
@@ -353,7 +353,7 @@ public virtual async Task<CapturePaymentRequestResult> ProcessCapture(CaptureOrd
353353
var paymentInfo = await GetPaymentInfoAsync(request, CaptureAllowedPaymentStatuses);
354354
var captureRequest = GetCapturePaymentRequest(paymentInfo, request);
355355

356-
return paymentInfo.Payment.PaymentMethod.CaptureProcessPayment(captureRequest);
356+
return await paymentInfo.Payment.PaymentMethod.CaptureProcessPaymentAsync(captureRequest);
357357
}
358358

359359
protected virtual async Task<CaptureOrderPaymentResult> CapturePaymentInternalAsync(CaptureOrderPaymentRequest request)

src/VirtoCommerce.OrdersModule.Web/Controllers/Api/OrderModuleController.cs

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
using System.IO;
33
using System.Linq;
44
using System.Text;
5+
using System.Threading;
56
using System.Threading.Tasks;
67
using DinkToPdf;
78
using DinkToPdf.Contracts;
@@ -198,12 +199,13 @@ public async Task<ActionResult<CustomerOrder>> CalculateTotals([FromBody] Custom
198199
/// </summary>
199200
/// <param name="orderId">customer order id</param>
200201
/// <param name="paymentId">payment id</param>
202+
/// <param name="cancellationToken">cancellationToken</param>
201203
[HttpPost]
202204
[Route("{orderId}/processPayment/{paymentId}")]
203205
[ApiExplorerSettings(IgnoreApi = true)]
204-
public Task<ActionResult<ProcessPaymentRequestResult>> ProcessOrderPaymentsWithoutBankCardInfo([FromRoute] string orderId, [FromRoute] string paymentId)
206+
public Task<ActionResult<ProcessPaymentRequestResult>> ProcessOrderPaymentsWithoutBankCardInfo([FromRoute] string orderId, [FromRoute] string paymentId, CancellationToken cancellationToken)
205207
{
206-
return ProcessOrderPayments(orderId, paymentId, null);
208+
return ProcessOrderPayments(orderId, paymentId, null, cancellationToken);
207209
}
208210

209211
/// <summary>
@@ -213,10 +215,11 @@ public Task<ActionResult<ProcessPaymentRequestResult>> ProcessOrderPaymentsWitho
213215
/// <param name="orderId">customer order id</param>
214216
/// <param name="paymentId">payment id</param>
215217
/// <param name="bankCardInfo">banking card information</param>
218+
/// <param name="cancellationToken">cancellationToken</param>
216219
[HttpPost]
217220
[Route("{orderId}/processPayment/{paymentId}")]
218221
[Consumes("application/json", "application/json-patch+json")] // It's a trick that allows ASP.NET infrastructure to select this action with body and ProcessOrderPaymentsWithoutBankCardInfo if no body
219-
public async Task<ActionResult<ProcessPaymentRequestResult>> ProcessOrderPayments([FromRoute] string orderId, [FromRoute] string paymentId, [FromBody] BankCardInfo bankCardInfo)
222+
public async Task<ActionResult<ProcessPaymentRequestResult>> ProcessOrderPayments([FromRoute] string orderId, [FromRoute] string paymentId, [FromBody] BankCardInfo bankCardInfo, CancellationToken cancellationToken)
220223
{
221224
var customerOrder = await customerOrderService.GetByIdAsync(orderId, CustomerOrderResponseGroup.Full.ToString());
222225

@@ -267,7 +270,7 @@ public async Task<ActionResult<ProcessPaymentRequestResult>> ProcessOrderPayment
267270
Store = store,
268271
BankCardInfo = bankCardInfo
269272
};
270-
var result = inPayment.PaymentMethod.ProcessPayment(request);
273+
var result = await inPayment.PaymentMethod.ProcessPaymentAsync(request, cancellationToken);
271274
if (result.OuterId != null)
272275
{
273276
inPayment.OuterId = result.OuterId;

src/VirtoCommerce.OrdersModule.Web/VirtoCommerce.OrdersModule.Web.csproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@
2424
<ItemGroup>
2525
<PackageReference Include="DinkToPdfCopy" Version="1.0.0" />
2626
<PackageReference Include="VirtoCommerce.NotificationsModule.TemplateLoader.FileSystem" Version="3.830.0" />
27-
<PackageReference Include="VirtoCommerce.PaymentModule.Data" Version="3.811.0" />
27+
<PackageReference Include="VirtoCommerce.PaymentModule.Data" Version="3.813.0" />
2828
</ItemGroup>
2929
<ItemGroup>
3030
<ProjectReference Include="..\VirtoCommerce.OrdersModule.Core\VirtoCommerce.OrdersModule.Core.csproj" />

src/VirtoCommerce.OrdersModule.Web/module.manifest

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
<?xml version="1.0" encoding="utf-8"?>
22
<module>
33
<id>VirtoCommerce.Orders</id>
4-
<version>3.866.0</version>
4+
<version>3.867.0</version>
55
<version-tag />
66

77
<platformVersion>3.917.0</platformVersion>
@@ -13,7 +13,7 @@
1313
<dependency id="VirtoCommerce.Customer" version="3.846.0" />
1414
<dependency id="VirtoCommerce.Inventory" version="3.815.0" />
1515
<dependency id="VirtoCommerce.Notifications" version="3.830.0" />
16-
<dependency id="VirtoCommerce.Payment" version="3.811.0" />
16+
<dependency id="VirtoCommerce.Payment" version="3.813.0" />
1717
<dependency id="VirtoCommerce.Search" version="3.821.0" />
1818
<dependency id="VirtoCommerce.Shipping" version="3.816.0" />
1919
<dependency id="VirtoCommerce.Store" version="3.823.0" />
@@ -30,7 +30,7 @@
3030
<projectUrl>https://github.com/VirtoCommerce/vc-module-order</projectUrl>
3131
<iconUrl>Modules/$(VirtoCommerce.Orders)/Content/logo.png</iconUrl>
3232
<requireLicenseAcceptance>false</requireLicenseAcceptance>
33-
<copyright>Copyright © 2011-2025 Virto Commerce. All rights reserved</copyright>
33+
<copyright>Copyright © 2011-2026 Virto Commerce. All rights reserved</copyright>
3434
<tags>order system</tags>
3535
<assemblyFile>VirtoCommerce.OrdersModule.Web.dll</assemblyFile>
3636
<moduleType>VirtoCommerce.OrdersModule.Web.Module, VirtoCommerce.OrdersModule.Web</moduleType>

0 commit comments

Comments
 (0)