using BBWYB.Client.Models; using BBWYB.Common.Http; using BBWYB.Common.Models; using System; using System.Collections.Generic; using System.Linq; using System.Net.Http; namespace BBWYB.Client.APIServices { public class PurchaseOrderService : BaseApiService, IDenpendency { public PurchaseOrderService(RestApiService restApiService, GlobalContext globalContext) : base(restApiService, globalContext) { } /// /// 预览订单 /// /// /// /// public ApiResponse PreviewPurchaseOrder(Consignee consignee, IList purchaseSchemeProductSkuList, Platform purchasePlatform, PurchaseAccount purchaseAccount, PurchaseOrderMode purchaseOrderMode) { return SendRequest(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, AppKey = purchaseAccount.AppKey, AppSecret = purchaseAccount.AppSecret, AppToken = purchaseAccount.AppToken, SaveResponseLog = true }, null, HttpMethod.Post); } /// /// 创建采购单 /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// public ApiResponse FastCreateOrder(Consignee consignee, IList purchaseSchemeProductSkuList, Platform purchasePlatform, PurchaseAccount purchaseAccount, PurchaseOrderMode purchaseOrderMode, string tradeMode, string remark, string orderId, long shopId, long purchaseAccountId, string buyerAccount, string sellerAccount, string purchaserId, decimal platformCommissionRatio, string extensions) { return SendRequest(globalContext.BBYWApiHost, "api/purchaseOrder/NewFastCreateOrder", 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, AppKey = purchaseAccount.AppKey, AppSecret = purchaseAccount.AppSecret, AppToken = purchaseAccount.AppToken, SaveResponseLog = true, tradeMode, remark, orderId, shopId, purchaseAccountId, buyerAccount, sellerAccount, purchaserId, platformCommissionRatio, extensions }, null, HttpMethod.Post); } /// /// 查询审核采购单 /// /// /// /// /// public ApiResponse> GetAuditPurchaseOrderList(IList shopIdList, DateTime startDate, DateTime endDate) { return SendRequest>(globalContext.BBYWApiHost, "Api/PurchaseOrder/GetAuditPurchaseOrderList", new { startDate, endDate, shopIdList }, null, HttpMethod.Post); } } }