using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc;
using WIDESEA_Core;
using WIDESEA_Core.BaseController;
using WIDESEA_IInboundService;
using WIDESEA_Model.Models;
namespace WIDESEA_WMSServer.Controllers.Inbound
{
    /// 
    /// 收货单
    /// 
    [Route("api/[controller]")]
    [ApiController]
    public class ReceiveOrderController : ApiBaseController
    {
        public ReceiveOrderController(IReceiveOrderService service) : base(service)
        {
        }
        /// 
        /// 根据收货单创建入库单
        /// 
        /// 收货单编号
        /// 
        [HttpPost, HttpGet, Route("CreateInboundOrder")]
        public WebResponseContent CreateInboundOrder(int receiveOrderId)
        {
            return Service.CreateInboundOrder(receiveOrderId);
        }
        /// 
        /// 收货完成回传ERP
        /// 
        /// 
        /// 
        [HttpPost, HttpGet, Route("FeedbackReceiveOrder")]
        public WebResponseContent FeedbackReceiveOrder(int orderId)
        {
            return Service.FeedbackReceiveOrder(orderId);
        }
        /// 查询收货单信息
        /// 
        /// 
        [HttpPost, HttpGet, Route("GetReceiveOrders")]
        public WebResponseContent GetReceiveOrders([FromBody] SaveModel saveModel)
        {
            return Service.GetReceiveOrders(saveModel);
        }
        /// 
        /// 收货
        /// 
        /// 
        /// 
        /// 
        [HttpPost, HttpGet, Route("ReceiveAllOrder")]
        public WebResponseContent ReceiveAllOrder(int purchaseOrderId, string lotNo)
        {
            return Service.ReceiveAllOrder(purchaseOrderId, lotNo);
        }
    }
}