|
using iWareModel;
|
using System.Collections.Generic;
|
using System.ServiceModel;
|
|
namespace iWareSda
|
{
|
// 注意: 使用“重构”菜单上的“重命名”命令,可以同时更改代码和配置文件中的接口名“ISrmService”。
|
[ServiceContract, XmlSerializerFormat(Style = OperationFormatStyle.Rpc)]
|
public interface ISrmService
|
{
|
/// <summary>
|
/// 获取SrmEntity实体集合
|
/// </summary>
|
/// <returns></returns>
|
[OperationContract]
|
List<SrmEntity> GetSrm_CacheEntity();
|
|
/// <summary>
|
/// 获取堆垛机实时数据
|
/// </summary>
|
/// <param name="srmId"></param>
|
/// <returns></returns>
|
[OperationContract]
|
SrmView GetSrmInfo(int srmId);
|
|
/// <summary>
|
/// 发送堆垛机任务
|
/// </summary>
|
/// <param name="srmId"></param>
|
/// <param name="taskId"></param>
|
/// <param name="sourcePlace"></param>
|
/// <param name="toPlace"></param>
|
/// <returns></returns>
|
[OperationContract]
|
SdaResEntity SendSrmTask(int srmId, int taskId, string sourcePlace, string toPlace, short command, short pallettype);
|
|
/// <summary>
|
/// 堆垛机解警
|
/// </summary>
|
/// <param name="srmId"></param>
|
/// <returns></returns>
|
[OperationContract]
|
SdaResEntity ReleaseAlert(int srmId);
|
|
/// <summary>
|
/// 堆垛机继续任务
|
/// </summary>
|
/// <param name="srmId"></param>
|
/// <returns></returns>
|
[OperationContract]
|
SdaResEntity ContinueTask(int srmId);
|
|
|
|
/// <summary>
|
/// 堆垛机急停
|
/// </summary>
|
/// <param name="srmId"></param>
|
[OperationContract]
|
SdaResEntity SendEStop(int srmId);
|
|
/// <summary>
|
/// 堆垛机删除任务
|
/// </summary>
|
[OperationContract]
|
SdaResEntity SendSrmDelete(int srmId);
|
|
|
/// <summary>
|
/// 堆垛机是否就绪
|
/// </summary>
|
/// <param name="srmId"></param>
|
/// <param name="msg"></param>
|
/// <returns></returns>
|
[OperationContract]
|
SdaResEntity IsReady(int srmId, out string msg);
|
|
/// <summary>
|
/// 判断堆垛机是否可用,是否可以发送新任务给堆垛机
|
/// </summary>
|
/// <param name="srmId"></param>
|
/// <param name="msg"></param>
|
/// <returns></returns>
|
[OperationContract]
|
SdaResEntity IsAllowSendTask(int srmId, out string msg);
|
|
/// <summary>
|
/// 任务完成信号的确认反馈
|
/// </summary>
|
/// <param name="srmId"></param>
|
/// <param name="taskId"></param>
|
/// <returns></returns>
|
[OperationContract]
|
SdaResEntity ConfirmTaskFinish(int srmId, int taskId);
|
|
/// <summary>
|
/// 任务是否完成
|
/// </summary>
|
/// <param name="srmId"></param>
|
/// <returns></returns>
|
[OperationContract]
|
SdaResEntity IsTaskFinish(int srmId, int taskId);
|
|
|
/// <summary>
|
/// 是否允许给堆垛机发送新任务
|
/// </summary>
|
/// <param name="srmId"></param>
|
/// <param name="taskId"></param>
|
/// <returns>true:允许,false:不允许</returns>
|
[OperationContract]
|
SdaResEntity IsAllowSendNewTaskToSrm(int srmId);
|
|
|
/// <summary>
|
/// 判断是否有心跳
|
/// </summary>
|
/// <param name="deviceId"></param>
|
/// <returns></returns>
|
[OperationContract]
|
SdaResEntity IsHaveHeatBeat(int deviceId);
|
|
/// <summary>
|
/// 堆垛机是否满足下发任务的要求
|
/// </summary>
|
/// <returns></returns>
|
[OperationContract]
|
SdaResEntity IsAllowIssueTask(int deviceId);
|
|
|
/// <summary>
|
/// 写入STB
|
/// </summary>
|
/// <param name="deviceId"></param>
|
/// <param name="value"></param>
|
/// <returns></returns>
|
[OperationContract]
|
SdaResEntity WriteStb(int deviceId, int value);
|
|
/// <summary>
|
/// 写入AckTaskFinish
|
/// </summary>
|
/// <param name="deviceId"></param>
|
/// <param name="value"></param>
|
/// <returns></returns>
|
[OperationContract]
|
SdaResEntity WriteAckTaskFinish(int deviceId, int value);
|
}
|
}
|