wanshenmean
2026-03-11 5af11cc200dd5ebe474b9c0475883b0e6d1e3759
Code/WMS/WIDESEA_WMSServer/WIDESEA_ITaskInfoService/ITaskService.cs
@@ -18,6 +18,8 @@
using SqlSugar;
using System;
using System.Collections.Generic;
using System.Threading.Tasks;
using WIDESEA_DTO.GradingMachine;
using System.Diagnostics.CodeAnalysis;
using System.Linq;
using System.Text;
@@ -39,6 +41,92 @@
    {
        IRepository<Dt_Task> Repository { get; }
        Task<Dt_Task?> CreateTaskInboundAsync(CreateTaskDto taskDto);
        /// <summary>
        /// 创建任务(组盘入库任务、空托盘回库任务)
        /// </summary>
        /// <param name="taskDto">要创建的出库任务的详细信息。不能为null。</param>
        /// <returns>是否成功</returns>
        Task<WebResponseContent> CreateTaskInboundAsync(CreateTaskDto taskDto);
        /// <summary>
        /// 根据指定的任务详情异步创建新的出库任务。
        /// </summary>
        /// <param name="taskDto">要创建的出库任务的详细信息。不能为null。</param>
        /// <returns>表示异步操作的任务。任务
        Task<WebResponseContent> CreateTaskOutboundAsync(CreateTaskDto taskDto);
        /// <summary>
        /// 获取可入库货位
        /// </summary>
        /// <param name="warehouseId"></param>
        /// <param name="taskType"></param>
        /// <returns></returns>
        public Task<WebResponseContent> GetTasksLocationAsync(CreateTaskDto taskDto);
        /// <summary>
        /// 入库任务完成:添加库存,修改货位状态,删除任务数据,添加历史任务数据
        /// </summary>
        public Task<WebResponseContent> InboundFinishTaskAsync(CreateTaskDto taskDto);
        /// <summary>
        /// 出库任务完成 :修改库存,修改货位状态,删除任务数据,添加历史任务数据
        /// </summary>
        public Task<WebResponseContent> OutboundFinishTaskAsync(CreateTaskDto taskDto);
        /// <summary>
        /// 创建空托盘入库任务
        /// </summary>
        /// <param name="taskDto"></param>
        /// <returns></returns>
        Task<WebResponseContent> CreateTaskInboundTrayAsync(CreateTaskDto taskDto);
        /// <summary>
        /// 创建空托盘出库任务
        /// </summary>
        /// <param name="taskDto"></param>
        /// <returns></returns>
        Task<WebResponseContent> GetOutBoundTrayTaskAsync(CreateTaskDto taskDto);
        /// <summary>
        /// 修改任务状态(根据任务ID修改为指定状态)
        /// </summary>
        /// <param name="taskId"></param>
        /// <param name="newStatus"></param>
        /// <returns></returns>
        Task<WebResponseContent> UpdateTaskByStatusAsync(int taskId, int newStatus);
        /// <summary>
        /// 堆垛机取放货完成后物流通知化成分容柜完成信号
        /// </summary>
        /// <param name="input">分容柜输入数据</param>
        /// <returns>操作结果</returns>
        public Task<WebResponseContent> InOrOutCompletedAsync(GradingMachineInputDto input);
        /// <summary>
        /// 化成分容柜定时向物流更新分容柜状态信息
        /// </summary>
        /// <param name="input">分容柜输入数据</param>
        /// <returns>操作结果</returns>
        public Task<WebResponseContent> SendLocationStatusAsync(GradingMachineInputDto input);
        /// <summary>
        /// 分容柜工作完成后调用此接口通知物流出库
        /// </summary>
        /// <param name="input">分容柜输入数据</param>
        /// <returns>操作结果</returns>
        public Task<WebResponseContent> RequestOutboundAsync(GradingMachineInputDto input);
        /// <summary>
        /// 入库完成分容调用获取托盘上每个通道电芯
        /// </summary>
        /// <param name="input">分容柜输入数据</param>
        /// <returns>操作结果</returns>
        public Task<WebResponseContent> GetPalletCodeCellAsync(GradingMachineInputDto input);
        /// <summary>
        /// 自动创建出库任务 - 查询到期库存并创建任务
        /// </summary>
        /// <returns>包含创建结果的响应对象</returns>
        Task<WebResponseContent> CreateAutoOutboundTasksAsync();
    }
}