|
@@ -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 };
|