647556386
7 天以前 f29f358f589f5b1c2589c07b65845650be7aafef
ÏîÄ¿´úÂë/WMSÎÞ²Ö´¢°æ/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Outbound/OutboundPickingController.cs
@@ -1,4 +1,8 @@
using Microsoft.AspNetCore.Mvc;
using Autofac.Core;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc;
using System.Threading.Tasks;
using WIDESEA_Core;
using WIDESEA_Core.BaseController;
using WIDESEA_DTO.Outbound;
@@ -19,69 +23,133 @@
            _splitPackageService = splitPackageService;
            _outStockLockInfoService = outStockLockInfoService;
        }
        /// <summary>
        /// èŽ·å–æ‰˜ç›˜çš„å‡ºåº“çŠ¶æ€
        /// </summary>
        [HttpGet("GetPalletOutboundStatus")]
        public async Task<WebResponseContent> GetPalletOutboundStatus(string palletCode)
        {
            return await Service.GetPalletOutboundStatus(palletCode);
        }
        /// <summary>
        /// èŽ·å–æ‰˜ç›˜çš„é”å®šä¿¡æ¯
        /// </summary>
        [HttpGet("GetPalletLockInfos")]
        [HttpPost("GetPalletLockInfos")]
        public async Task<WebResponseContent> GetPalletLockInfos(string palletCode)
        {
            var lockInfos = await _outStockLockInfoService.GetPalletLockInfos(palletCode);
            return WebResponseContent.Instance.OK(null, lockInfos);
        }
        /// <summary>
        /// æ‹£é€‰ç¡®è®¤
        /// </summary>
        [HttpPost("ConfirmPicking")]
        public async Task<WebResponseContent> ConfirmPicking([FromBody] PickingConfirmRequest request)
        [HttpPost("unpicked-list")]
        public async Task<WebResponseContent> GetUnpickedList([FromBody] ConfirmPickingDto dto)
        {
            return await Service.ConfirmPicking(request);
            var lists= await Service.GetUnpickedList(dto.OrderNo, dto.PalletCode);
            return WebResponseContent.Instance.OK("", lists);
        }
        /// <summary>
        /// æ‹†åŒ…操作
        /// </summary>
        [HttpPost("SplitPackage")]
        public async Task<WebResponseContent> SplitPackage([FromBody] SplitPackageRequest request)
        [HttpPost("picked-list")]
        public async Task<WebResponseContent> GetPickedList([FromBody] ConfirmPickingDto dto)
        {
            return await _splitPackageService.SplitPackage(request);
            var lists = await Service.GetPickedList(dto.OrderNo, dto.PalletCode);
            return WebResponseContent.Instance.OK("", lists);
        }
        ///// <summary>
        ///// ç›´æŽ¥å‡ºåº“
        ///// </summary>
        //[HttpPost("DirectOutbound")]
        //public async Task<WebResponseContent> DirectOutbound([FromBody] DirectOutboundRequest request)
        [HttpPost("confirm-picking")]
        public async Task<WebResponseContent> ConfirmPicking([FromBody] ConfirmPickingDto dto)
        {
            return await Service.ConfirmPicking(dto.OrderNo, dto.PalletCode, dto.Barcode);
        }
        [HttpPost("picking-summary")]
        public async Task<WebResponseContent> GetPickingSummary([FromBody] ConfirmPickingDto dto)
        {
            var data = await Service.GetPickingSummary(dto);
            return WebResponseContent.Instance.OK("", data);
        }
        [HttpPost("split-package")]
        public async Task<WebResponseContent> SplitPackage([FromBody] SplitPackageDto dto)
        {
            return  await _splitPackageService.SplitPackage(dto);
        }
        [HttpPost("revert-split-package")]
        public async Task<WebResponseContent> RevertSplitPackage([FromBody] RevertSplitDto dto)
        {
           return  await _splitPackageService.RevertSplitPackage(dto.OriginalBarcode);
        }
        [HttpPost("split-package-info")]
        public async Task<WebResponseContent> GetSplitPackageInfo([FromBody] ConfirmPickingDto dto)
        {
          return  await _splitPackageService.GetSplitPackageInfo(dto.OrderNo, dto.PalletCode, dto.Barcode);
        }
        [HttpPost("return-to-stock")]
        public async Task<WebResponseContent> ReturnToStock([FromBody] ConfirmPickingDto dto)
        {
            return await Service.ReturnRemaining(dto.OrderNo, dto.PalletCode, "");
        }
        [HttpPost("remove-empty-pallet")]
        public async Task<WebResponseContent> RemoveEmptyPallet ([FromBody] ConfirmPickingDto dto)
        {
            return await Service.RemoveEmptyPallet(dto.OrderNo, dto.PalletCode);
        }
        //[HttpPost("direct-outbound")]
        //public async Task<WebResponseContent> DirectOutbound([FromBody] DirectOutboundRequest dto)
        //{
        //    return await Service.DirectOutbound(request);
        //}
        //   return await Service.DirectOutbound(dto);
        /// <summary>
        /// èŽ·å–æ‹£é€‰åŽ†å²
        /// </summary>
        [HttpGet("GetPickingHistory")]
        public async Task<WebResponseContent> GetPickingHistory(int orderId)
        {
            var history = await Service.GetPickingHistory(orderId);
            return WebResponseContent.Instance.OK(null, history);
        }
        //}
        /// <summary>
        /// æ’¤é”€æ‹£é€‰
        /// </summary>
        [HttpPost("CancelPicking")]
        public async Task<WebResponseContent> CancelPicking([FromBody] CancelPickingRequest request)
        public async Task<WebResponseContent> CancelPicking([FromBody] ConfirmPickingDto dto)
        {
            return await Service.CancelPicking(request);
            return await Service.CancelPicking(dto.OrderNo,dto.PalletCode,dto.Barcode);
        }
        [HttpPost,HttpGet, Route("GetAvailablePurchaseOrders"),AllowAnonymous]
        public WebResponseContent GetAvailablePurchaseOrders()
        {
            return  Service.GetAvailablePurchaseOrders();
        }
        [HttpPost, HttpGet, Route("GetAvailablePickingOrders"),AllowAnonymous]
        public WebResponseContent GetAvailablePickingOrders()
        {
            return Service.GetAvailablePickingOrders();
        }
        [HttpPost, HttpGet, Route("BarcodeValidate"), AllowAnonymous]
        public WebResponseContent BarcodeValidate([FromBody] NoStockOutModel noStockOut)
        {
            return Service.BarcodeValidate(noStockOut);
        }
        [HttpPost, HttpGet, Route("DeleteBarcode"), AllowAnonymous]
        public WebResponseContent DeleteBarcode([FromBody] NoStockOutModel noStockOut)
        {
            return Service.DeleteBarcode(noStockOut);
        }
        [HttpPost, HttpGet, Route("NoStockOutSubmit"), AllowAnonymous]
        public async Task<WebResponseContent> NoStockOutSubmit([FromBody] NoStockOutSubmit noStockOutSubmit)
        {
            return await Service.NoStockOutSubmit(noStockOutSubmit);
        }
        [HttpPost, HttpGet, Route("GetPurchaseOrderByBarcode"), AllowAnonymous]
        public WebResponseContent GetPurchaseOrderByBarcode(string barcode)
        {
            return Service.GetPurchaseOrderByBarcode(barcode);
        }
    }
}