using BBWY.Server.Business;
using BBWY.Server.Model.Dto;
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc;

namespace BBWY.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 SyncAllShopOrder()
        {
            orderSyncBusiness.SyncAllShopOrder();
        }

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

        /// <summary>
        /// 根据日期同步
        /// </summary>
        /// <param name="syncOrderByDateRequest"></param>
        [HttpPost]
        public void SyncOrderByDate([FromBody]SyncOrderByDateRequest syncOrderByDateRequest)
        { 
            orderSyncBusiness.SyncOrderByDate(syncOrderByDateRequest);
        }
    }
}