ArticleDto.cs 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157
  1. using ZR.Model.Enum;
  2. namespace ZR.Model.Content.Dto
  3. {
  4. public class ArticleQueryDto : PagerInfo
  5. {
  6. public long? UserId { get; set; }
  7. public string Status { get; set; }
  8. public string Title { get; set; }
  9. public string AbstractText { get; set; }
  10. public int? IsPublic { get; set; }
  11. public int? IsTop { get; set; }
  12. public int? CategoryId { get; set; }
  13. public DateTime? BeginTime { get; set; }
  14. public DateTime? EndTime { get; set; }
  15. public int? ArticleType { get; set; }
  16. /// <summary>
  17. /// 1、最新 2、私密 3、热门
  18. /// </summary>
  19. public int TabId { get; set; }
  20. /// <summary>
  21. /// 话题ID
  22. /// </summary>
  23. public int? TopicId { get; set; }
  24. /// <summary>
  25. /// 排序 1、热门 2、最新
  26. /// </summary>
  27. public int? OrderBy { get; set; }
  28. /// <summary>
  29. /// 审核状态
  30. /// </summary>
  31. public AuditStatusEnum? AuditStatus { get; set; }
  32. /// <summary>
  33. /// 查询我加入的圈子
  34. /// </summary>
  35. public bool QueryMyJoin { get; set; }
  36. /// <summary>
  37. /// 搜索内容
  38. /// </summary>
  39. public string SearchText { get; set; }
  40. }
  41. /// <summary>
  42. /// 输入输出对象
  43. /// </summary>
  44. public class ArticleDto
  45. {
  46. [Required(ErrorMessage = "Cid不能为空")]
  47. public long Cid { get; set; }
  48. //[Required(ErrorMessage = "标题不能为空")]
  49. public string Title { get; set; }
  50. [Required(ErrorMessage = "内容不能为空")]
  51. public string Content { get; set; }
  52. public long? UserId { get; set; }
  53. public string Status { get; set; }
  54. public string EditorType { get; set; }
  55. public string Tags { get; set; }
  56. public int Hits { get; set; }
  57. public int? CategoryId { get; set; }
  58. public DateTime? CreateTime { get; set; }
  59. public DateTime? UpdateTime { get; set; }
  60. public string AuthorName { get; set; }
  61. public string CoverUrl { get; set; }
  62. public ArticleCategoryDto CategoryNav { get; set; }
  63. public string[] TagList
  64. {
  65. get
  66. {
  67. return Tags?.Split(',', StringSplitOptions.RemoveEmptyEntries) ?? Array.Empty<string>();
  68. }
  69. }
  70. public int IsPublic { get; set; } = 1;
  71. public string AbstractText { get; set; }
  72. public int IsTop { get; set; }
  73. /// <summary>
  74. /// 内容类型
  75. /// </summary>
  76. public ArticleTypeEnum ArticleType { get; set; }
  77. /// <summary>
  78. /// 点赞数
  79. /// </summary>
  80. public int PraiseNum { get; set; }
  81. /// <summary>
  82. /// 评论数
  83. /// </summary>
  84. public int CommentNum { get; set; }
  85. /// <summary>
  86. /// 分享数
  87. /// </summary>
  88. public int ShareNum { get; set; }
  89. /// <summary>
  90. /// 用户IP
  91. /// </summary>
  92. [JsonIgnore]
  93. public string UserIP { get; set; }
  94. /// <summary>
  95. /// 地理位置
  96. /// </summary>
  97. [JsonIgnore]
  98. public string Location { get; set; }
  99. /// <summary>
  100. /// 封面图片集合
  101. /// </summary>
  102. public string[] CoverImgList
  103. {
  104. get
  105. {
  106. return CoverUrl?.Split(',', StringSplitOptions.RemoveEmptyEntries) ?? Array.Empty<string>();
  107. }
  108. }
  109. /// <summary>
  110. /// 地理位置
  111. /// </summary>
  112. public string Position
  113. {
  114. get
  115. {
  116. var temp_location = Location?.Split("-")?[0];
  117. if (temp_location == "0")
  118. {
  119. return "IP未知";
  120. }
  121. return temp_location?.Replace("省", "");
  122. }
  123. }
  124. /// <summary>
  125. /// 是否点赞
  126. /// </summary>
  127. public int IsPraise { get; set; }
  128. public long TopicId { get; set; }
  129. public string TopicName { get; set; }
  130. public ArticleUser User { get; set; }
  131. /// <summary>
  132. /// 审核状态
  133. /// </summary>
  134. public AuditStatusEnum? AuditStatus { get; set; }
  135. public CommentSwitchEnum? CommentSwitch { get; set; }
  136. }
  137. public class ArticleUser
  138. {
  139. public string Avatar { get; set; } = string.Empty;
  140. public string NickName { get; set; }
  141. public int Sex { get; set; }
  142. }
  143. }