浏览代码

Merge branch 'test' of http://110.188.24.182:10023/Fengwo/hotline into test

tangjiang 1 周之前
父节点
当前提交
4071c2b3e5
共有 2 个文件被更改,包括 38 次插入43 次删除
  1. 33 32
      src/Hotline.Api/Controllers/KnowledgeController.cs
  2. 5 11
      src/Hotline.Share/Dtos/Knowledge/KnowledgeDto.cs

+ 33 - 32
src/Hotline.Api/Controllers/KnowledgeController.cs

@@ -549,8 +549,8 @@ namespace Hotline.Api.Controllers
         [LogFilter("查询知识库修改记录")]
         public async Task<object> QueryRecord(string Id)
         {
-            var queryDto = new KnowledgeRecordDto();
-            var knowledgeDto = new KnowledgeRecordDto();
+            var queryDto = new KnowledgeDto();
+            var knowledgeDto = new KnowledgeDto();
 
             var query = await _knowledgeRecordRepository.Queryable()
                 .Includes(x => x.SourceOrganize)
@@ -565,32 +565,30 @@ namespace Hotline.Api.Controllers
                 #region 最新修改记录
 
                 //转化
-                var knowledgeInfoDto1 = _mapper.Map<KnowledgeDto>(query);
+                queryDto = _mapper.Map<KnowledgeDto>(query);
 
-                if (knowledgeInfoDto1 != null && !string.IsNullOrEmpty(knowledgeInfoDto1.Content))
-                    knowledgeInfoDto1.Content = _bulletinApplication.GetSiteUrls(knowledgeInfoDto1.Content);
+                if (queryDto != null && !string.IsNullOrEmpty(queryDto.Content))
+                    queryDto.Content = _bulletinApplication.GetSiteUrls(queryDto.Content);
 
                 //收藏
                 var collect1 = await _knowledgeCollectRepository.GetAsync(x => x.KnowledgeId == Id && x.CreatorId == _sessionContext.UserId);
-                if (knowledgeInfoDto1 != null && collect1 != null)
-                    knowledgeInfoDto1.Collect = _mapper.Map<KnowledgeCollectDto>(collect1);
+                if (queryDto != null && collect1 != null)
+                    queryDto.Collect = _mapper.Map<KnowledgeCollectDto>(collect1);
                 //关联知识
                 var knowledges1 = await _knowledgeRepository.Queryable().In(x => x.Id, query.Knowledges).Where(x => x.Status == EKnowledgeStatus.OnShelf && ((x.ExpiredTime != null && x.ExpiredTime >= DateTime.Now) || x.ExpiredTime == null)).ToListAsync();
-                if (knowledgeInfoDto1 != null && knowledges1.Any())
-                    knowledgeInfoDto1.KnowledgeDtos = _mapper.Map<List<KnowledgeDto>>(knowledges1);
+                if (queryDto != null && knowledges1.Any())
+                    queryDto.KnowledgeDtos = _mapper.Map<List<KnowledgeDto>>(knowledges1);
                 //关键词
                 var knowledgeWords1 = await _knowledgeWrodRepository.Queryable().In(x => x.Id, query.Keywords).ToListAsync();
-                if (knowledgeInfoDto1 != null && knowledgeWords1.Any())
-                    knowledgeInfoDto1.KeywordsDto = _mapper.Map<List<KnowledgeWordDto>>(knowledgeWords1);
+                if (queryDto != null && knowledgeWords1.Any())
+                    queryDto.KeywordsDto = _mapper.Map<List<KnowledgeWordDto>>(knowledgeWords1);
 
-                if (knowledgeInfoDto1 != null && knowledgeInfoDto1.FileJson != null && knowledgeInfoDto1.FileJson.Any())
+                if (queryDto != null && queryDto.FileJson != null && queryDto.FileJson.Any())
                 {
-                    var ids = knowledgeInfoDto1.FileJson.Select(x => x.Id).ToList();
-                    knowledgeInfoDto1.Files = await _fileRepository.GetFilesAsync(ids, HttpContext.RequestAborted);
+                    var ids = queryDto.FileJson.Select(x => x.Id).ToList();
+                    queryDto.Files = await _fileRepository.GetFilesAsync(ids, HttpContext.RequestAborted);
                 }
 
-                queryDto = _mapper.Map<KnowledgeRecordDto>(query);
-
                 #endregion
             }
 
@@ -605,34 +603,37 @@ namespace Hotline.Api.Controllers
                 #region 当前知识库
 
                 //转化
-                var knowledgeShowInfoDto = _mapper.Map<KnowledgeDto>(knowledge);
+                knowledgeDto = _mapper.Map<KnowledgeDto>(knowledge);
 
