OrderScreen.cs 5.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180
  1. using Hotline.File;
  2. using Hotline.FlowEngine.Workflows;
  3. using Hotline.Share.Enums.Order;
  4. using SqlSugar;
  5. using System.ComponentModel;
  6. using Hotline.Share.Dtos.File;
  7. using Hotline.Share.Dtos.Order;
  8. using XF.Domain.Repository;
  9. namespace Hotline.Orders
  10. {
  11. [Description("工单甄别")]
  12. public class OrderScreen : WorkflowEntity
  13. {
  14. /// <summary>
  15. /// 工单编号
  16. /// </summary>
  17. [SugarColumn(ColumnDescription = "工单编号")]
  18. public string No { get; set; }
  19. /// <summary>
  20. /// 回访id
  21. /// </summary>
  22. [SugarColumn(ColumnDescription = "回访id")]
  23. public string VisitId { get; set; }
  24. /// <summary>
  25. /// 回访明细id
  26. /// </summary>
  27. [SugarColumn(ColumnDescription = "回访明细id")]
  28. public string VisitDetailId { get; set; }
  29. /// <summary>
  30. /// 工单id
  31. /// </summary>
  32. [SugarColumn(ColumnDescription = "工单id")]
  33. public string OrderId { get; set; }
  34. /// <summary>
  35. /// 回访
  36. /// </summary>
  37. [Navigate(NavigateType.OneToOne, nameof(VisitDetailId))]
  38. public OrderVisitDetail VisitDetail { get; set; }
  39. /// <summary>
  40. /// 回访
  41. /// </summary>
  42. [Navigate(NavigateType.OneToOne, nameof(VisitId))]
  43. public OrderVisit Visit { get; set; }
  44. /// <summary>
  45. /// 工单
  46. /// </summary>
  47. [Navigate(NavigateType.OneToOne, nameof(OrderId))]
  48. public Order Order { get; set; }
  49. /// <summary>
  50. /// 回访
  51. /// </summary>
  52. [Navigate(NavigateType.OneToMany, nameof(OrderScreenDetail.ScreenId), nameof(Id))]
  53. public List<OrderScreenDetail> ScreenDetails { get; set; }
  54. /// <summary>
  55. /// 甄别申请类型id
  56. /// </summary>
  57. [SugarColumn(ColumnDescription = "甄别申请类型id")]
  58. public string? TypeDicId { get; set; }
  59. /// <summary>
  60. /// 甄别申请类型名称
  61. /// </summary>
  62. [SugarColumn(ColumnDescription = "甄别申请类型名称")]
  63. public string? TypeDicName { get; set; }
  64. /// <summary>
  65. /// 甄别申请原因
  66. /// </summary>
  67. [SugarColumn(ColumnDescription = "甄别申请原因", ColumnDataType = "varchar(2000)")]
  68. public string? Content { get; set; }
  69. /// <summary>
  70. /// 甄别申请回复
  71. /// </summary>
  72. [SugarColumn(ColumnDescription = "甄别申请回复", ColumnDataType = "varchar(2000)")]
  73. public string? ReplyContent { get; set; }
  74. #region 用于省平台查询
  75. /// <summary>
  76. /// 审核人
  77. /// </summary>
  78. public string? AuditName { get; set; }
  79. /// <summary>
  80. /// 审核部门
  81. /// </summary>
  82. public string? AuditOrgName { get; set; }
  83. /// <summary>
  84. /// 审核时间
  85. /// </summary>
  86. public DateTime? AuditTime { get; set; }
  87. /// <summary>
  88. /// 是否省甄别
  89. /// </summary>
  90. [SugarColumn(DefaultValue = "f")]
  91. public bool IsProScreen { get; set; }
  92. #endregion
  93. /// <summary>
  94. /// 甄别截至申请时间
  95. /// </summary>
  96. [SugarColumn(ColumnDescription = "甄别截至申请时间")]
  97. public DateTime? ApplyEndTime { get; set; }
  98. /// <summary>
  99. /// 甄别申请状态
  100. /// </summary>
  101. [SugarColumn(ColumnDescription = "甄别申请状态")]
  102. public EScreenStatus? Status { get; set; }
  103. /// <summary>
  104. /// 业务流程ID
  105. /// </summary>
  106. [SugarColumn(ColumnDescription = "业务流程ID")]
  107. public string? WorkflowId { get; set; }
  108. [Navigate(NavigateType.OneToOne, nameof(WorkflowId))]
  109. public Workflow? Workflow { get; set; }
  110. [SugarColumn(ColumnDataType = "json", IsJson = true, IsNullable = true)]
  111. public List<FileJson>? FileJson { get; set; }
  112. /// <summary>
  113. /// 甄别耗时
  114. /// </summary>
  115. [SugarColumn(ColumnDescription = "甄别耗时")]
  116. public decimal? TimeConsuming { get; set; }
  117. /// <summary>
  118. /// 甄别退回次数
  119. /// </summary>
  120. [SugarColumn(DefaultValue = "0")]
  121. public int SendBackNum { get; set; }
  122. /// <summary>
  123. /// 甄别退回到申请人
  124. /// </summary>
  125. [SugarColumn(DefaultValue = "f")]
  126. public bool SendBackApply { get; set; }
  127. /// <summary>
  128. /// 甄别重提申请次数
  129. /// </summary>
  130. [SugarColumn(DefaultValue = "0")]
  131. public int SendBackApplyNum { get; set; }
  132. /// <summary>
  133. /// 甄别退回时间
  134. /// </summary>
  135. [SugarColumn(ColumnDescription = "甄别退回时间")]
  136. public DateTime? SendBackTime { get; set; }
  137. /// <summary>
  138. /// 甄别审批时间
  139. /// </summary>
  140. [SugarColumn(ColumnDescription = "甄别审批时间")]
  141. public DateTime? NewestAuditTime { get; set; }
  142. /// <summary>
  143. /// 甄别类型
  144. /// </summary>
  145. [SugarColumn(ColumnDescription = "甄别类型",DefaultValue ="0")]
  146. public EOrderScreenType? ScreenType { get; set; }
  147. }
  148. }