SnapshotBulletin.cs 5.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204
  1. using Hotline.Share.Dtos;
  2. using Hotline.Share.Enums.Article;
  3. using Hotline.Share.Enums.Snapshot;
  4. using Hotline.Users;
  5. using SqlSugar;
  6. using System.ComponentModel;
  7. using XF.Domain.Repository;
  8. namespace Hotline.Snapshot;
  9. /// <summary>
  10. /// 随手拍公告
  11. /// </summary>
  12. [Description("随手拍公告")]
  13. public class SnapshotBulletin : CreationEntity
  14. {
  15. /// <summary>
  16. /// 标题
  17. /// </summary>
  18. [SugarColumn(ColumnDescription = "标题")]
  19. public string Title { get; set; }
  20. /// <summary>
  21. /// No
  22. /// </summary>
  23. [SugarColumn(ColumnDescription = "No")]
  24. public string? No { get; set; }
  25. /// <summary>
  26. /// 所属部门
  27. /// </summary>
  28. [SugarColumn(ColumnDescription = "所属部门")]
  29. public string? DepartmentName { get; set; }
  30. /// <summary>
  31. /// 所属部门Id
  32. /// </summary>
  33. [SugarColumn(ColumnDescription = "所属部门Id")]
  34. public string? DepartmentId { get; set; }
  35. /// <summary>
  36. /// 来源部门名称
  37. /// </summary>
  38. [SugarColumn(ColumnDescription = "来源部门名称")]
  39. public string? SourceOrgName { get; set; }
  40. /// <summary>
  41. /// 内容
  42. /// </summary>
  43. [SugarColumn(ColumnDataType = "text")]
  44. public string Content { get; set; }
  45. /// <summary>
  46. /// 字典中添加类型Id
  47. /// </summary>
  48. [SugarColumn(ColumnDescription = "字典中添加类型Id")]
  49. public string SnapshotBulletinTypeId { get; set; }
  50. /// <summary>
  51. /// 系统字典中添加类型名称
  52. /// </summary>
  53. [SugarColumn(ColumnDescription = "系统字典中添加类型名称")]
  54. public string SnapshotBulletinTypeName { get; set; }
  55. /// <summary>
  56. /// 阅读量
  57. /// </summary>
  58. [SugarColumn(ColumnDescription = "阅读量")]
  59. public int ReadedNum { get; set; }
  60. /// <summary>
  61. /// 公告状态
  62. /// </summary>
  63. [SugarColumn(ColumnDescription = "公告状态")]
  64. public EBulletinState BulletinState { get; set; }
  65. /// <summary>
  66. /// 提交时间
  67. /// </summary>
  68. [SugarColumn(ColumnDescription = "提交时间")]
  69. public DateTime? CommitTime { get; set; }
  70. /// <summary>
  71. /// 审核意见
  72. /// </summary>
  73. [SugarColumn(ColumnDescription = "审核意见")]
  74. public string? ExaminOpinion { get; set; }
  75. /// <summary>
  76. /// 审核人
  77. /// </summary>
  78. [SugarColumn(ColumnDescription = "审核人")]
  79. public string? ExaminManId { get; set; }
  80. /// <summary>
  81. /// 审核人
  82. /// </summary>
  83. [Navigate(NavigateType.OneToOne, nameof(ExaminManId))]
  84. public User? ExaminMan { get; set; }
  85. /// <summary>
  86. /// 审核时间
  87. /// </summary>
  88. [SugarColumn(ColumnDescription = "审核时间")]
  89. public DateTime? ExaminTime { get; set; }
  90. /// <summary>
  91. /// 是否公开
  92. /// </summary>
  93. [SugarColumn(ColumnDescription = "是否公开")]
  94. public bool? IsOpen { get; set; }
  95. /// <summary>
  96. /// 是否加粗
  97. /// </summary>
  98. [SugarColumn(ColumnDescription = "是否加粗")]
  99. public bool? IsBold { get; set; }
  100. /// <summary>
  101. /// 网站公开
  102. /// </summary>
  103. [SugarColumn(ColumnDescription = "网站公开")]
  104. public bool? IsOpenWebsite { get; set; }
  105. /// <summary>
  106. /// 微博公开
  107. /// </summary>
  108. [SugarColumn(ColumnDescription = "微博公开")]
  109. public bool? IsWeibo { get; set; }
  110. /// <summary>
  111. /// 微信公开
  112. /// </summary>
  113. [SugarColumn(ColumnDescription = "微信公开")]
  114. public bool? IsWeChat { get; set; }
  115. /// <summary>
  116. /// 是否置顶
  117. /// </summary>
  118. [SugarColumn(ColumnDescription = "是否置顶")]
  119. public bool? IsTop { get; set; }
  120. /// <summary>
  121. /// 是否弹窗
  122. /// </summary>
  123. [SugarColumn(DefaultValue = "f", ColumnDescription = "是否弹窗")]
  124. public bool IsPopup { get; set; }
  125. /// <summary>
  126. /// 通知时间
  127. /// </summary>
  128. [SugarColumn(ColumnDescription = "通知时间")]
  129. public DateTime? BulletinTime { get; set; }
  130. /// <summary>
  131. /// 视频地址
  132. /// </summary>
  133. [SugarColumn(ColumnDescription = "视频地址")]
  134. public string? VideoPath { get; set; }
  135. /// <summary>
  136. /// 来源方式
  137. /// </summary>
  138. [SugarColumn(ColumnDescription = "来源方式")]
  139. public string? SourceMode { get; set; }
  140. /// <summary>
  141. /// 上下架
  142. /// </summary>
  143. [SugarColumn(ColumnDescription = "上下架")]
  144. public bool? IsArrive { get; set; }
  145. /// <summary>
  146. /// 阅读量+1
  147. /// </summary>
  148. public void Read()
  149. {
  150. ReadedNum++;
  151. }
  152. /// <summary>
  153. /// 公告形式
  154. /// </summary>
  155. [SugarColumn(ColumnDescription = "公告形式")]
  156. public EBulletinShape? Shape { get; set; }
  157. /// <summary>
  158. /// 志愿者类型Id
  159. /// </summary>
  160. [SugarColumn(ColumnDescription = "志愿者类型Id", ColumnDataType = "json", IsJson = true)]
  161. public List<string>? SafetyTypeId { get; set; }
  162. /// <summary>
  163. /// 视频封面
  164. /// </summary>
  165. [SugarColumn(ColumnDescription = "视频封面")]
  166. public string? VideoCoverImgUrl { get; set; }
  167. /// <summary>
  168. /// 视频名称
  169. /// </summary>
  170. [SugarColumn(ColumnDescription = "视频封面")]
  171. public string? VideoName { get; set; }
  172. }