CPDevRunInfoDto.cs 6.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270
  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel;
  4. using System.Linq;
  5. using System.Text;
  6. using System.Threading.Tasks;
  7. using WMS.Info;
  8. namespace WMS.BZModels.Dto.CP.CPQuestDB
  9. {
  10. public class CPDevRunInfoDto
  11. {
  12. public string runmode { get; set; }
  13. public string runstatus { get; set; }
  14. public DateTime starttime { get; set; }
  15. public DateTime endtime { get; set; }
  16. public long duration { get; set; }
  17. public int type { get; set; }
  18. public DateTime frame { get; set; }
  19. public string code { get; set; }
  20. }
  21. public class CPDevRunInfoQueryDto
  22. {
  23. public DateTime? BeginTime { get; set; }
  24. public DateTime? EndTime { get; set; }
  25. public DevType? DevType { get; set; }
  26. public string Floor { get; set; }
  27. }
  28. public enum DevType
  29. {
  30. /// <summary>
  31. /// RGV小车
  32. /// </summary>
  33. RGV = 1,
  34. /// <summary>
  35. /// 堆垛机
  36. /// </summary>
  37. SRM = 2,
  38. /// <summary>
  39. /// 机械臂/机器人
  40. /// </summary>
  41. Robot = 3,
  42. /// <summary>
  43. /// 桁架
  44. /// </summary>
  45. Truss = 4,
  46. /// <summary>
  47. /// 扫码器
  48. /// </summary>
  49. BCR = 5,
  50. /// <summary>
  51. /// 站台/输送线
  52. /// </summary>
  53. Station = 6,
  54. /// <summary>
  55. /// 机械臂/机器人 任务执行数量
  56. /// </summary>
  57. RobotTaskSum = 7,
  58. /// <summary>
  59. /// 桁架 任务执行数量
  60. /// </summary>
  61. TrussTaskSum = 8,
  62. }
  63. public class RunTimeRates
  64. {
  65. public string code { get; set; }
  66. public string utilizationrate { get; set; }
  67. //出库
  68. public int OutDepot { get; set; }
  69. //入库
  70. public int EnterDepot { get; set; }
  71. //移库
  72. public int TransferDepot { get; set; }
  73. public List<RunTimeRate> rates { get; set; } = new List<RunTimeRate>();
  74. }
  75. public class RunTimeRate
  76. {
  77. public string name { get; set; }
  78. public string desc
  79. {
  80. get
  81. {
  82. if (value <= 0) { return "0"; }
  83. TimeSpan ts = TimeSpan.FromMilliseconds(value);
  84. return ts.Days > 0 ? $"{ts.Days}天{ts.Hours}小时{ts.Minutes}分钟{ts.Seconds}秒"
  85. : $"{ts.Hours}小时{ts.Minutes}分钟{ts.Seconds}秒";
  86. }
  87. }
  88. public long value { get; set; }
  89. public decimal rate { get; set; }
  90. }
  91. public class RunListModel
  92. {
  93. public string Code { get; set; }
  94. //出库
  95. public int OutDepot { get; set; }
  96. //入库
  97. public int EnterDepot { get; set; }
  98. //移库
  99. public int TransferDepot { get; set; }
  100. //空闲
  101. public double Free { get; set; }
  102. //public decimal FreeRate { get; set; }
  103. //手动
  104. public double Manual { get; set; }
  105. //public decimal ManualRate { get; set; }
  106. //自动
  107. public double Automatic { get; set; }
  108. //public decimal AutomaticRate { get; set; }
  109. //报警
  110. public double Alarm { get; set; }
  111. //public decimal AlarmRate { get; set; }
  112. //运行
  113. public double Working { get; set; }
  114. //public decimal WorkingRate { get; set; }
  115. public decimal[] State { get; set; } = new decimal[5];
  116. }
  117. public class RunInfo
  118. {
  119. public string Code { get; set; }
  120. /// <summary>
  121. /// 出库任务
  122. /// </summary>
  123. public int OutDepot { get; set; }
  124. /// <summary>
  125. /// 入库任务
  126. /// </summary>
  127. public int EnterDepot { get; set; }
  128. /// <summary>
  129. /// 移库任务
  130. /// </summary>
  131. public int MoveDepot { get; set; }
  132. /// <summary>
  133. /// 空闲
  134. /// </summary>
  135. public double Free { get; set; }
  136. /// <summary>
  137. /// 手动
  138. /// </summary>
  139. public double Manual { get; set; }
  140. /// <summary>
  141. /// 自动
  142. /// </summary>
  143. public double Automatic { get; set; }
  144. /// <summary>
  145. /// 报警
  146. /// </summary>
  147. public double Alarm { get; set; }
  148. /// <summary>
  149. /// 运行
  150. /// </summary>
  151. public double Working { get; set; }
  152. /// <summary>
  153. /// 总时间
  154. /// </summary>
  155. public double TotalTime { get; set; }
  156. /// <summary>
  157. /// 设备执行分析
  158. /// </summary>
  159. public List<DevActionViewMode> DevAction { get; set; }
  160. /// <summary>
  161. /// 任务执行工位使用数量
  162. /// </summary>
  163. public List<StationCount> StationCount { get; set; }
  164. }
  165. /// <summary>
  166. /// 设备动作分析
  167. /// </summary>
  168. public class DevActionViewMode
  169. {
  170. /// <summary>
  171. /// 动作次数
  172. /// </summary>
  173. public double ActionAmount { get; set; }
  174. /// <summary>
  175. /// 动作平均耗时
  176. /// </summary>
  177. public double ActionTime { get; set; }
  178. /// <summary>
  179. /// 动作类型
  180. /// </summary>
  181. public string Type { get; set; }
  182. }
  183. /// <summary>
  184. /// 设备动作类型
  185. /// </summary>
  186. public enum DevActionType
  187. {
  188. /// <summary>
  189. /// 入库
  190. /// </summary>
  191. [Description("入库")]
  192. In = 0,
  193. /// <summary>
  194. /// 出库
  195. /// </summary>
  196. [Description("出库")]
  197. Out = 1,
  198. /// <summary>
  199. /// 移库
  200. /// </summary>
  201. [Description("移库")]
  202. Move = 2,
  203. }
  204. /// <summary>
  205. /// 任务执行工位数量
  206. /// </summary>
  207. public class StationCount
  208. {
  209. /// <summary>
  210. /// 执行数量
  211. /// </summary>
  212. public double StationNum { get; set; }
  213. /// <summary>
  214. /// 工位数
  215. /// </summary>
  216. public double StationIndex { get; set; }
  217. /// <summary>
  218. /// 任务类型
  219. /// </summary>
  220. public string Type { get; set; }
  221. }
  222. public class DeviceEffectiveQueryDto : Pagination
  223. {
  224. public int type { get; set; }
  225. public DateTime stateTime { get; set; }
  226. public DateTime endTime { get; set; }
  227. }
  228. }