Browse Source

知识库

田爽 1 year ago
parent
commit
24e4548f32

+ 1 - 1
src/Hotline.Api/Controllers/KnowledgeController.cs

@@ -481,7 +481,7 @@ namespace Hotline.Api.Controllers
 				.WhereIF(!string.IsNullOrEmpty(pagedDto.Title), x => x.Title.Contains(pagedDto.Title!))
 				.WhereIF(!string.IsNullOrEmpty(pagedDto.Title), x => x.Title.Contains(pagedDto.Title!))
 				.WhereIF(!string.IsNullOrEmpty(pagedDto.Keyword), x => x.Title.Contains(pagedDto.Keyword!) || x.CreatorName.Contains(pagedDto.Keyword!) || x.CreatorOrgName.Contains(pagedDto.Keyword!) || x.SourceOrganize.Name.Contains(pagedDto.Keyword!))
 				.WhereIF(!string.IsNullOrEmpty(pagedDto.Keyword), x => x.Title.Contains(pagedDto.Keyword!) || x.CreatorName.Contains(pagedDto.Keyword!) || x.CreatorOrgName.Contains(pagedDto.Keyword!) || x.SourceOrganize.Name.Contains(pagedDto.Keyword!))
 				.WhereIF(pagedDto.Status.HasValue && pagedDto.Status != EKnowledgeStatus.OffShelf, x => x.Status == pagedDto.Status && ((x.ExpiredTime != null && x.ExpiredTime > DateTime.Now) || x.ExpiredTime == null))
 				.WhereIF(pagedDto.Status.HasValue && pagedDto.Status != EKnowledgeStatus.OffShelf, x => x.Status == pagedDto.Status && ((x.ExpiredTime != null && x.ExpiredTime > DateTime.Now) || x.ExpiredTime == null))
-				.WhereIF(pagedDto.Status.HasValue && pagedDto.Status == EKnowledgeStatus.OffShelf, x => x.Status == pagedDto.Status || (x.ExpiredTime != null && x.ExpiredTime < DateTime.Now))
+				.WhereIF(pagedDto.Status.HasValue && pagedDto.Status == EKnowledgeStatus.OffShelf, x => x.Status == pagedDto.Status || (x.ExpiredTime != null && x.ExpiredTime < DateTime.Now && x.Status != EKnowledgeStatus.Drafts))
 				.WhereIF(pagedDto.IsPublic.HasValue, x => x.IsPublic == pagedDto.IsPublic)
 				.WhereIF(pagedDto.IsPublic.HasValue, x => x.IsPublic == pagedDto.IsPublic)
 				.WhereIF(!string.IsNullOrEmpty(pagedDto.Summary), x => x.Summary != null && x.Summary.Contains(pagedDto.Summary!))
 				.WhereIF(!string.IsNullOrEmpty(pagedDto.Summary), x => x.Summary != null && x.Summary.Contains(pagedDto.Summary!))
 				.WhereIF(!string.IsNullOrEmpty(typeSpliceName), x => x.KnowledgeType.SpliceName.EndsWith(typeSpliceName!))
 				.WhereIF(!string.IsNullOrEmpty(typeSpliceName), x => x.KnowledgeType.SpliceName.EndsWith(typeSpliceName!))

+ 5 - 5
src/Hotline.Share/Dtos/Knowledge/KnowledgeDataDto.cs

@@ -47,12 +47,12 @@ namespace Hotline.Share.Dtos.Knowledge
         /// <summary>
         /// <summary>
         /// 文档状态
         /// 文档状态
         /// </summary>
         /// </summary>
-        public EKnowledgeStatus Status { get; set; }
+        public EKnowledgeStatus Status  => Status != EKnowledgeStatus.Drafts && DateTime.Now > ExpiredTime ?  EKnowledgeStatus.Overdue : Status;
 
 
-        /// <summary>
-        /// 文档状态名称
-        /// </summary>
-        public string StatusName => Status.ToString() == "0" ? "" : DateTime.Now > ExpiredTime ? "已过期" : Status.GetDescription();
+		/// <summary>
+		/// 文档状态名称
+		/// </summary>
+		public string StatusName => Status.GetDescription();
 
 
         /// <summary>
         /// <summary>
         /// 流程ID
         /// 流程ID

+ 6 - 0
src/Hotline.Share/Enums/KnowledgeBase/EKnowledgeStatus.cs

@@ -42,4 +42,10 @@ public enum EKnowledgeStatus
     /// </summary>
     /// </summary>
 	[Description("已驳回")]
 	[Description("已驳回")]
     Revert = 5,
     Revert = 5,
+
+	/// <summary>
+	/// 已过期
+	/// </summary>
+	[Description("已过期")]
+	Overdue = 6,
 }
 }