Grp_ScheduleInfo.cs 6.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205
  1. using OASystem.Domain.Enums;
  2. using System;
  3. using System.Collections.Generic;
  4. using System.Linq;
  5. using System.Runtime.Serialization.Formatters.Binary;
  6. using System.Runtime.Serialization;
  7. using System.Text;
  8. using System.Threading.Tasks;
  9. namespace OASystem.Domain.Entities.Groups
  10. {
  11. /// <summary>
  12. /// 团组流程管控
  13. /// </summary>
  14. [SugarTable("Grp_Schedule")]
  15. public class Grp_ScheduleInfo : EntityBase
  16. {
  17. /// <summary>
  18. /// 团组Id
  19. /// </summary>
  20. [SugarColumn(IsNullable = true, ColumnDataType = "int")]
  21. public int DiId { get; set; }
  22. /// <summary>
  23. /// 当前主流程
  24. /// </summary>
  25. [SugarColumn(IsNullable = true, ColumnDataType = "int")]
  26. public GrpSchedulePrimaryStepEnum PrimaryStep { get; set; }
  27. /// <summary>
  28. /// 当前子流程
  29. /// </summary>
  30. //[SugarColumn(IsNullable = true, ColumnDataType = "int")]
  31. //public int DetailStep { get; set; }
  32. /// <summary>
  33. /// 预计开始时间
  34. /// </summary>
  35. [SugarColumn(IsNullable = true, ColumnDataType = "datetime")]
  36. public DateTime ExpectBeginDt { get; set; }
  37. /// <summary>
  38. /// 预计结束时间
  39. /// </summary>
  40. [SugarColumn(IsNullable = true, ColumnDataType = "datetime")]
  41. public DateTime ExpectEndDt { get; set; }
  42. /// <summary>
  43. /// 实际开始时间
  44. /// </summary>
  45. [SugarColumn(IsNullable = true, ColumnDataType = "datetime")]
  46. public DateTime RealBeginDt { get; set; }
  47. /// <summary>
  48. /// 实际结束时间
  49. /// </summary>
  50. [SugarColumn(IsNullable = true, ColumnDataType = "datetime")]
  51. public DateTime RealEndDt { get; set; }
  52. /// <summary>
  53. /// 总负责人(SysUser.Id)
  54. /// </summary>
  55. [SugarColumn(IsNullable = true, ColumnDataType = "int")]
  56. public int Leader { get; set; }
  57. /// <summary>
  58. /// 异常状态0:正常,1:异常
  59. /// </summary>
  60. [SugarColumn(IsNullable = true, ColumnDataType = "int")]
  61. public int Exception { get; set; }
  62. }
  63. /// <summary>
  64. /// 团组流程管控详细进度
  65. /// </summary>
  66. [SugarTable("Grp_ScheduleDetail")]
  67. public class Grp_ScheduleDetailInfo : EntityBase, ICloneable
  68. {
  69. /// <summary>
  70. /// 团组流程Id
  71. /// </summary>
  72. [SugarColumn(IsNullable = true, ColumnDataType = "int")]
  73. public int ScheduleId { get; set; }
  74. /// <summary>
  75. /// 等级
  76. /// </summary>
  77. [SugarColumn(IsNullable = true, ColumnDataType = "int")]
  78. public int SLevel { get; set; }
  79. /// <summary>
  80. /// 流程
  81. /// </summary>
  82. [SugarColumn(IsNullable = true, ColumnDataType = "int")]
  83. public int Step { get; set; }
  84. /// <summary>
  85. /// 父级流程
  86. /// </summary>
  87. [SugarColumn(IsNullable = true, ColumnDataType = "int")]
  88. public int ParentStep { get; set; }
  89. /// <summary>
  90. /// 流程状态
  91. /// <list type="table">
  92. /// <item><para>0:待分配(未开始)</para></item>
  93. /// <item><para>1:进行中</para></item>
  94. /// <item><para>2:已完成</para></item>
  95. /// </list>
  96. /// </summary>
  97. [SugarColumn(IsNullable = true, ColumnDataType = "int")]
  98. public int StepStatus { get; set; }
  99. /// <summary>
  100. /// 负责人员(SysUser.Id)
  101. /// </summary>
  102. [SugarColumn(IsNullable = true, ColumnDataType = "int")]
  103. public int Duty { get; set; }
  104. /// <summary>
  105. /// 工作内容
  106. /// </summary>
  107. [SugarColumn(IsNullable = true, ColumnDataType = "varchar(50)")]
  108. public string JobContent { get; set; }
  109. /// <summary>
  110. /// 预计开始时间
  111. /// </summary>
  112. [SugarColumn(IsNullable = true, ColumnDataType = "datetime")]
  113. public DateTime ExpectBeginDt { get; set; }
  114. /// <summary>
  115. /// 预计结束时间
  116. /// </summary>
  117. [SugarColumn(IsNullable = true, ColumnDataType = "datetime")]
  118. public DateTime ExpectEndDt { get; set; }
  119. /// <summary>
  120. /// 实际开始时间
  121. /// </summary>
  122. [SugarColumn(IsNullable = true, ColumnDataType = "datetime")]
  123. public DateTime RealBeginDt { get; set; }
  124. /// <summary>
  125. /// 实际结束时间
  126. /// </summary>
  127. [SugarColumn(IsNullable = true, ColumnDataType = "datetime")]
  128. public DateTime RealEndDt { get; set; }
  129. /// <summary>
  130. /// 异常状态0:正常,1:异常
  131. /// </summary>
  132. [SugarColumn(IsNullable = true, ColumnDataType = "int")]
  133. public int Exception { get; set; }
  134. public object Clone()
  135. {
  136. return this.MemberwiseClone();
  137. }
  138. public Grp_ScheduleDetailInfo DeepClone()
  139. {
  140. using (Stream objectStream = new MemoryStream())
  141. {
  142. IFormatter formatter = new BinaryFormatter();
  143. formatter.Serialize(objectStream, this);
  144. objectStream.Seek(0, SeekOrigin.Begin);
  145. return formatter.Deserialize(objectStream) as Grp_ScheduleDetailInfo;
  146. }
  147. }
  148. }
  149. /// <summary>
  150. /// 团组流程管控人员配置
  151. /// </summary>
  152. [SugarTable("Grp_SchedulePerson")]
  153. public class Grp_SchedulePersonInfo : EntityBase
  154. {
  155. /// <summary>
  156. /// 流程Id
  157. /// </summary>
  158. [SugarColumn(IsNullable = true, ColumnDataType = "int")]
  159. public int ScheduleId { get; set; }
  160. /// <summary>
  161. /// 人员编号(SysUser.Id)
  162. /// </summary>
  163. [SugarColumn(IsNullable = true, ColumnDataType = "int")]
  164. public int SysUserId { get; set; }
  165. /// <summary>
  166. /// 人员姓名
  167. /// </summary>
  168. [SugarColumn(IsNullable = true, ColumnDataType = "varchar(50)")]
  169. public string SysUserName { get; set; }
  170. /// <summary>
  171. /// 负责工作
  172. /// </summary>
  173. [SugarColumn(IsNullable = true, ColumnDataType = "varchar(50)")]
  174. public string JobStr { get; set; }
  175. }
  176. }