8 changed files with 73 additions and 5 deletions
@ -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()
|
|||
}; |
|||
} |
|||
} |
|||
} |
Loading…
Reference in new issue