|
|
|
using BBWY.Server.Business;
|
|
|
|
using BBWY.Server.Model.Dto;
|
|
|
|
using Microsoft.AspNetCore.Http;
|
|
|
|
using Microsoft.AspNetCore.Mvc;
|
|
|
|
using System.Collections.Generic;
|
|
|
|
using System.Threading.Tasks;
|
|
|
|
|
|
|
|
namespace BBWY.Server.API.Controllers
|
|
|
|
{
|
|
|
|
public class OrderController : BaseApiController
|
|
|
|
{
|
|
|
|
private OrderBusiness orderBusiness;
|
|
|
|
private TaskSchedulerManager taskSchedulerManager;
|
|
|
|
public OrderController(IHttpContextAccessor httpContextAccessor, OrderBusiness orderBusiness, TaskSchedulerManager taskSchedulerManager) : base(httpContextAccessor)
|
|
|
|
{
|
|
|
|
this.orderBusiness = orderBusiness;
|
|
|
|
this.taskSchedulerManager = taskSchedulerManager;
|
|
|
|
}
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// 获取订单列表
|
|
|
|
/// </summary>
|
|
|
|
/// <param name="searchOrderRequest"></param>
|
|
|
|
/// <returns></returns>
|
|
|
|
[HttpPost]
|
|
|
|
public OrderListResponse GetOrderList([FromBody] SearchOrderRequest searchOrderRequest)
|
|
|
|
{
|
|
|
|
return orderBusiness.GetOrderList(searchOrderRequest);
|
|
|
|
}
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// 订单导出
|
|
|
|
/// </summary>
|
|
|
|
/// <param name="searchOrderRequest"></param>
|
|
|
|
/// <returns></returns>
|
|
|
|
[HttpPost]
|
|
|
|
public IList<ExportOrderResponse> ExportOrderList([FromBody] SearchOrderRequest searchOrderRequest)
|
|
|
|
{
|
|
|
|
return orderBusiness.ExportOrderList(searchOrderRequest);
|
|
|
|
}
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// 获取单个订单详情
|
|
|
|
/// </summary>
|
|
|
|
/// <param name="orderId"></param>
|
|
|
|
/// <returns></returns>
|
|
|
|
[HttpGet("{orderId}")]
|
|
|
|
public OrderResponse GetOrderById([FromRoute] string orderId)
|
|
|
|
{
|
|
|
|
return orderBusiness.GetOrderById(orderId);
|
|
|
|
}
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// 根据订单Id获取归属店铺
|
|
|
|
/// </summary>
|
|
|
|
/// <param name="orderIdList"></param>
|
|
|
|
/// <returns></returns>
|
|
|
|
[HttpPost]
|
|
|
|
public IList<OrderBelongShopResponse> GetOrderBelongShop([FromBody] IList<string> orderIdList)
|
|
|
|
{
|
|
|
|
return orderBusiness.GetOrderBelongShop(orderIdList);
|
|
|
|
}
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// 解密收货人信息
|
|
|
|
/// </summary>
|
|
|
|
/// <param name="decryptConsigneeRequest"></param>
|
|
|
|
/// <returns></returns>
|
|
|
|
[HttpPost]
|
|
|
|
public ConsigneeSimpleResponse DecryptConsignee([FromBody] DecryptConsigneeRequest decryptConsigneeRequest)
|
|
|
|
{
|
|
|
|
return orderBusiness.DecryptConsignee(decryptConsigneeRequest);
|
|
|
|
}
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// 自动计算成本
|
|
|
|
/// </summary>
|
|
|
|
/// <param name="autoCalculationCostRequest"></param>
|
|
|
|
[HttpPost]
|
|
|
|
public void AutoCalculationCost([FromBody] AutoCalculationCostRequest autoCalculationCostRequest)
|
|
|
|
{
|
|
|
|
orderBusiness.AutoCalculationCost(autoCalculationCostRequest);
|
|
|
|
}
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// 手动计算成本
|
|
|
|
/// </summary>
|
|
|
|
/// <param name="manualCalculationCostRequest"></param>
|
|
|
|
[HttpPost]
|
|
|
|
public void ManualCalculationCost([FromBody] ManualCalculationCostRequest manualCalculationCostRequest)
|
|
|
|
{
|
|
|
|
orderBusiness.ManualCalculationCost(manualCalculationCostRequest);
|
|
|
|
}
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// 设置刷单成本
|
|
|
|
/// </summary>
|
|
|
|
/// <param name="sdCalculationCostRequest"></param>
|
|
|
|
[HttpPost]
|
|
|
|
public void SDCalculationCost([FromBody] SDCalculationCostRequest sdCalculationCostRequest)
|
|
|
|
{
|
|
|
|
orderBusiness.SDCalculationCost(sdCalculationCostRequest);
|
|
|
|
}
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// 关联采购单
|
|
|
|
/// </summary>
|
|
|
|
/// <param name="relationPurchaseOrderRequest"></param>
|
|
|
|
[HttpPost]
|
|
|
|
public void RelationPurchaseOrder([FromBody] RelationPurchaseOrderRequest relationPurchaseOrderRequest)
|
|
|
|
{
|
|
|
|
orderBusiness.RelationPurchaseOrder(relationPurchaseOrderRequest);
|
|
|
|
}
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// 出库
|
|
|
|
/// </summary>
|
|
|
|
/// <param name="outStockRequest"></param>
|
|
|
|
[HttpPost]
|
|
|
|
public void OutStock([FromBody] OutStockRequest outStockRequest)
|
|
|
|
{
|
|
|
|
orderBusiness.OutStock(outStockRequest);
|
|
|
|
}
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// 修改商家备注
|
|
|
|
/// </summary>
|
|
|
|
/// <param name="editVenderRemarkRequest"></param>
|
|
|
|
[HttpPost]
|
|
|
|
public void EditVenderRemark([FromBody] EditVenderRemarkRequest editVenderRemarkRequest)
|
|
|
|
{
|
|
|
|
orderBusiness.EditVenderRemark(editVenderRemarkRequest);
|
|
|
|
}
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// 指定时间范围的订单同步
|
|
|
|
/// </summary>
|
|
|
|
/// <param name="syncOrderByDateRequest"></param>
|
|
|
|
[HttpPost]
|
|
|
|
public void SyncOrderByDate([FromBody] SyncOrderByDateRequest syncOrderByDateRequest)
|
|
|
|
{
|
|
|
|
orderBusiness.SyncOrderByDate(syncOrderByDateRequest);
|
|
|
|
}
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// 订单同步
|
|
|
|
/// </summary>
|
|
|
|
/// <param name="shopId"></param>
|
|
|
|
[HttpPost("{shopId}")]
|
|
|
|
public void SyncOrder([FromRoute] long shopId)
|
|
|
|
{
|
|
|
|
Task.Factory.StartNew(() => orderBusiness.SyncOrder(shopId, string.Empty), System.Threading.CancellationToken.None, TaskCreationOptions.LongRunning, taskSchedulerManager.SyncOrderTaskScheduler);
|
|
|
|
}
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// 订单同步
|
|
|
|
/// </summary>
|
|
|
|
/// <param name="shopId"></param>
|
|
|
|
/// <param name="orderId"></param>
|
|
|
|
[HttpPost("{shopId}/{orderId}")]
|
|
|
|
public void SyncOrder([FromRoute] long shopId, [FromRoute] string orderId)
|
|
|
|
{
|
|
|
|
|
|
|
|
Task.Factory.StartNew(() => orderBusiness.SyncOrder(shopId, orderId), System.Threading.CancellationToken.None, TaskCreationOptions.LongRunning, taskSchedulerManager.SyncOrderTaskScheduler);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|