| using WIDESEA_DTO; | 
|   | 
| namespace WIDESEA_IStorageTaskServices; | 
|   | 
| public interface IDt_TaskService : IService<Dt_Task> | 
| { | 
|     /// <summary> | 
|     /// 通过ID获取任务 | 
|     /// </summary> | 
|     /// <param name="id">任务ID</param> | 
|     /// <returns>任务模型</returns> | 
|     Task<Dt_Task> GetById(int id); | 
|   | 
|     /// <summary> | 
|     /// 根据货位ID获取任务 | 
|     /// </summary> | 
|     /// <param name="locationID"></param> | 
|     /// <returns></returns> | 
|     Task<Dt_Task> GetByLocation(string locationID); | 
|   | 
|     /// <summary> | 
|     /// 根据任务号获取任务 | 
|     /// </summary> | 
|     /// <param name="taskNum"></param> | 
|     /// <returns></returns> | 
|     Task<Dt_Task> GetByTaskNum(int taskNum); | 
|   | 
|     /// <summary> | 
|     /// 获取所有任务列表 | 
|     /// </summary> | 
|     /// <returns>任务模型列表</returns> | 
|     Task<List<Dt_Task>> GetList(); | 
|   | 
|     /// <summary> | 
|     /// 创建一个新的任务 | 
|     /// </summary> | 
|     /// <param name="model">任务模型</param> | 
|     /// <returns>创建的任务</returns> | 
|     Task<Dt_Task> Create(Dt_Task model); | 
|   | 
|     /// <summary> | 
|     /// 批量创建任务 | 
|     /// </summary> | 
|     /// <param name="models">任务模型列表</param> | 
|     /// <returns>是否创建成功</returns> | 
|     Task<bool> Create(List<Dt_Task> models); | 
|   | 
|     /// <summary> | 
|     /// 更新一个任务 | 
|     /// </summary> | 
|     /// <param name="model">任务模型</param> | 
|     /// <returns>是否更新成功</returns> | 
|     Task<bool> Update(Dt_Task model); | 
|   | 
|     /// <summary> | 
|     /// 批量更新任务 | 
|     /// </summary> | 
|     /// <param name="models">任务模型列表</param> | 
|     /// <returns>是否更新成功</returns> | 
|     Task<bool> Update(List<Dt_Task> models); | 
|   | 
|     /// <summary> | 
|     /// 删除一个任务 | 
|     /// </summary> | 
|     /// <param name="id">任务ID</param> | 
|     /// <returns>是否删除成功</returns> | 
|     Task<bool> Delete(int id); | 
|   | 
|     /// <summary> | 
|     /// 批量删除任务 | 
|     /// </summary> | 
|     /// <param name="ids">任务ID列表</param> | 
|     /// <returns>是否删除成功</returns> | 
|     Task<bool> Delete(List<int> ids); | 
|   | 
|     /// <summary> | 
|     /// 根据出库订单ID获取任务列表 | 
|     /// </summary> | 
|     /// <param name="outOrderId">出库订单ID</param> | 
|     /// <returns>任务模型列表</returns> | 
|     Task<List<Dt_Task>> GetListByOutOrder(int outOrderId); | 
|   | 
|     /// <summary> | 
|     /// 根据出库订单ID和状态获取任务列表 | 
|     /// </summary> | 
|     /// <param name="outOrderId">出库订单ID</param> | 
|     /// <param name="status">任务状态</param> | 
|     /// <returns>任务模型列表</returns> | 
|     Task<List<Dt_Task>> GetListByOutOrderAndStatus(int outOrderId, int status); | 
|   | 
|     /// <summary> | 
|     /// 根据状态获取任务列表 | 
|     /// </summary> | 
|     /// <param name="status">任务状态</param> | 
|     /// <returns>任务模型列表</returns> | 
|     Task<List<Dt_Task>> GetListByStatus(int status); | 
|   | 
|     /// <summary> | 
|     /// 检查任务是否存在 | 
|     /// </summary> | 
|     /// <param name="palletCode">托盘编码</param> | 
|     /// <returns>任务是否存在</returns> | 
|     bool IsExist(string palletCode); | 
|   | 
|     /// <summary> | 
|     /// 堆垛机任务完成 | 
|     /// </summary> | 
|     /// <param name="saveModel">任务数据合集</param> | 
|     /// <returns>返回结果集</returns> | 
|     abstract Task<WebResponseContent> CompleteStackTaskAsync(Dt_Task task, DtStockInfo stock); | 
|   | 
|     /// <summary> | 
|     /// 移库任务完成 | 
|     /// </summary> | 
|     /// <param name="saveModel">任务数据合集</param> | 
|     /// <returns>返回结果集</returns> | 
|     abstract Task<WebResponseContent> CompleteTransferTaskAsync(Dt_Task task, DtStockInfo stock); | 
|   | 
|     /// <summary> | 
|     /// 任务完成 | 
|     /// </summary> | 
|     /// <param name="saveModel"></param> | 
|     /// <returns></returns> | 
|     Task<WebResponseContent> CompleteAsync(int taskNum); | 
|   | 
|     /// <summary> | 
|     /// 请求任务巷道 | 
|     /// </summary> | 
|     /// <param name="position"></param> | 
|     /// <param name="areaCode"></param> | 
|     /// <param name="palletCode"></param> | 
|     /// <param name="type"></param> | 
|     /// <returns></returns> | 
|     Task<WebResponseContent> RequestTaskAsync(RequestTaskDto input); | 
|   | 
|     /// <summary> | 
|     /// 请求任务巷道 | 
|     /// </summary> | 
|     /// <param name="position"></param> | 
|     /// <param name="areaCode"></param> | 
|     /// <param name="palletCode"></param> | 
|     /// <param name="type"></param> | 
|     /// <returns></returns> | 
|     Task<WebResponseContent> RequestInTask(RequestTaskDto input); | 
|   | 
|     /// <summary> | 
|     /// 请求任务货位 | 
|     /// </summary> | 
|     /// <param name="input"></param> | 
|     /// <returns></returns> | 
|     Task<WebResponseContent> UpdateExistingTask(RequestTaskDto input); | 
|   | 
|     /// <summary> | 
|     /// 请求空托盘任务 | 
|     /// </summary> | 
|     /// <param name="input"></param> | 
|     /// <returns></returns> | 
|     Task<WebResponseContent> RequestTrayInTaskAsync(RequestTaskDto input); | 
|   | 
|     /// <summary> | 
|     /// 请求托盘任务 | 
|     /// </summary> | 
|     /// <param name="position">目标位置</param> | 
|     /// <param name="tag">托盘类型(1:实盘,2:空盘)</param> | 
|     /// <param name="areaCode">区域编码</param> | 
|     /// <param name="roadways">巷道列表</param> | 
|     /// <returns>返回结果集</returns> | 
|     Task<WebResponseContent> RequestTrayOutTaskAsync(string position, int tag, string areaCode, List<string> areaCodes, string productionLine); | 
|   | 
|   | 
|     /// <summary> | 
|     /// 任务状态修改 | 
|     /// </summary> | 
|     /// <param name="input">请求数据</param> | 
|     /// <returns></returns> | 
|     Task<WebResponseContent> UpdateTaskStatus(int taskNum, int taskState); | 
|   | 
|     /// <summary> | 
|     ///  | 
|     /// </summary> | 
|     /// <returns></returns> | 
|     WebResponseContent StockCheckingAsync(); | 
|   | 
|     /// <summary> | 
|     /// 创建指定任务 | 
|     /// </summary> | 
|     /// <param name="locationCode">货位号</param> | 
|     /// <param name="palletCode">托盘号</param> | 
|     /// <returns></returns> | 
|     Task<WebResponseContent> CreateAndSendOutboundTask(string locationCode, string palletCode); | 
|   | 
|     /// <summary> | 
|     /// 指定任务出库 | 
|     /// </summary> | 
|     /// <param name="palletCode">托盘号</param> | 
|     /// <param name="position">位置</param> | 
|     /// <returns></returns> | 
|     Task<WebResponseContent> CreateAndSendInboundTask(string palletCode, string position); | 
|   | 
|     /// <summary> | 
|     /// 常温补空托盘至分容 | 
|     /// </summary> | 
|     /// <param name="taskDTO"></param> | 
|     /// <returns></returns> | 
|     Task<WebResponseContent> GetFROutTrayToCW(RequestTaskDto taskDTO); | 
|   | 
|   | 
|     /// <summary> | 
|     /// DTS火警出库 | 
|     /// </summary> | 
|     /// <param name="taskDTO"></param> | 
|     /// <returns></returns> | 
|     WebResponseContent EmergencyTask(object obj); | 
|   | 
|     Task<WebResponseContent> RequestOutTaskToBZAsync(RequestTaskDto json); | 
|   | 
|     /// <summary> | 
|     /// 分容空框入库改为直接出库 | 
|     /// </summary> | 
|     /// <param name="request"></param> | 
|     /// <returns></returns> | 
|     Task<WebResponseContent> SetEmptyOutbyInToOutAsync(RequestTaskDto request); | 
|   | 
|     /// <summary> | 
|     /// 分容空框出库改为直接出库 | 
|     /// </summary> | 
|     /// <param name="request"></param> | 
|     /// <returns></returns> | 
|     Task<WebResponseContent> SetEmptyOutbyInToOutOneAsync(RequestTaskDto request); | 
|   | 
| } |