QualityDto.cs 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203
  1. 
  2. using Hotline.Share.Dtos.Order;
  3. using Hotline.Share.Enums.Quality;
  4. using Hotline.Share.Requests;
  5. using XF.Utility.EnumExtensions;
  6. namespace Hotline.Share.Dtos.Quality
  7. {
  8. public class QualityAddDto
  9. {
  10. /// <summary>
  11. /// 工单ID
  12. /// </summary>
  13. public string OrderId { get; set; }
  14. /// <summary>
  15. /// 回访ID
  16. /// </summary>
  17. public string? VisitId { get; set; }
  18. /// <summary>
  19. /// 质检方式
  20. /// </summary>
  21. public string? Mode { get; set; }
  22. /// <summary>
  23. /// 质检分数
  24. /// </summary>
  25. public int? Grade { get; set; }
  26. /// <summary>
  27. /// 质检评价
  28. /// </summary>
  29. public string? Content { get; set; }
  30. /// <summary>
  31. /// 质检状态
  32. /// </summary>
  33. public EQualityState State { get; set; }
  34. /// <summary>
  35. /// 质检来源
  36. /// </summary>
  37. public EQualitySource Source { get; set; }
  38. /// <summary>
  39. /// 质检明细
  40. /// </summary>
  41. public List<QualityDetailDto> QualityDetails { get; set; } = new List<QualityDetailDto>();
  42. }
  43. public class UpdateQualityDto : QualityAddDto
  44. {
  45. public string Id { get; set; }
  46. }
  47. public class DeleteQualityDto
  48. {
  49. public List<string> Ids { get; set; }
  50. }
  51. public class QualityDetailDto : QualityBaseDto
  52. {
  53. /// <summary>
  54. /// 工单ID
  55. /// </summary>
  56. public string QualityId { get; set; }
  57. /// <summary>
  58. /// 扣分时间点- 秒
  59. /// </summary>
  60. public int Second { get; set; }
  61. /// <summary>
  62. /// 质检项目名称
  63. /// </summary>
  64. public string Name { get; set; }
  65. /// <summary>
  66. /// 扣分内容
  67. /// </summary>
  68. public string? Content { get; set; }
  69. /// <summary>
  70. /// 分值
  71. /// </summary>
  72. public int Grade { get; set; }
  73. }
  74. public class QualityDto : QualityBaseDto
  75. {
  76. /// <summary>
  77. /// 工单ID
  78. /// </summary>
  79. public string OrderId { get; set; }
  80. /// <summary>
  81. /// 回访ID
  82. /// </summary>
  83. public string? VisitId { get; set; }
  84. /// <summary>
  85. /// 质检方式
  86. /// </summary>
  87. public string? Mode { get; set; }
  88. /// <summary>
  89. /// 质检分数
  90. /// </summary>
  91. public int Grade { get; set; }
  92. /// <summary>
  93. /// 质检评价
  94. /// </summary>
  95. public string? Content { get; set; }
  96. /// <summary>
  97. /// 质检人
  98. /// </summary>
  99. public string? UserName { get; set; }
  100. /// <summary>
  101. /// 质检时间
  102. /// </summary>
  103. public DateTime? QualityTime { get; set; }
  104. /// <summary>
  105. /// 质检状态
  106. /// </summary>
  107. public EQualityState State { get; set; }
  108. public string StateText => State.GetDescription();
  109. /// <summary>
  110. /// 质检状态
  111. /// </summary>
  112. public EQualitySource Source { get; set; }
  113. public string SourceText => Source.GetDescription();
  114. /// <summary>
  115. ///
  116. /// </summary>
  117. public OrderDto Order { get; set; }
  118. /// <summary>
  119. /// 回访
  120. /// </summary>
  121. public OrderVisitDto Visit { get; set; }
  122. /// <summary>
  123. /// 质检明细
  124. /// </summary>
  125. public List<QualityDetailDto> QualityDetails { get; set; }
  126. }
  127. public class QualityBaseDto {
  128. public DateTime? LastModificationTime { get; set; }
  129. public bool IsDeleted { get; set; }
  130. /// <summary>
  131. /// 删除时间
  132. /// </summary>
  133. public DateTime? DeletionTime { get; set; }
  134. /// <summary>
  135. /// 创建时间
  136. /// </summary>
  137. public DateTime CreationTime { get; set; }
  138. public string Id { get; set; }
  139. /// <summary>
  140. /// 组织Id
  141. /// </summary>
  142. public string? CreatorOrgId { get; set; }
  143. public string? CreatorOrgName { get; set; }
  144. /// <summary>
  145. /// 创建人
  146. /// </summary>
  147. public string? CreatorId { get; set; }
  148. public string? CreatorName { get; set; }
  149. }
  150. public record QualityListDto : PagedKeywordRequest
  151. {
  152. /// <summary>
  153. /// 质检状态
  154. /// </summary>
  155. public EQualityState? State { get; set; }
  156. /// <summary>
  157. /// 质检状态
  158. /// </summary>
  159. public EQualitySource? Source { get; set; }
  160. public DateTime? CreationTimeStart { get; set; }
  161. public DateTime? CreationTimeEnd { get; set; }
  162. }
  163. }