using BBWYB.Server.Business.Sync;
using Microsoft.AspNetCore.Mvc;

namespace BBWYB.Server.API.Controllers
{

    public class OrderSyncController : BaseApiController
    {
        private OrderSyncBusiness orderSyncBusiness;
        public OrderSyncController(IHttpContextAccessor httpContextAccessor, OrderSyncBusiness orderSyncBusiness) : base(httpContextAccessor)
        {
            this.orderSyncBusiness = orderSyncBusiness;
        }

        /// <summary>
        /// 全店订单同步
        /// </summary>
        [HttpPost]
        public void AutoOrderSync()
        {
            orderSyncBusiness.AutoOrderSync();
        }

        /// <summary>
        /// 指定店铺和订单同步
        /// </summary>
        /// <param name="shopId"></param>
        /// <param name="orderId"></param>
        [HttpPost("{shopId}/{orderId}")]
        public void ManualOrderSync([FromRoute] long shopId, [FromRoute] string orderId)
        {
            orderSyncBusiness.ManualOrderSync(shopId, orderId, null, null);
        }

        /// <summary>
        /// 根据时间同步订单
        /// </summary>
        /// <param name="shopId"></param>
        /// <param name="startTime"></param>
        /// <param name="endTime"></param>
        [HttpPost]
        public void ManualOrderSyncByTime([FromQuery] long shopId, [FromQuery] DateTime startTime, [FromQuery] DateTime endTime)
        {
            orderSyncBusiness.ManualOrderSync(shopId, startTime, endTime);
        }
    } 
}