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