步步为盈
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

167 lines
6.6 KiB

using BBWY.Server.Business;
using BBWY.Server.Model.Dto;
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc;
using Newtonsoft.Json.Linq;
using System.Collections.Generic;
using System.Linq;
namespace BBWY.Server.API.Controllers
{
/// <summary>
/// 平台SDK控制器,只能在对应的(云鼎/聚石塔等)服务器调用
/// </summary>
[Produces("application/json")]
[Route("Api/[Controller]/[Action]")]
[ApiController]
public class PlatformSDKController : ControllerBase
{
private IEnumerable<PlatformSDKBusiness> platformSDKBusinessList;
public PlatformSDKController(IEnumerable<PlatformSDKBusiness> platformSDKBusinessList)
{
this.platformSDKBusinessList = platformSDKBusinessList;
}
/// <summary>
/// 获取商家信息
/// </summary>
/// <param name="platformRequest"></param>
/// <returns></returns>
[HttpPost]
public VenderResponse GetVenderInfo([FromBody] PlatformRequest platformRequest)
{
return platformSDKBusinessList.FirstOrDefault(p => p.Platform == platformRequest.Platform).GetVenderInfo(platformRequest);
}
/// <summary>
/// 获取商品列表
/// </summary>
/// <param name="searchProductRequest"></param>
/// <returns></returns>
[HttpPost]
public ProductListResponse GetProductList([FromBody] SearchProductRequest searchProductRequest)
{
return platformSDKBusinessList.FirstOrDefault(p => p.Platform == searchProductRequest.Platform).GetProductList(searchProductRequest);
}
/// <summary>
/// 获取Sku列表
/// </summary>
/// <param name="searchProductSkuRequest"></param>
/// <returns></returns>
[HttpPost]
public IList<ProductSkuResponse> GetProductSkuList([FromBody] SearchProductSkuRequest searchProductSkuRequest)
{
return platformSDKBusinessList.FirstOrDefault(p => p.Platform == searchProductSkuRequest.Platform).GetProductSkuList(searchProductSkuRequest);
}
/// <summary>
/// 获取简单Sku列表 只包含SkuId和图片
/// </summary>
/// <param name="searchProductSkuRequest"></param>
/// <returns></returns>
[HttpPost]
public IList<SimpleProductSkuResponse> GetSimpleProductSkuList([FromBody] SearchProductSkuRequest searchProductSkuRequest)
{
return platformSDKBusinessList.FirstOrDefault(p => p.Platform == searchProductSkuRequest.Platform).GetSimpleProductSkuList(searchProductSkuRequest);
}
/// <summary>
/// 获取订单列表
/// </summary>
/// <param name="searchOrderRequest"></param>
/// <returns></returns>
[HttpPost]
public IList<JToken> GetOrderList([FromBody] SearchPlatformOrderRequest searchOrderRequest)
{
return platformSDKBusinessList.FirstOrDefault(p => p.Platform == searchOrderRequest.Platform).GetOrderList(searchOrderRequest);
}
/// <summary>
/// 解密订单收货人信息
/// </summary>
/// <param name="decryptConsigneeRequest"></param>
/// <returns></returns>
[HttpPost]
public ConsigneeSimpleResponse DecryptConsignee([FromBody] DecryptConsigneeRequest decryptConsigneeRequest)
{
return platformSDKBusinessList.FirstOrDefault(p => p.Platform == decryptConsigneeRequest.Platform).DecryptConsignee(decryptConsigneeRequest);
}
/// <summary>
/// 修改订单备注
/// </summary>
/// <param name="editVenderRemarkRequest"></param>
[HttpPost]
public void EditVenderRemark([FromBody] EditVenderRemarkRequest editVenderRemarkRequest)
{
platformSDKBusinessList.FirstOrDefault(p => p.Platform == editVenderRemarkRequest.Platform).EditVenderRemark(editVenderRemarkRequest);
}
/// <summary>
/// 获取物流公司列表
/// </summary>
/// <param name="platformRequest"></param>
/// <returns></returns>
[HttpPost]
public IList<LogisticsResponse> GetLogisticsList([FromBody] PlatformRequest platformRequest)
{
return platformSDKBusinessList.FirstOrDefault(p => p.Platform == platformRequest.Platform).GetLogisticsList(platformRequest);
}
/// <summary>
/// 获取物流单号
/// </summary>
/// <param name="queryOrderWayBillNoRequest"></param>
/// <returns></returns>
[HttpPost]
public WayBillNoResponse GetWayBillNoByOrderId(QueryOrderWayBillNoRequest queryOrderWayBillNoRequest)
{
return platformSDKBusinessList.FirstOrDefault(p => p.Platform == queryOrderWayBillNoRequest.Platform).GetWayBillNoByOrderId(queryOrderWayBillNoRequest);
}
/// <summary>
/// 出库发货
/// </summary>
/// <param name="outStockRequest"></param>
[HttpPost]
public void OutStock([FromBody] OutStockRequest outStockRequest)
{
platformSDKBusinessList.FirstOrDefault(p => p.Platform == outStockRequest.Platform).OutStock(outStockRequest);
}
/// <summary>
/// 订单预览
/// </summary>
/// <param name="previewOrderReuqest"></param>
/// <returns></returns>
[HttpPost]
public PreviewOrderResponse PreviewOrder([FromBody] PreviewOrderReuqest previewOrderReuqest)
{
return platformSDKBusinessList.FirstOrDefault(p => p.Platform == previewOrderReuqest.Platform).PreviewOrder(previewOrderReuqest);
}
/// <summary>
/// 获取订单简单信息
/// </summary>
/// <param name="getOrderInfoRequest"></param>
/// <returns></returns>
[HttpPost]
public OnlinePurchaseOrderSimpleResponse GetOrderSimpleInfo([FromBody] GetOrderInfoRequest getOrderInfoRequest)
{
return platformSDKBusinessList.FirstOrDefault(p => p.Platform == getOrderInfoRequest.Platform).GetOrderSimpleInfo(getOrderInfoRequest);
}
/// <summary>
/// 获取退款单列表
/// </summary>
/// <param name="searchRefundPlatformOrderRequest"></param>
/// <returns></returns>
[HttpPost]
public JArray GetRefundList([FromBody] SearchRefundPlatformOrderRequest searchRefundPlatformOrderRequest)
{
return platformSDKBusinessList.FirstOrDefault(p => p.Platform == searchRefundPlatformOrderRequest.Platform).GetRefundList(searchRefundPlatformOrderRequest);
}
}
}