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