using BBWY.Server.Business;
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc;
using System;

namespace BBWY.Server.API.Controllers
{

    public class OrderSkuSaleDetailSyncController : BaseApiController
    {
        private OrderSkuSaleDetailSyncBusiness orderSkuSaleDetailSyncBusiness;

        public OrderSkuSaleDetailSyncController(IHttpContextAccessor httpContextAccessor, OrderSkuSaleDetailSyncBusiness orderSkuSaleDetailSyncBusiness) : base(httpContextAccessor)
        {
            this.orderSkuSaleDetailSyncBusiness = orderSkuSaleDetailSyncBusiness;
        }

        /// <summary>
        /// 同步指定店铺指定日期的sku销量
        /// </summary>
        /// <param name="shopId"></param>
        /// <param name="startDate"></param>
        /// <param name="endDate"></param>
        [HttpGet]
        public void SyncOrderSkuSaleDetail([FromQuery] long shopId, [FromQuery] DateTime startDate, [FromQuery] DateTime endDate)
        {
            orderSkuSaleDetailSyncBusiness.SyncOrderSkuSaleDetail(shopId, startDate, endDate);
        }

        /// <summary>
        /// 同步全店指定日期的sku销量
        /// </summary>
        /// <param name="startDate"></param>
        /// <param name="endDate"></param>
        [HttpGet]
        public void SyncAllShopOrderSkuSaleDetail(DateTime startDate, DateTime endDate)
        {
            orderSkuSaleDetailSyncBusiness.SyncAllShopOrderSkuSaleDetail(startDate, endDate);
        }

        /// <summary>
        /// 同步全店昨日的sku销量
        /// </summary>
        [HttpGet]
        public void SyncAllShopOrderSkuSaleDetailYesterDay()
        {
            var yesterDate = DateTime.Now.Date.AddDays(-1);
            orderSkuSaleDetailSyncBusiness.SyncAllShopOrderSkuSaleDetail(yesterDate, yesterDate);
        }
    }
}