using WIDESEA_Core.Enums; using WIDESEA_DTO; using WIDESEA_DTO.WMS; namespace WIDESEA_IStorageTaskServices; public interface IDt_TaskService : IService { /// /// 根据任务号获取任务 /// /// /// Task GetByTaskNum(int taskNum); /// /// 堆垛机任务完成 /// /// 任务数据合集 /// 返回结果集 abstract Task CompleteOutboundTaskAsync(Dt_Task task, DtStockInfo stock); /// /// 移库任务完成 /// /// 任务数据合集 /// 返回结果集 abstract Task CompleteTransferTaskAsync(Dt_Task task, DtStockInfo stock); /// /// 任务完成 /// /// /// Task CompleteAsync(int taskNum); /// /// 取消任务 /// /// /// WebResponseContent TaskCancel(int taskNum); /// /// 获取任务信息 /// /// WebResponseContent GetTaskInfo(); /// /// 请求任务巷道 /// /// /// /// /// /// Task RequestInboundTaskAsync(RequestTaskDto taskDto); /// /// 获取空货位 /// /// /// Task GetEmptyLocation(string roadWay); /// /// 获取AGV空货位 /// /// /// Task GetAGVEmptyCacheLocation(int AreaId, DtLocationInfo location); /// /// 请求任务货位 /// /// /// Task RequestLocationAsync(RequestTaskDto input); /// /// 请求托盘任务 /// /// 目标位置 /// 托盘类型(1:实盘,2:空盘) /// 区域编码 /// 巷道列表 /// 返回结果集 Task RequestOutboundTaskAsync(RequestTaskDto taskDto); /// /// 其他出库任务请求 /// /// /// Task OutBoundTaskAsync(string palletCode); Task OtherOutBoundTaskAsync(List details); (List, List) GetlcoationState(List tasks, int StatusChangeTypeEnum); (List, List) GetlcoationState(Dt_Task task, int StatusChangeTypeEnum); /// /// 任务状态修改 /// /// 请求数据 /// Task UpdateTaskStatus(int taskNum, int taskState); /// /// 请求跨楼层2任务 /// /// /// Task AcrossFloorTaskAsync(RequestAcrossFloorTaskDto taskDto); /// /// 请求跨楼层任务 /// /// /// /// /// Dt_Task RequestAcrossFloorTask(DtLocationInfo StartAddress, DtLocationInfo EndAddress, int TaskType, RequestTaskDto taskDto); /// /// AGV请求搬运任务 /// /// /// Dt_Task RequestAGVCarryTask(DtLocationInfo StartAddress, DtLocationInfo EndAddress, int TaskType, RequestTaskDto taskDto); /// /// 堆垛机出库是否需要移库 /// /// /// Task StackerIsNeedRelocationAsync(RequestTaskDto taskDto); /// /// AGV出库是否需要移库 /// /// /// Task AGVIsNeedRelocationAsync(RequestTaskDto taskDto); Task SendWCSTask(List taskDTO); (List, List) UpdateLocationStatus(DtLocationInfo location, LocationEnum locationStatus, int taskNum, int StatusChangeType); (List, List) UpdateLocationStatus(string locationCode, LocationEnum locationStatus, int taskNum, int StatusChangeType); bool LocationIsOutBound(DtLocationInfo location); }