using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace MisDataSaveDate { #region AGV -> MES 接收请求模型 /// /// 状态更新请求(到达/离开) /// AGV 到达或离开工位时通知 MES /// public class ZZAGV_StatusUpdateRequest { /// /// 工位编号 /// public string position { get; set; } /// /// 类型:1-到达,2-离开 /// public int type { get; set; } /// /// 物料编码/产品编码 /// public string materialCode { get; set; } /// /// AGV车号 /// public string agvid { get; set; } } /// /// 动作完成请求(举升/下降) /// AGV 完成托盘举升或下降动作后通知 MES /// public class ZZAGV_ActionCompleteRequest { /// /// 工位编号 /// public string position { get; set; } /// /// 类型:1-举升完成,2-下降完成 /// public int type { get; set; } } /// /// 故障/报警推送请求 /// AGV 上报故障或区域故障 /// public class ZZAGV_AlarmPushRequest { /// /// AGV车号 /// public string agvNo { get; set; } /// /// 故障代码 /// public string errorCode { get; set; } /// /// 故障信息 /// public string errorMsg { get; set; } /// /// 故障类型:1-AGV故障,2-区域故障 /// public int type { get; set; } } /// /// 任务执行结果请求 /// AGV 告知 MES 任务是否执行成功 /// public class ZZAGV_TaskResultRequest { /// /// 任务唯一ID(与下发任务时的 requestTaskId 对应) /// public string requestTaskId { get; set; } /// /// 执行状态:success-成功,fail-失败 /// public string status { get; set; } /// /// AGV车号 /// public string agvNo { get; set; } /// /// 失败原因(成功时为空) /// public string message { get; set; } } #endregion #region MES -> AGV 发送请求模型 /// /// 下发任务请求 /// MES 给 AGV 下发搬运任务 /// public class ZZAGV_AddTaskRequest { /// /// 任务唯一ID(由 MES 生成) /// public string requestTaskId { get; set; } /// /// 抬货点/取货位置 /// public string startPosition { get; set; } /// /// 卸货点/目标位置 /// public string endPosition { get; set; } /// /// 产品编码/物料编码 /// public string materialCode { get; set; } } /// /// 放行请求 /// MES 告知 AGV 可以离开当前位置 /// public class ZZAGV_AllowLeaveRequest { /// /// 请求ID /// public string requestId { get; set; } /// /// 当前位置编号 /// public string position { get; set; } /// /// 放行标志(固定为1) /// public int allowLeave { get; set; } = 1; } #endregion #region 通用响应模型 /// /// 西开 AGV 接口通用响应 /// public class ZZAGV_Response { /// /// 返回码:0-成功,其他-失败 /// public int code { get; set; } /// /// 返回描述信息 /// public string desc { get; set; } /// /// 是否成功 /// public bool success { get; set; } public ZZAGV_Response() { code = 0; desc = "成功"; success = true; } /// /// 设置成功响应 /// public static ZZAGV_Response Success(string desc = "成功") { return new ZZAGV_Response { code = 0, desc = desc, success = true }; } /// /// 设置失败响应 /// public static ZZAGV_Response Fail(int code, string desc) { return new ZZAGV_Response { code = code, desc = desc, success = false }; } } #endregion }