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
}