You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

53 lines
1.8 KiB

8 months ago
  1. using System.ComponentModel.DataAnnotations;
  2. using System.Text.Json.Serialization;
  3. namespace Mirle.Component.API.AutomatedGuideVehicleController.Models
  4. {
  5. /// <summary>
  6. /// 硬體元件錯誤類別
  7. /// </summary>
  8. /// <remarks>3.1.alert</remarks>
  9. public class ComponentFaultAlertDto : CommonMessage
  10. {
  11. /// <summary>
  12. /// 設備名稱或車號
  13. /// </summary>
  14. [Required, JsonPropertyName("device"), JsonPropertyOrder(101)]
  15. public string Device { get; set; }
  16. /// <summary>
  17. /// 設備故障地點 (x, y, theta)
  18. /// </summary>
  19. [JsonPropertyName("position"), JsonPropertyOrder(102)]
  20. public string Position { get; set; }
  21. /// <summary>
  22. /// Alert 狀態變化
  23. /// </summary>
  24. /// <value>
  25. /// OK-to-NG <br/>
  26. /// NG-to-OK <br/>
  27. /// Other <br/>
  28. /// </value>
  29. [Required, JsonPropertyName("event"), JsonPropertyOrder(103)]
  30. public string Event { get; set; }
  31. /// <summary>
  32. /// 有問題的元件名稱
  33. /// </summary>
  34. [Required, JsonPropertyName("component"), JsonPropertyOrder(104)]
  35. public string Component { get; set; }
  36. /// <summary>
  37. /// 搬運任務所屬序號
  38. /// </summary>
  39. [Required, JsonPropertyName("mission_sequence"), JsonPropertyOrder(105)]
  40. public string MissionSequence { get; set; }
  41. /// <summary>
  42. /// 警報代碼
  43. /// </summary>
  44. [Required, JsonPropertyName("alert_code"), JsonPropertyOrder(106)]
  45. public string AlertCode { get; set; }
  46. /// <summary>
  47. /// 失敗理由
  48. /// </summary>
  49. [StringLength(255), JsonPropertyName("reason"), JsonPropertyOrder(10)]
  50. public string Reason { get; set; }
  51. }
  52. }