田爽 1 year ago
parent
commit
4bc6f15154

+ 6 - 2
src/Hotline.Api/Controllers/KnowledgeController.cs

@@ -109,7 +109,6 @@ namespace Hotline.Api.Controllers
 
 			kn.Status = EKnowledgeStatus.Drafts;
 			var id = await _knowledgeRepository.AddAsync(kn, HttpContext.RequestAborted);
-			if (addDto.Tags.Any()) await _repositoryts.AddVectorAsync(id, DateTime.Now, addDto.Tags, HttpContext.RequestAborted);
 			if (dto.Workflow != null &&  !string.IsNullOrEmpty(id))
 			{
 				var startDto = _mapper.Map<StartWorkflowDto>(dto.Workflow);
@@ -183,7 +182,7 @@ namespace Hotline.Api.Controllers
 			if (knowledge.Status == EKnowledgeStatus.OnShelf || knowledge.Status == EKnowledgeStatus.Auditing)
 				throw UserFriendlyException.SameMessage("知识库数据不可修改");
 			_mapper.Map(dto.Data, knowledge);
-			if (update.Tags.Any()) await _repositoryts.UpdateVectorAsync(update.Id, update.Tags, HttpContext.RequestAborted);
+			//if (update.Tags.Any()) await _repositoryts.UpdateVectorAsync(update.Id, update.Tags, HttpContext.RequestAborted);
 			if (dto.Workflow != null)
 			{
 				var startDto = _mapper.Map<StartWorkflowDto>(dto.Workflow);
@@ -277,9 +276,14 @@ namespace Hotline.Api.Controllers
 			var collect = await _knowledgeCollectRepository.GetAsync(x => x.KnowledgeId == Id && x.CreatorId == _sessionContext.UserId);
 			if (collect != null)
 				knowledgeShowInfoDto.Collect = _mapper.Map<KnowledgeCollectDto>(collect);
+			//关联知识
 			var knowledges = await _knowledgeRepository.Queryable().In(x=>x.Id,knowledge.Knowledges).ToListAsync();
 			if (knowledges.Any())
 				knowledgeShowInfoDto.KnowledgeDtos = _mapper.Map<List<KnowledgeDto>>(knowledges);
+			//关键词
+			var knowledgeWords= await _knowledgeWrodRepository.Queryable().In(x => x.Id, knowledge.Keywords).ToListAsync();
+			if (knowledgeWords.Any())
+				knowledgeShowInfoDto.KeywordsDto = _mapper.Map<List<KnowledgeWordDto>>(knowledgeWords);
 			if (IsAddPv == true)
 				_mediator.Publish(new GetKnowledgeInfoNotify(knowledge));
 			return knowledgeShowInfoDto;

+ 6 - 1
src/Hotline.Share/Dtos/Knowledge/KnowledgeDto.cs

@@ -130,7 +130,7 @@ namespace Hotline.Share.Dtos.Knowledge
         /// <summary>
         /// 关键词
         /// </summary>
-        public string Keywords { get; set; }
+        public List<string> Keywords { get; set; }
 
         /// <summary>
         /// 附件
@@ -190,6 +190,11 @@ namespace Hotline.Share.Dtos.Knowledge
 		/// </summary>
 		public List<KnowledgeDto> KnowledgeDtos { get; set; }
 
+		/// <summary>
+		/// 关键词
+		/// </summary>
+		public List<KnowledgeWordDto> KeywordsDto { get; set; }
+
 	}
 
     public record KnowledgeBaseDto {

+ 2 - 2
src/Hotline/KnowledgeBase/Knowledge.cs

@@ -89,8 +89,8 @@ public class Knowledge : WorkflowEntity//   WorkflowEntity  FullStateEntity
     /// <summary>
     /// 关键词
     /// </summary>
-    [SugarColumn(IsNullable = true, ColumnDescription = "关键词")]
-    public string Keywords { get; set; }
+    [SugarColumn(ColumnDataType = "json", IsJson = true, IsNullable = true, ColumnDescription = "关键词")]
+    public List<string> Keywords { get; set; }
 
 	/// <summary>
 	/// 版本号