WCS_AgvTaskInfo.cs 6.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256
  1. using SqlSugar;
  2. using System;
  3. using System.ComponentModel;
  4. using System.Runtime.Serialization;
  5. namespace WCS.Entity.fj
  6. {
  7. /// <summary>
  8. /// AGV任务中间表
  9. /// </summary>
  10. [Tenant("fj")]
  11. [SugarTable(nameof(WCS_AgvTaskInfo) + "_{year}{month}{day}", "AGV任务中间表")]
  12. [SplitTable(SplitType.Week)]//按年分表 (自带分表支持 年、季、月、周、日)
  13. [DataContract]
  14. public class WCS_AgvTaskInfo
  15. {
  16. /// <summary>
  17. /// ID
  18. /// </summary>
  19. [SugarColumn(IsPrimaryKey = true, ColumnDescription = "ID"), DataMember(Order = 0)]
  20. public int ID { get; set; }
  21. /// <summary>
  22. /// AGVID
  23. /// </summary>
  24. [SugarColumn(ColumnDescription = "AGVID", Length = 50, IsNullable = true), DataMember(Order = 1)]
  25. public string AgvID { get; set; }
  26. /// <summary>
  27. /// wcsTaskId
  28. /// </summary>
  29. [SugarColumn(ColumnDescription = "wcsTaskId", IsNullable = true), DataMember(Order = 2)]
  30. public int TaskId { get; set; }
  31. [Navigate(NavigateType.OneToOne, nameof(TaskId))]
  32. public WCS_TaskInfo Task { get; set; }
  33. /// <summary>
  34. /// 任务类型
  35. /// </summary>
  36. [SugarColumn(ColumnDescription = "任务类型")]
  37. [DataMember(Order = 2)]
  38. public AGVTaskType TaskType { get; set; }
  39. /// <summary>
  40. /// WCS AGV任务状态
  41. /// </summary>
  42. [SugarColumn(ColumnDescription = "WCS AGV任务状态")]
  43. [DataMember(Order = 3)]
  44. public AGVTaskStatus Status { get; set; }
  45. /// <summary>
  46. /// AGV自身状态
  47. /// </summary>
  48. [SugarColumn(ColumnDescription = "AGV自身状态")]
  49. [DataMember(Order = 4)]
  50. public AGVTaskStatus AgvStatus { get; set; }
  51. /// <summary>
  52. /// 车间
  53. /// </summary>
  54. [SugarColumn(ColumnDescription = "车间")]
  55. [DataMember(Order = 5)]
  56. public int WorkShop { get; set; }
  57. /// <summary>
  58. /// 站台
  59. /// </summary>
  60. [SugarColumn(ColumnDescription = "站台", Length = 20, IsNullable = true)]
  61. [DataMember(Order = 6)]
  62. public string Station { get; set; }
  63. /// <summary>
  64. /// 位置
  65. /// </summary>
  66. [SugarColumn(ColumnDescription = "位置", Length = 20, IsNullable = true)]
  67. [DataMember(Order = 7)]
  68. public string Position { get; set; }
  69. /// <summary>
  70. /// 货物数量(1.两个位置放1个货物,2.两个位置放2个货物)
  71. /// </summary>
  72. [SugarColumn(ColumnDescription = "货物数量(1.两个位置放1个货物,2.两个位置放2个货物)")]
  73. [DataMember(Order = 11)]
  74. public int GoodsSum { get; set; }
  75. /// <summary>
  76. /// 创建用户
  77. /// 仅记录用户ID
  78. /// </summary>
  79. [SugarColumn(ColumnDescription = "创建用户", Length = 50)]
  80. public string AddWho { get; set; }
  81. /// <summary>
  82. /// 创建时间
  83. /// </summary>
  84. [SugarColumn(ColumnDescription = "创建时间", InsertServerTime = true)]
  85. public DateTime AddTime { get; set; }
  86. /// <summary>
  87. /// AGV更新时间
  88. /// </summary>
  89. [SugarColumn(ColumnDescription = "AGV更新时间", UpdateServerTime = true, IsNullable = true)]
  90. [DataMember(Order = 10)]
  91. public DateTime AgvUpdateTime { get; set; }
  92. /// <summary>
  93. /// 更新用户
  94. /// 仅记录用户ID
  95. /// </summary>
  96. [SugarColumn(ColumnDescription = "更新用户", Length = 50, IsNullable = true)]
  97. public string EditWho { get; set; }
  98. /// <summary>
  99. /// 更新时间
  100. /// </summary>
  101. [SugarColumn(ColumnDescription = "更新时间", IsNullable = true, UpdateServerTime = true)]
  102. public DateTime EditTime { get; set; }
  103. }
  104. /// <summary>
  105. /// AGV任务状态
  106. /// </summary>
  107. public enum AGVTaskStatus
  108. {
  109. /// <summary>
  110. /// 新建
  111. /// </summary>
  112. [Description("新建")]
  113. NewBuild = 0,
  114. /// <summary>
  115. /// 确认
  116. /// </summary>
  117. [Description("确认")]
  118. Confirm = 5,
  119. /// <summary>
  120. /// 执行
  121. /// </summary>
  122. [Description("执行")]
  123. Execution = 10,
  124. /// <summary>
  125. /// 走出储位
  126. /// </summary>
  127. ExitStorage = 11,
  128. /// <summary>
  129. /// 走入储位
  130. /// </summary>
  131. WalkIntoStorage = 12,
  132. /// <summary>
  133. /// 巷道/工位分配申请
  134. /// </summary>
  135. [Description("巷道/工位分配申请")]
  136. RequestOrPermission1 = 20,
  137. /// <summary>
  138. /// 完成巷道/工位分配申请
  139. /// </summary>
  140. [Description("完成巷道/工位分配申请")]
  141. Complete1 = 21,
  142. #region 安全交互
  143. /// <summary>
  144. /// 取站台前安全交互申请
  145. /// </summary>
  146. [Description("取放站台前安全交互申请")]
  147. RequestOrPermission2 = 30,
  148. /// <summary>
  149. /// 完成交互
  150. /// 完成交互
  151. /// </summary>
  152. [Description("取放站台前安全交互申请")]
  153. Complete = 31,
  154. /// <summary>
  155. /// 放站台前安全交互申请
  156. /// </summary>
  157. [Description("取放站台前安全交互申请")]
  158. PutRequestOrPermission = 40,
  159. #endregion 安全交互
  160. /// <summary>
  161. /// 小车离开取货位
  162. /// </summary>
  163. [Description("小车离开取货位")]
  164. LeaveGet = 32,
  165. /// <summary>
  166. /// 小车离开放货位
  167. /// </summary>
  168. [Description("小车离开放货位")]
  169. LeavePut = 33,
  170. /// <summary>
  171. /// 任务完成
  172. /// </summary>
  173. [Description("任务完成")]
  174. MissionCompleted = 99,
  175. /// <summary>
  176. /// 完成扫码
  177. /// </summary>
  178. [Description("完成扫码")]
  179. CompleteScanCode = 100,
  180. /// <summary>
  181. /// 取消
  182. /// </summary>
  183. [Description("取消")]
  184. Cancel = 106
  185. }
  186. /// <summary>
  187. /// AGV任务类型
  188. /// </summary>
  189. public enum AGVTaskType
  190. {
  191. /// <summary>
  192. /// 入库
  193. /// </summary>
  194. [Description("入库")]
  195. EnterDepot = 1,
  196. /// <summary>
  197. /// 背负式补空
  198. /// </summary>
  199. [Description("背负式补空")]
  200. CallForMaterial = 2,
  201. /// <summary>
  202. /// 叉车机台补空任务
  203. /// </summary>
  204. [Description("叉车机台补空任务")]
  205. ForkliftFilling = 3,
  206. /// <summary>
  207. /// 叫料
  208. /// </summary>
  209. [Description("叫料")]
  210. CallMaterial = 4,
  211. /// <summary>
  212. /// 搬运/运输
  213. /// </summary>
  214. [Description("搬运/运输")]
  215. Transport = 5,
  216. }
  217. }