using System.ComponentModel.DataAnnotations;
using System.Text.Json.Serialization;
namespace Mirle.Component.API.AutomatedGuideVehicleController.Models
{
///
/// 硬體元件錯誤類別
///
/// 3.1.alert
public class ComponentFaultAlertDto : CommonMessage
{
///
/// 設備名稱或車號
///
[Required, JsonPropertyName("device"), JsonPropertyOrder(101)]
public string Device { get; set; }
///
/// 設備故障地點 (x, y, theta)
///
[JsonPropertyName("position"), JsonPropertyOrder(102)]
public string Position { get; set; }
///
/// Alert 狀態變化
///
///
/// OK-to-NG
/// NG-to-OK
/// Other
///
[Required, JsonPropertyName("event"), JsonPropertyOrder(103)]
public string Event { get; set; }
///
/// 有問題的元件名稱
///
[Required, JsonPropertyName("component"), JsonPropertyOrder(104)]
public string Component { get; set; }
///
/// 搬運任務所屬序號
///
[Required, JsonPropertyName("mission_sequence"), JsonPropertyOrder(105)]
public string MissionSequence { get; set; }
///
/// 警報代碼
///
[Required, JsonPropertyName("alert_code"), JsonPropertyOrder(106)]
public string AlertCode { get; set; }
///
/// 失敗理由
///
[StringLength(255), JsonPropertyName("reason"), JsonPropertyOrder(10)]
public string Reason { get; set; }
}
}