wanshenmean
2026-03-12 f56441867f2cc77567f97a92348a5d878f0dca05
Code/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/TaskInfo/TaskController.cs
@@ -4,7 +4,7 @@
using WIDESEA_Common.CommonEnum;
using WIDESEA_Core;
using WIDESEA_Core.BaseController;
using WIDESEA_DTO;
using WIDESEA_DTO.GradingMachine;
using WIDESEA_DTO.Stock;
using WIDESEA_DTO.Task;
using WIDESEA_ITaskInfoService;
@@ -28,10 +28,98 @@
        /// </summary>
        /// <param name="taskDto"></param>
        /// <returns></returns>
        [HttpPost("CreateTaskInbound"),AllowAnonymous]
        [HttpGet, HttpPost, Route("CreateTaskInbound"),AllowAnonymous]
        public async Task<WebResponseContent?> CreateTaskInboundAsync([FromBody] CreateTaskDto taskDto)
        {
            return await Service.CreateTaskInboundAsync(taskDto);
        }
        /// <summary>
        /// 根据指定的任务详情异步创建新的出库任务
        /// </summary>
        /// <param name="taskDto"></param>
        /// <returns></returns>
        [HttpGet, HttpPost, Route("CreateTaskOutbound"), AllowAnonymous]
        public async Task<WebResponseContent?> CreateTaskOutboundAsync([FromBody] CreateTaskDto taskDto)
        {
            return await Service.CreateTaskOutboundAsync(taskDto);
        }
        /// <summary>
        /// 获取可入库货位
        /// </summary>
        /// <param name="taskDto"></param>
        /// <returns></returns>
        [HttpGet, HttpPost, Route("GetTasksLocation"), AllowAnonymous]
        public async Task<WebResponseContent?> GetTasksLocationAsync([FromBody] CreateTaskDto taskDto)
        {
            return await Service.GetTasksLocationAsync(taskDto);
        }
        /// <summary>
        /// 入库任务完成:添加库存,修改货位状态,删除任务数据,添加历史任务数据
        /// </summary>
        /// <param name="taskDto"></param>
        /// <returns></returns>
        [HttpGet, HttpPost, Route("InboundFinishTask"), AllowAnonymous]
        public async Task<WebResponseContent?> InboundFinishTaskAsync([FromBody] CreateTaskDto taskDto)
        {
            return await Service.InboundFinishTaskAsync(taskDto);
        }
        /// <summary>
        /// 出库任务完成 :修改库存,修改货位状态,删除任务数据,添加历史任务数据
        /// </summary>
        /// <param name="taskDto"></param>
        /// <returns></returns>
        [HttpGet, HttpPost, Route("OutboundFinishTask"), AllowAnonymous]
        public async Task<WebResponseContent?> OutboundFinishTaskAsync([FromBody] CreateTaskDto taskDto)
        {
            return await Service.OutboundFinishTaskAsync(taskDto);
        }
        /// <summary>
        /// 移库任务完成:修改库存位置与状态,修改源/目标货位状态,删除任务数据
        /// </summary>
        /// <param name="taskDto"></param>
        /// <returns></returns>
        [HttpGet, HttpPost, Route("RelocationFinishTask"), AllowAnonymous]
        public async Task<WebResponseContent?> RelocationFinishTaskAsync([FromBody] CreateTaskDto taskDto)
        {
            return await Service.RelocationFinishTaskAsync(taskDto);
        }
        /// <summary>
        /// 创建空托盘出库任务
        /// </summary>
        /// <param name="taskDto"></param>
        /// <returns></returns>
        [HttpGet, HttpPost, Route("GetOutBoundTrayTask"), AllowAnonymous]
        public async Task<WebResponseContent?> GetOutBoundTrayTaskAsync([FromBody] CreateTaskDto taskDto)
        {
            return await Service.GetOutBoundTrayTaskAsync(taskDto);
        }
        /// <summary>
        /// 创建空托盘出库任务
        /// </summary>
        /// <param name="taskDto"></param>
        /// <returns></returns>
        [HttpGet, HttpPost, Route("CreateTaskInboundTray"), AllowAnonymous]
        public async Task<WebResponseContent?> CreateTaskInboundTrayAsync([FromBody] CreateTaskDto taskDto)
        {
            return await Service.CreateTaskInboundTrayAsync(taskDto);
        }
        /// <summary>
        /// 修改任务状态(根据任务ID修改为指定状态)
        /// </summary>
        /// <param name="taskDto"></param>
        /// <returns></returns>
        [HttpGet, HttpPost, Route("UpdateTaskByStatus"), AllowAnonymous]
        public async Task<WebResponseContent?> UpdateTaskByStatusAsync([FromBody] UpdateTaskDto taskDto)
        {
            return await Service.UpdateTaskByStatusAsync(taskDto.Id, taskDto.NewStatus);
        }
        /// <summary>
@@ -39,8 +127,8 @@
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        [HttpPost("InOrOutCompleted"), AllowAnonymous]
        public async Task<WebResponseContent?> InOrOutCompletedAsync([FromBody] InputDto input)
        [HttpGet, HttpPost, Route("InOrOutCompleted"), AllowAnonymous]
        public async Task<WebResponseContent?> InOrOutCompletedAsync([FromBody] GradingMachineInputDto input)
        {
            return await Service.InOrOutCompletedAsync(input);
        }
@@ -50,8 +138,8 @@
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        [HttpPost("SendLocationStatus"), AllowAnonymous]
        public async Task<WebResponseContent?> SendLocationStatusAsync([FromBody] InputDto input)
        [HttpGet, HttpPost, Route("SendLocationStatus"), AllowAnonymous]
        public async Task<WebResponseContent?> SendLocationStatusAsync([FromBody] GradingMachineInputDto input)
        {
            return await Service.SendLocationStatusAsync(input);
        }
@@ -61,8 +149,8 @@
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        [HttpPost("RequestOutbound"), AllowAnonymous]
        public async Task<WebResponseContent?> RequestOutboundAsync([FromBody] InputDto input)
        [HttpGet, HttpPost, Route("RequestOutbound"), AllowAnonymous]
        public async Task<WebResponseContent?> RequestOutboundAsync([FromBody] GradingMachineInputDto input)
        {
            return await Service.RequestOutboundAsync(input);
        }
@@ -72,8 +160,8 @@
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        [HttpPost("GetPalletCodeCell"), AllowAnonymous]
        public async Task<WebResponseContent?> GetPalletCodeCellAsync([FromBody] InputDto input)
        [HttpGet, HttpPost, Route("GetPalletCodeCell"), AllowAnonymous]
        public async Task<WebResponseContent?> GetPalletCodeCellAsync([FromBody] GradingMachineInputDto input)
        {
            return await Service.GetPalletCodeCellAsync(input);
        }