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.

112 lines
3.9 KiB

8 months ago
  1. using System.ComponentModel.DataAnnotations;
  2. using System.ComponentModel.DataAnnotations.Schema;
  3. using System.Text.Json.Serialization;
  4. namespace Mirle.Component.Database.Model.WES
  5. {
  6. /// <summary>
  7. /// 儲位基本資料類別
  8. /// </summary>
  9. [Table("CFG_LOC")]
  10. public class CfgLocDto : CommonDto
  11. {
  12. /// <summary>
  13. /// 儲存區編號
  14. /// </summary>
  15. /// <remarks>
  16. /// STAT[Floor][Sequence * 2] <br/>
  17. /// AUTO[Floor][Sequence * 2] <br/>
  18. /// TEMP[Floor][Sequence * 2] <br/>
  19. /// </remarks>
  20. [Column(Name = "STORAGE_ID")]
  21. [Required, Key, StringLength(7), JsonPropertyName("STORAGE_ID"), JsonPropertyOrder(1)]
  22. public string STORAGE_ID { get; set; }
  23. /// <summary>
  24. /// 儲位編號
  25. /// </summary>
  26. [Column(Name = "LOC_ID")]
  27. [Required, Key, StringLength(9), JsonPropertyName("LOC_ID"), JsonPropertyOrder(2)]
  28. public string LOC_ID { get; set; }
  29. /// <summary>
  30. /// 可存放的產品類別
  31. /// </summary>
  32. [Column(Name = "PRODUCT_TYPE")]
  33. [Required, StringLength(10), JsonPropertyName("PRODUCT_TYPE"), JsonPropertyOrder(3)]
  34. public string PRODUCT_TYPE { get; set; }
  35. /// <summary>
  36. /// 列 (X)
  37. /// </summary>
  38. [Column(Name = "ROW_X")]
  39. [Required, StringLength(3), JsonPropertyName("ROW_X"), JsonPropertyOrder(4)]
  40. public string ROW_X { get; set; }
  41. /// <summary>
  42. /// 行 (Y)
  43. /// </summary>
  44. [Column(Name = "BAY_Y")]
  45. [Required, StringLength(3), JsonPropertyName("BAY_Y"), JsonPropertyOrder(5)]
  46. public string BAY_Y { get; set; }
  47. /// <summary>
  48. /// 層 (Z)
  49. /// </summary>
  50. [Column(Name = "LEVEL_Z")]
  51. [Required, StringLength(3), JsonPropertyName("LEVEL_Z"), JsonPropertyOrder(6)]
  52. public string LEVEL_Z { get; set; }
  53. /// <summary>
  54. /// 儲位尺寸
  55. /// </summary>
  56. /// <value>
  57. /// h = 大 <br/>
  58. /// m = 中 <br/>
  59. /// s = 小 <br/>
  60. /// G = 不區分 <br/>
  61. /// </value>
  62. [Column(Name = "LOC_SIZE")]
  63. [StringLength(1), JsonPropertyName("LOC_SIZE"), JsonPropertyOrder(7)]
  64. public string LOC_SIZE { get; set; } = "G";
  65. /// <summary>
  66. /// 儲為寬度
  67. /// </summary>
  68. /// <remarks>單位: meter</remarks>
  69. [Column(Name = "LOC_WEIGHT")]
  70. [JsonPropertyName("LOC_WEIGHT"), JsonPropertyOrder(8)]
  71. public int LOC_WEIGHT { get; set; }
  72. /// <summary>
  73. /// 儲位高度
  74. /// </summary>
  75. /// <remarks>單位: meter</remarks>
  76. [Column(Name = "LOC_HEIGHT")]
  77. [JsonPropertyName("LOC_HEIGHT"), JsonPropertyOrder(9)]
  78. public int LOC_HEIGHT { get; set; }
  79. /// <summary>
  80. /// 儲位深度
  81. /// </summary>
  82. /// <remarks>單位: meter</remarks>
  83. [Column(Name = "LOC_DEPTH")]
  84. [JsonPropertyName("LOC_DEPTH"), JsonPropertyOrder(10)]
  85. public int LOC_DEPTH { get; set; }
  86. /// <summary>
  87. /// 儲位可乘載重量
  88. /// </summary>
  89. /// <remarks>單位 : kgs</remarks>
  90. [Column(Name = "LOC_LOADING")]
  91. [JsonPropertyName("LOC_LOADING"), JsonPropertyOrder(11)]
  92. public int LOC_LOADING { get; set; }
  93. /// <summary>
  94. /// 備註
  95. /// </summary>
  96. [Column(Name = "REMARKS")]
  97. [StringLength(255), JsonPropertyName("REMARKS"), JsonPropertyOrder(12)]
  98. public string REMARKS { get; set; }
  99. /// <summary>
  100. /// 圖座標 X
  101. /// </summary>
  102. [Column(Name = "AXIS_X")]
  103. [JsonPropertyName("AXIS_X"), JsonPropertyOrder(13)]
  104. public double AXIS_X { get; set; } = 0.0;
  105. /// <summary>
  106. /// 圖座標 Y
  107. /// </summary>
  108. [Column(Name = "AXIS_Y"), JsonPropertyName("AXIS_Y"), JsonPropertyOrder(14)]
  109. public double AXIS_Y { get; set; } = 0.0;
  110. }
  111. }