From 673d6b14721d7600770133f3523ec8fc28fe314c Mon Sep 17 00:00:00 2001 From: Loretta Date: Wed, 27 Nov 2024 11:31:37 +0100 Subject: [PATCH] CreateOrderForWinnerAsync --- .../Services/AuctionService.cs | 33 +++++++++---------- 1 file changed, 15 insertions(+), 18 deletions(-) diff --git a/Nop.Plugin.Misc.AuctionPlugin/Services/AuctionService.cs b/Nop.Plugin.Misc.AuctionPlugin/Services/AuctionService.cs index 05cff68..4401d9e 100644 --- a/Nop.Plugin.Misc.AuctionPlugin/Services/AuctionService.cs +++ b/Nop.Plugin.Misc.AuctionPlugin/Services/AuctionService.cs @@ -1,4 +1,5 @@ -using Nop.Core; +using AyCode.Core.Extensions; +using Nop.Core; using Nop.Core.Caching; using Nop.Core.Domain.Catalog; using Nop.Core.Domain.Customers; @@ -190,28 +191,24 @@ public class AuctionService : IAuctionService try { - var processPaymentRequest = new ProcessPaymentRequest(); - processPaymentRequest.CustomerId = auctionItem.WinnerCustomerId; - processPaymentRequest.CustomValues.Add("ProductToAuctionMappingId", auctionItem.Id); - processPaymentRequest.OrderTotal = auctionItem.CurrentPrice; - - //processPaymentRequest.OrderGuid = productToAuction.OrderGuid; //TODO: - J. - processPaymentRequest.OrderGuid = Guid.NewGuid(); + var processPaymentRequest = new ProcessPaymentRequest + { + CustomerId = auctionItem.WinnerCustomerId, + OrderTotal = auctionItem.CurrentPrice, + OrderGuid = auctionItem.OrderGuid.IsNullOrEmpty() ? Guid.NewGuid() : auctionItem.OrderGuid.Value + }; + processPaymentRequest.CustomValues.Add("ProductToAuctionMappingId", auctionItem.Id); var placeOrderResult = await _orderProcessingService.PlaceOrderAsync(processPaymentRequest); - if (placeOrderResult.Success) - { - //placeOrderResult.PlacedOrder //TODO:... - J. + if (!placeOrderResult.Success) return null; - auctionItem.OrderId = placeOrderResult.PlacedOrder.Id; - auctionItem.OrderGuid = placeOrderResult.PlacedOrder.OrderGuid; + //placeOrderResult.PlacedOrder //TODO:... - J. + + auctionItem.OrderId = placeOrderResult.PlacedOrder.Id; + auctionItem.OrderGuid = placeOrderResult.PlacedOrder.OrderGuid; - return placeOrderResult; - } - - - return null; + return placeOrderResult; } catch (Exception ex) {