|
|
@ -15,6 +15,45 @@ namespace BBWYB.Client.APIServices |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// 按采购商分组组装采购产品参数
|
|
|
|
/// </summary>
|
|
|
|
/// <param name="productSkuWithSchemeList"></param>
|
|
|
|
/// <returns></returns>
|
|
|
|
private IList<object> CombineCargoParamGroup(IList<ProductSkuWithScheme> productSkuWithSchemeList) |
|
|
|
{ |
|
|
|
IList<object> cargoParamGroupList = new List<object>(); |
|
|
|
var purchaserGroups = productSkuWithSchemeList.GroupBy(s => s.PurchaserId); |
|
|
|
foreach (var purchaserGroup in purchaserGroups) |
|
|
|
{ |
|
|
|
var first = purchaserGroup.FirstOrDefault(); |
|
|
|
var cargoParamList = new List<object>(); |
|
|
|
foreach (var productSkuWithScheme in purchaserGroup) |
|
|
|
{ |
|
|
|
foreach (var purchaseSchemeProductSku in productSkuWithScheme.PurchaseSchemeProductSkuList) |
|
|
|
{ |
|
|
|
cargoParamList.Add(new |
|
|
|
{ |
|
|
|
ProductId = purchaseSchemeProductSku.PurchaseProductId, |
|
|
|
SkuId = purchaseSchemeProductSku.PurchaseSkuId, |
|
|
|
SpecId = purchaseSchemeProductSku.PurchaseSkuSpecId, |
|
|
|
Quantity = purchaseSchemeProductSku.ItemTotal, |
|
|
|
BelongSkuId = productSkuWithScheme.SkuId |
|
|
|
}); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
var cargoParamGroup = new |
|
|
|
{ |
|
|
|
PurchaserId = purchaserGroup.Key, |
|
|
|
first.PurchaserName, |
|
|
|
first.PurchasePlatform, |
|
|
|
cargoParamList |
|
|
|
}; |
|
|
|
cargoParamGroupList.Add(cargoParamGroup); |
|
|
|
} |
|
|
|
return cargoParamGroupList; |
|
|
|
} |
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// 预览订单
|
|
|
@ -22,25 +61,15 @@ namespace BBWYB.Client.APIServices |
|
|
|
/// <param name="consignee"></param>
|
|
|
|
/// <param name="purchaseSchemeProductSkuList"></param>
|
|
|
|
/// <returns></returns>
|
|
|
|
public ApiResponse<PreviewOrderResponse> PreviewPurchaseOrder(Consignee consignee, IList<PurchaseSchemeProductSku> purchaseSchemeProductSkuList, Platform purchasePlatform, PurchaseAccount purchaseAccount, PurchaseOrderMode purchaseOrderMode) |
|
|
|
public ApiResponse<PreviewOrderResponse> PreviewPurchaseOrder(Consignee consignee, IList<ProductSkuWithScheme> productSkuWithSchemeList, Platform purchasePlatform, PurchaseOrderMode purchaseOrderMode) |
|
|
|
{ |
|
|
|
var cargoParamGroupList = CombineCargoParamGroup(productSkuWithSchemeList); |
|
|
|
return SendRequest<PreviewOrderResponse>(globalContext.BBYWApiHost, "api/PurchaseOrder/PreviewPurchaseOrder", new |
|
|
|
{ |
|
|
|
purchaseOrderMode, |
|
|
|
consignee, |
|
|
|
CargoParamList = purchaseSchemeProductSkuList.Select(sku => new |
|
|
|
{ |
|
|
|
ProductId = sku.PurchaseProductId, |
|
|
|
SkuId = sku.PurchaseSkuId, |
|
|
|
SpecId = sku.PurchaseSkuSpecId, |
|
|
|
Quantity = sku.ItemTotal, |
|
|
|
BelongSkuId = sku.SkuId |
|
|
|
}), |
|
|
|
Platform = purchasePlatform, |
|
|
|
purchaseAccount.AppKey, |
|
|
|
purchaseAccount.AppSecret, |
|
|
|
purchaseAccount.AppToken, |
|
|
|
SaveResponseLog = true |
|
|
|
cargoParamGroupList, |
|
|
|
globalContext.User.Shop.PurchaseAccountList |
|
|
|
}, null, HttpMethod.Post); |
|
|
|
} |
|
|
|
|
|
|
@ -52,26 +81,18 @@ namespace BBWYB.Client.APIServices |
|
|
|
/// <param name="purchasePlatform"></param>
|
|
|
|
/// <param name="purchaseAccount"></param>
|
|
|
|
/// <param name="purchaseOrderMode"></param>
|
|
|
|
/// <param name="tradeMode"></param>
|
|
|
|
/// <param name="remark"></param>
|
|
|
|
/// <param name="orderId"></param>
|
|
|
|
/// <param name="shopId"></param>
|
|
|
|
/// <param name="purchaseAccountId"></param>
|
|
|
|
/// <param name="buyerAccount"></param>
|
|
|
|
/// <param name="sellerAccount"></param>
|
|
|
|
/// <param name="purchaserId"></param>
|
|
|
|
/// <param name="platformCommissionRatio"></param>
|
|
|
|
/// <param name="purchaserName"></param>
|
|
|
|
/// <param name="extensions"></param>
|
|
|
|
/// <returns></returns>
|
|
|
|
public ApiResponse<object> FastCreateOrder(Consignee consignee, |
|
|
|
IList<PurchaseSchemeProductSku> purchaseSchemeProductSkuList, |
|
|
|
Platform purchasePlatform, |
|
|
|
PurchaseAccount purchaseAccount, |
|
|
|
PurchaseOrderMode purchaseOrderMode, |
|
|
|
string remark, |
|
|
|
string orderId, |
|
|
|
long shopId, |
|
|
|
string purchaserName, |
|
|
|
string extensions) |
|
|
|
{ |
|
|
|
return SendRequest<object>(globalContext.BBYWApiHost, "api/purchaseOrder/CreatePurchaseOrder", new |
|
|
|