using JSMachine.WMS.App.Dto; using JSMachine.WMS.App.Dto.Enum; using JSMachine.WMS.Business.Common.Models; namespace JSMachine.WMS.Business.Common.IService { /// /// WMS 公共业务服务,协调库位、ERP 任务和 AGV 任务之间的调度关系。 /// public interface ICommonService { /// /// 库位所在列是否被锁定(有待完成的任务) /// /// /// Task IsColLock(StorageRackDto storageRack); /// /// 跟据erp任务获取已经生成的agv任务列表(不包含已经取消的任务) /// /// /// Task> GetCreatedAgvTasksFromErpTask(ERPTaskDto erpTask,TaskTypeEnum taskType); /// /// 生成中转任务。指定起点,终点为中转区 /// /// /// Task CreateAgvTaskToTransferArea(StorageRackDto startPosition, TaskTypeEnum taskType, ERPTaskDto erpTask); /// /// 中转区作业调度 起点为中转区域 终点需计算 /// /// /// Task CreateAgvTaskFromTransferArea(StorageRackDto startPosition, AGVTaskDto lastAgvTaskRelated, ERPTaskDto erpTask); /// /// 生成agv任务并插入数据库 /// /// /// /// /// Task CreateAndInsertAgvTask(AgvTaskCreationParam agvTaskCreationParam); /// /// 获取可用提升机库位 /// /// 楼层 /// 任务类型 1-入库 2-出库 /// Task GetUsableElevator(FloorEnum floor, int taskType); } }