From e28a87067f637ece561f265a0f1538c7918e4c33 Mon Sep 17 00:00:00 2001
From: shanj <18996038927@163.com>
Date: Tue, 28 Feb 2023 02:56:04 +0800
Subject: [PATCH] =?UTF-8?q?=E5=B0=81=E8=A3=85=E6=8B=B3=E6=8E=A2=E6=8A=A5?=
=?UTF-8?q?=E4=BB=B7=E8=AF=B7=E6=B1=82?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../OnlinePurchase/PreviewOrderResponse.cs | 5 ++
.../Purchase/1688PreviewPurchaseViewModel.cs | 6 ++
.../BBWY.Server.Business.csproj | 1 +
.../PlatformSDK/QuanTanBusiness.cs | 58 +++++++++++++++++++
.../PurchaseOrder/PurchaseOrderBusiness.cs | 2 -
QuanTan.SDK/Client/BaseClient.cs | 1 -
.../Order/QuanTanPreviewOrderRequest.cs | 2 +-
QuanTan.SDK/QuanTan.SDK.csproj | 3 +-
8 files changed, 73 insertions(+), 5 deletions(-)
create mode 100644 BBWY.Server.Business/PlatformSDK/QuanTanBusiness.cs
diff --git a/BBWY.Client/Models/APIModel/Response/PurchaseOrder/OnlinePurchase/PreviewOrderResponse.cs b/BBWY.Client/Models/APIModel/Response/PurchaseOrder/OnlinePurchase/PreviewOrderResponse.cs
index 845a2611..5ae41827 100644
--- a/BBWY.Client/Models/APIModel/Response/PurchaseOrder/OnlinePurchase/PreviewOrderResponse.cs
+++ b/BBWY.Client/Models/APIModel/Response/PurchaseOrder/OnlinePurchase/PreviewOrderResponse.cs
@@ -21,5 +21,10 @@
/// 交易方式
///
public OrderTradeTypeResponse OrderTradeType { get; set; }
+
+ ///
+ /// 扩展数据
+ ///
+ public string Extensions { get; set; }
}
}
diff --git a/BBWY.Client/ViewModels/Purchase/1688PreviewPurchaseViewModel.cs b/BBWY.Client/ViewModels/Purchase/1688PreviewPurchaseViewModel.cs
index f2c1d4ff..d7026e40 100644
--- a/BBWY.Client/ViewModels/Purchase/1688PreviewPurchaseViewModel.cs
+++ b/BBWY.Client/ViewModels/Purchase/1688PreviewPurchaseViewModel.cs
@@ -71,6 +71,10 @@ namespace BBWY.Client.ViewModels
private string prucahseRemark;
private PurchaseOrderMode purchaseOrderMode = PurchaseOrderMode.代发;
private string tradeMode;
+ ///
+ /// 扩展数据,暂用于拳探
+ ///
+ private string extensions;
public _1688PreviewPurchaseViewModel(OneBoundAPIService oneBoundAPIService,
PurchaseService purchaseService,
@@ -159,6 +163,7 @@ namespace BBWY.Client.ViewModels
purchaseSchemeList.Clear();
PurchaseSchemeProductSkuList.Clear();
tradeMode = string.Empty;
+ extensions = string.Empty;
ProductAmount = FreightAmount = TotalAmount = 0;
ContactName = Address = Mobile = Province = City = County = Town = PrucahseRemark = string.Empty;
}
@@ -245,6 +250,7 @@ namespace BBWY.Client.ViewModels
FreightAmount = r.Data.FreightAmount;
TotalAmount = r.Data.TotalAmount;
tradeMode = r.Data.OrderTradeType?.Code;
+ extensions = r.Data.Extensions;
});
}
diff --git a/BBWY.Server.Business/BBWY.Server.Business.csproj b/BBWY.Server.Business/BBWY.Server.Business.csproj
index 58ecf8d7..842fec8b 100644
--- a/BBWY.Server.Business/BBWY.Server.Business.csproj
+++ b/BBWY.Server.Business/BBWY.Server.Business.csproj
@@ -25,6 +25,7 @@
+
diff --git a/BBWY.Server.Business/PlatformSDK/QuanTanBusiness.cs b/BBWY.Server.Business/PlatformSDK/QuanTanBusiness.cs
new file mode 100644
index 00000000..91b269e8
--- /dev/null
+++ b/BBWY.Server.Business/PlatformSDK/QuanTanBusiness.cs
@@ -0,0 +1,58 @@
+using BBWY.Common.Http;
+using BBWY.Common.Models;
+using BBWY.Server.Model;
+using BBWY.Server.Model.Dto;
+using Microsoft.Extensions.Caching.Memory;
+using QuanTan.SDK.Client;
+using QuanTan.SDK.Model;
+using System.Linq;
+namespace BBWY.Server.Business
+{
+ public class QuanTanBusiness : PlatformSDKBusiness
+ {
+ public override Enums.Platform Platform => Enums.Platform.拳探;
+ private QuanTanOrderClient quanTanOrderClient;
+
+ public QuanTanBusiness(IMemoryCache memoryCache, NLogManager nLogManager, RestApiService restApiService) : base(memoryCache, nLogManager)
+ {
+ this.quanTanOrderClient = new QuanTanOrderClient(restApiService);
+ }
+
+ public override PreviewOrderResponse PreviewOrder(PreviewOrderReuqest previewOrderReuqest)
+ {
+ var quantanPreviewOrderRequest = new QuanTanPreviewOrderRequest()
+ {
+ userAccount = previewOrderReuqest.AppToken,
+ receipt = new QuanTanPreviewOrderReceipt()
+ {
+ province = previewOrderReuqest.Consignee.Province,
+ city = previewOrderReuqest.Consignee.City,
+ area = previewOrderReuqest.Consignee.County,
+ town = previewOrderReuqest.Consignee.Town,
+ address = previewOrderReuqest.Consignee.Address,
+ phone = previewOrderReuqest.Consignee.Mobile,
+ realName = previewOrderReuqest.Consignee.ContactName
+ },
+ buyInfo = previewOrderReuqest.CargoParamList.Select(p => new QuanTanPreviewOrderProduct()
+ {
+ productId = p.ProductId,
+ productSku = p.SkuId,
+ quantity = p.Quantity
+ }).ToList()
+ };
+
+ var qtResponse = quanTanOrderClient.PreviewOrder(quantanPreviewOrderRequest, previewOrderReuqest.AppKey, previewOrderReuqest.AppSecret);
+ if (qtResponse.Status != 200)
+ throw new BusinessException(qtResponse.Message);
+
+ return new PreviewOrderResponse()
+ {
+ TotalAmount = qtResponse.Data.TotalPrice,
+ FreightAmount = qtResponse.Data.PostagePrice,
+ ProductAmount = qtResponse.Data.ProductPrice,
+ Extensions = qtResponse.Data.CartIds
+ //OrderTradeType= new OrderTradeTypeResponse()
+ };
+ }
+ }
+}
diff --git a/BBWY.Server.Business/PurchaseOrder/PurchaseOrderBusiness.cs b/BBWY.Server.Business/PurchaseOrder/PurchaseOrderBusiness.cs
index fc0ae0e3..ed3392f9 100644
--- a/BBWY.Server.Business/PurchaseOrder/PurchaseOrderBusiness.cs
+++ b/BBWY.Server.Business/PurchaseOrder/PurchaseOrderBusiness.cs
@@ -119,8 +119,6 @@ namespace BBWY.Server.Business
public PreviewOrderResponse PreviewPurchaseOrder(PreviewOrderReuqest previewOrderReuqest)
{
- if (previewOrderReuqest.Platform != Model.Enums.Platform.阿里巴巴)
- throw new NotImplementedException();
return platformSDKBusinessList.FirstOrDefault(p => p.Platform == previewOrderReuqest.Platform).PreviewOrder(previewOrderReuqest);
}
diff --git a/QuanTan.SDK/Client/BaseClient.cs b/QuanTan.SDK/Client/BaseClient.cs
index 5832ab9c..528dc052 100644
--- a/QuanTan.SDK/Client/BaseClient.cs
+++ b/QuanTan.SDK/Client/BaseClient.cs
@@ -2,7 +2,6 @@
using Newtonsoft.Json;
using QuanTan.SDK.Extensions;
using QuanTan.SDK.Model;
-using QuanTan.SDK.Model;
using System;
using System.Net.Http;
diff --git a/QuanTan.SDK/Model/Request/Order/QuanTanPreviewOrderRequest.cs b/QuanTan.SDK/Model/Request/Order/QuanTanPreviewOrderRequest.cs
index 97410a19..94aa29b6 100644
--- a/QuanTan.SDK/Model/Request/Order/QuanTanPreviewOrderRequest.cs
+++ b/QuanTan.SDK/Model/Request/Order/QuanTanPreviewOrderRequest.cs
@@ -28,7 +28,7 @@ namespace QuanTan.SDK.Model
public string city { get; set; }
- public int area { get; set; }
+ public string area { get; set; }
public string town { get; set; }
diff --git a/QuanTan.SDK/QuanTan.SDK.csproj b/QuanTan.SDK/QuanTan.SDK.csproj
index a5ff008a..fa845a9f 100644
--- a/QuanTan.SDK/QuanTan.SDK.csproj
+++ b/QuanTan.SDK/QuanTan.SDK.csproj
@@ -1,8 +1,9 @@
- netstandard2.1
+ netstandard2.0
enable
+ 8.0