-                if (knowledgeShowInfoDto != null && !string.IsNullOrEmpty(knowledgeShowInfoDto.Content))
-                    knowledgeShowInfoDto.Content = _bulletinApplication.GetSiteUrls(knowledgeShowInfoDto.Content);
+                if (knowledgeDto != null && !string.IsNullOrEmpty(knowledgeDto.Content))
+                    knowledgeDto.Content = _bulletinApplication.GetSiteUrls(knowledgeDto.Content);
 
                 //收藏
                 var collect = await _knowledgeCollectRepository.GetAsync(x => x.KnowledgeId == Id && x.CreatorId == _sessionContext.UserId);
-                if (knowledgeShowInfoDto != null && collect != null)
-                    knowledgeShowInfoDto.Collect = _mapper.Map<KnowledgeCollectDto>(collect);
+                if (knowledgeDto != null && collect != null)
+                    knowledgeDto.Collect = _mapper.Map<KnowledgeCollectDto>(collect);
                 //关联知识
                 var knowledges = await _knowledgeRepository.Queryable().In(x => x.Id, knowledge.Knowledges).Where(x => x.Status == EKnowledgeStatus.OnShelf && ((x.ExpiredTime != null && x.ExpiredTime >= DateTime.Now) || x.ExpiredTime == null)).ToListAsync();
-                if (knowledgeShowInfoDto != null && knowledges.Any())
-                    knowledgeShowInfoDto.KnowledgeDtos = _mapper.Map<List<KnowledgeDto>>(knowledges);
+                if (knowledgeDto != null && knowledges.Any())
+                    knowledgeDto.KnowledgeDtos = _mapper.Map<List<KnowledgeDto>>(knowledges);
                 //关键词
                 var knowledgeWords = await _knowledgeWrodRepository.Queryable().In(x => x.Id, knowledge.Keywords).ToListAsync();
-                if (knowledgeShowInfoDto != null && knowledgeWords.Any())
-                    knowledgeShowInfoDto.KeywordsDto = _mapper.Map<List<KnowledgeWordDto>>(knowledgeWords);
+                if (knowledgeDto != null && knowledgeWords.Any())
+                    knowledgeDto.KeywordsDto = _mapper.Map<List<KnowledgeWordDto>>(knowledgeWords);
+
+                if (knowledgeDto != null && knowledgeDto.FileJson != null && knowledgeDto.FileJson.Any())
+                {
+                    var ids = knowledgeDto.FileJson.Select(x => x.Id).ToList();
+                    knowledgeDto.Files = await _fileRepository.GetFilesAsync(ids, HttpContext.RequestAborted);
+                }
 
-                if (knowledgeShowInfoDto != null && knowledgeShowInfoDto.FileJson != null && knowledgeShowInfoDto.FileJson.Any())
+                if (knowledgeDto != null)
                 {
-                    var ids = knowledgeShowInfoDto.FileJson.Select(x => x.Id).ToList();
-                    knowledgeShowInfoDto.Files = await _fileRepository.GetFilesAsync(ids, HttpContext.RequestAborted);
+                    knowledgeDto.knowledgeRecordTypeText = knowledge.KnowledgeTypes != null && knowledge.KnowledgeTypes.Any()
+                                                            ? string.Join(',', knowledge.KnowledgeTypes.Select(x => x.Name))
+                                                            : string.Empty;
                 }
 
-                knowledgeDto = _mapper.Map<KnowledgeRecordDto>(knowledge);
-                knowledgeDto.knowledgeRecordTypeText = knowledge.KnowledgeTypes != null && knowledge.KnowledgeTypes.Any()
-                                                        ? string.Join(',', knowledge.KnowledgeTypes.Select(x => x.Name))
-                                                        : string.Empty;
                 #endregion
             }
             return new { OldInfo = queryDto, NewInfo = knowledgeDto };

+ 5 - 11
src/Hotline.Share/Dtos/Knowledge/KnowledgeDto.cs

@@ -166,17 +166,6 @@ namespace Hotline.Share.Dtos.Knowledge
         public string OrgId { get; set; }
     }
 
-    /// <summary>
-    /// 知识库记录
-    /// </summary>
-    public class KnowledgeRecordDto : KnowledgeDto
-    {
-        /// <summary>
-        /// 知识库记录分类值
-        /// </summary>
-        public string? knowledgeRecordTypeText { get; set; }
-    }
-
     /// <summary>
     /// 基础
     /// </summary>
@@ -300,6 +289,11 @@ namespace Hotline.Share.Dtos.Knowledge
         /// 上架时间
         /// </summary>
         public DateTime? OnShelfTime { get; set; }
+
+        /// <summary>
+        /// 知识库记录分类值
+        /// </summary>
+        public string? knowledgeRecordTypeText { get; set; }
     }
 
     public class KnowledgeBaseDto