using Tnb.WarehouseMgr.Entities.Dto.Inputs; namespace Tnb.WarehouseMgr.Interfaces { /// /// 电梯控制服务接口 /// public interface IElevatorControlService { /// /// 向指定的标签属性写入值 /// /// 标签名称 /// 标签值 /// Task WriteTagAsync(string devName, string tagName, int value); /// /// 根据标签名称获取标签单个属性值 /// /// /// Task GetTagAsync(string devName, string tagName); /// /// 获取电梯状态 /// /// 取消标志 /// Task<(int sysStatus, int runStatus, int floorNo, int doorStatus, int agvStatus)> GetElevatorStatus(string devName, CancellationToken token); /// /// 获取电梯状态 /// /// 设备名称 /// 标签集合 /// 取消标志 /// 获取到的状态值 Task<(int sysStatus, int runStatus, int floorNo, int doorStatus, int agvStatus)> GetElevatorStatus(string devName, IEnumerable tags, CancellationToken token); Task> GetELevatorStatusMap(string devName, IEnumerable tags, CancellationToken token); /// /// 检查Agv状态 /// /// /// Task CheckAgvStatus(string devName, CancellationToken cancellationToken); /// /// 向系统发送开关门指令 /// /// /// 3前门开门 /// 4前门关门 /// 5后门开门 /// 6后门关门 /// /// Task SendOpenCloseCmd(string devName, int value); /// /// 呼梯操作 /// /// 设备名称 /// 呼叫楼层 /// 取消令牌 /// Task CallLift(string devName, int floor, CancellationToken cancellationToken); Task CloseElevatorControl(CloseElevatorInput input); } }