SnapshotBulletinDto.cs 5.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237
  1. using Hotline.Share.Dtos.Users;
  2. using Hotline.Share.Enums.Article;
  3. using Hotline.Share.Requests;
  4. using System;
  5. using System.Collections.Generic;
  6. using System.ComponentModel.DataAnnotations;
  7. using System.Linq;
  8. using System.Text;
  9. using System.Threading.Tasks;
  10. using XF.Utility.EnumExtensions;
  11. namespace Hotline.Share.Dtos.Snapshot;
  12. class SnapshotBulletinDto
  13. {
  14. }
  15. /// <summary>
  16. /// 入参
  17. /// </summary>
  18. /// <param name="SnapshotBulletinTypeName">类别名称</param>
  19. /// <param name="Title">标题</param>
  20. /// <param name="No">文档编号</param>
  21. /// <param name="DepartmentName">部门</param>
  22. /// <param name="CreatorName">发布人</param>
  23. /// <param name="BeginCreationTime">发布开始时间</param>
  24. /// <param name="EndCreationTime">发布结束时间</param>
  25. /// <param name="State">状态</param>
  26. public record SnapshotBulletinItemsInDto(string? SnapshotBulletinTypeName, string? Title,
  27. string? No,
  28. string? DepartmentName,
  29. string? CreatorName,
  30. DateTime? BeginCreationTime,
  31. DateTime? EndCreationTime,
  32. EBulletinState? State
  33. ) : PagedRequest;
  34. public class SnapshotBulletinItemsOutDto
  35. {
  36. public string Id { get; set; }
  37. /// <summary>
  38. /// 标题
  39. /// </summary>
  40. public string Title { get; set; }
  41. /// <summary>
  42. /// No
  43. /// </summary>
  44. public string? No { get; set; }
  45. /// <summary>
  46. /// 字典中添加类型Id
  47. /// </summary>
  48. public string SnapshotBulletinTypeId { get; set; }
  49. /// <summary>
  50. /// 系统字典中添加类型名称
  51. /// </summary>
  52. public string SnapshotBulletinTypeName { get; set; }
  53. /// <summary>
  54. /// 阅读量
  55. /// </summary>
  56. public int ReadedNum { get; set; }
  57. /// <summary>
  58. /// 发布时间
  59. /// </summary>
  60. public DateTime? BulletinTime { get; set; }
  61. /// <summary>
  62. /// 公告状态
  63. /// </summary>
  64. public EBulletinState BulletinState { get; set; }
  65. public string BulletinStateText => BulletinState.GetDescription();
  66. /// <summary>
  67. /// 所属部门ID
  68. /// </summary>
  69. public string SourceOrgId { get; set; }
  70. /// <summary>
  71. /// 所属部门
  72. /// </summary>
  73. public string SourceOrgName { get; set; }
  74. /// <summary>
  75. /// 发布人
  76. /// </summary>
  77. public string? CreatorId { get; set; }
  78. /// <summary>
  79. /// 发布人名
  80. /// </summary>
  81. public string? CreatorName { get; set; }
  82. /// <summary>
  83. /// 部门名称
  84. /// </summary>
  85. public string? DepartmentName { get; set; }
  86. /// <summary>
  87. /// 是否公开
  88. /// </summary>
  89. public bool? IsOpen { get; set; }
  90. /// <summary>
  91. /// 是否加粗
  92. /// </summary>
  93. public bool? IsBold { get; set; }
  94. /// <summary>
  95. /// 网站公开
  96. /// </summary>
  97. public bool? IsOpenWebsite { get; set; }
  98. /// <summary>
  99. /// 微博公开
  100. /// </summary>
  101. public bool? IsWeibo { get; set; }
  102. /// <summary>
  103. /// 微信公开
  104. /// </summary>
  105. public bool? IsWeChat { get; set; }
  106. }
  107. public class SnapshotBulletinDetailOutDto : UpdateSnapshotBulletinInDto
  108. { }
  109. public class UpdateSnapshotBulletinInDto : AddSnapshotBulletinInDto
  110. {
  111. /// <summary>
  112. /// Id
  113. /// </summary>
  114. [Required]
  115. public string Id { get; set; }
  116. }
  117. public class AddSnapshotBulletinInDto
  118. {
  119. /// <summary>
  120. /// 标题
  121. /// </summary>
  122. [Required]
  123. public string Title { get; set; }
  124. /// <summary>
  125. /// 内容
  126. /// </summary>
  127. [Required]
  128. public string Content { get; set; }
  129. /// <summary>
  130. /// 公告类型
  131. /// </summary>
  132. [Required]
  133. public string BulletinTypeId { get; set; }
  134. /// <summary>
  135. /// 公告类型名称
  136. /// </summary>
  137. [Required]
  138. public string BulletinTypeName { get; set; }
  139. /// <summary>
  140. /// 文档编号
  141. /// </summary>
  142. public string? No { get; set; }
  143. /// <summary>
  144. /// 所属部门
  145. /// </summary>
  146. public string? DepartmentName { get; set; }
  147. /// <summary>
  148. /// 所属部门Id
  149. /// </summary>
  150. public string? DepartmentId { get; set; }
  151. /// <summary>
  152. /// 来源部门名称
  153. /// </summary>
  154. public string? SourceOrgName { get; set; }
  155. /// <summary>
  156. /// 是否公开
  157. /// </summary>
  158. public bool? IsOpen { get; set; }
  159. /// <summary>
  160. /// 是否加粗
  161. /// </summary>
  162. public bool? IsBold { get; set; }
  163. /// <summary>
  164. /// 网站公开
  165. /// </summary>
  166. public bool? IsOpenWebsite { get; set; }
  167. /// <summary>
  168. /// 微博公开
  169. /// </summary>
  170. public bool? IsWeibo { get; set; }
  171. /// <summary>
  172. /// 微信公开
  173. /// </summary>
  174. public bool? IsWeChat { get; set; }
  175. /// <summary>
  176. /// 是否置顶
  177. /// </summary>
  178. public bool? IsTop { get; set; }
  179. /// <summary>
  180. /// 是否飘窗
  181. /// </summary>
  182. public bool IsPopup { get; set; }
  183. /// <summary>
  184. /// 时间
  185. /// </summary>
  186. public DateTime? BulletinTime { get; set; }
  187. /// <summary>
  188. /// 来源方式
  189. /// </summary>
  190. public string SourceMode { get; set; }
  191. /// <summary>
  192. /// 视频地址
  193. /// </summary>
  194. public string VideoPath { get; set; }
  195. }