|
@@ -290,11 +290,14 @@ namespace Hotline.Api.Controllers
|
|
|
[HttpPut("update")]
|
|
|
public async Task UpdateKnowledge([FromBody] UpdateKnowledgeDto dto)
|
|
|
{
|
|
|
- if (dto.Status != EKnowledgeStatus.Drafts)
|
|
|
+ var knowledge = await _knowledgeRepository.GetAsync(dto.Id);
|
|
|
+ if (knowledge == null)
|
|
|
+ throw UserFriendlyException.SameMessage("知识库数据错误");
|
|
|
+ if (knowledge.Status != EKnowledgeStatus.Drafts)
|
|
|
throw UserFriendlyException.SameMessage("非草稿数据不可修改");
|
|
|
- var kn = _mapper.Map<Knowledge>(dto);
|
|
|
+ _mapper.Map(dto, knowledge);
|
|
|
if (dto.Tags.Any()) await _repositoryts.UpdateVectorAsync(dto.Id, dto.Tags, HttpContext.RequestAborted);
|
|
|
- await _knowledgeRepository.UpdateAsync(kn, HttpContext.RequestAborted);
|
|
|
+ await _knowledgeRepository.UpdateAsync(knowledge, HttpContext.RequestAborted);
|
|
|
if (dto.Workflow != null)
|
|
|
{
|
|
|
var startDto = _mapper.Map<StartWorkflowDto>(dto.Workflow);
|