|
@@ -223,7 +223,7 @@ namespace Hotline.Api.Controllers
|
|
|
{
|
|
|
var kn = await _knowledgeDomainService.AddKnowledgeAsync(dto, HttpContext.RequestAborted);
|
|
|
|
|
|
- var approve = await _knowledgeDomainService.AddKnowledgeApproveAsync(EKnowledgeApproveType.Add, kn.Id, null,
|
|
|
+ var approve = await _knowledgeDomainService.AddKnowledgeApproveAsync(EKnowledgeApproveType.Add, kn, null,
|
|
|
HttpContext.RequestAborted);
|
|
|
|
|
|
return approve.Id;
|
|
@@ -275,36 +275,8 @@ namespace Hotline.Api.Controllers
|
|
|
/// </summary>
|
|
|
[HttpPost("offshelf")]
|
|
|
[LogFilter("知识下架")]
|
|
|
- public async Task OffShelf([FromBody] OffShelfKnowledgeDto dto)
|
|
|
- {
|
|
|
- var kn = await _knowledgeRepository.GetAsync(dto.Id, HttpContext.RequestAborted);
|
|
|
- if (kn is null) throw new UserFriendlyException("无效知识id");
|
|
|
- if (kn.Status == EKnowledgeStatus.OffShelf) return;
|
|
|
- if (kn.Status != EKnowledgeStatus.OnShelf) throw new UserFriendlyException("知识下架失败");
|
|
|
-
|
|
|
- if (_sessionContext.OrgIsCenter || !_appOptions.Value.IsYiBin)
|
|
|
- {
|
|
|
- kn.Status = EKnowledgeStatus.OffShelf;
|
|
|
- kn.OnShelfTime = null;
|
|
|
- kn.OffShelfTime = DateTime.Now;
|
|
|
- await _knowledgeRepository.UpdateAsync(kn, HttpContext.RequestAborted);
|
|
|
-
|
|
|
- var pushKnowledge = _mapper.Map<KnowledgeSendDto>(kn);
|
|
|
- pushKnowledge.CategoryCode = "01";
|
|
|
- pushKnowledge.CategoryName = "公共服务";
|
|
|
- //推省上
|
|
|
- await _capPublisher.PublishAsync(EventNames.HotlineKnowledgeRemove, pushKnowledge, cancellationToken: HttpContext.RequestAborted);
|
|
|
- }
|
|
|
- else
|
|
|
- {
|
|
|
- kn.Status = EKnowledgeStatus.Auditing;
|
|
|
- await _knowledgeRepository.UpdateAsync(kn, HttpContext.RequestAborted);
|
|
|
-
|
|
|
- var approve = await _knowledgeDomainService.AddKnowledgeApproveAsync(EKnowledgeApproveType.OffShelf,
|
|
|
- kn.Id, null, HttpContext.RequestAborted);
|
|
|
- }
|
|
|
-
|
|
|
- }
|
|
|
+ public Task OffShelf([FromBody] OffShelfKnowledgeDto dto) =>
|
|
|
+ _knowledgeDomainService.OffShelfAsync(dto, HttpContext.RequestAborted);
|
|
|
|
|
|
/// <summary>
|
|
|
/// 知识库-知识下架并发起审批(new)
|
|
@@ -313,33 +285,10 @@ namespace Hotline.Api.Controllers
|
|
|
[LogFilter("知识下架")]
|
|
|
public async Task OffShelfAndApprove([FromBody] OffShelfKnowledgeDto dto)
|
|
|
{
|
|
|
- var kn = await _knowledgeRepository.GetAsync(dto.Id, HttpContext.RequestAborted);
|
|
|
- if (kn is null) throw new UserFriendlyException("无效知识id");
|
|
|
- if (kn.Status == EKnowledgeStatus.OffShelf) return;
|
|
|
- if (kn.Status != EKnowledgeStatus.OnShelf) throw new UserFriendlyException("知识下架失败");
|
|
|
-
|
|
|
- if (_sessionContext.OrgIsCenter || !_appOptions.Value.IsYiBin)
|
|
|
- {
|
|
|
- kn.Status = EKnowledgeStatus.OffShelf;
|
|
|
- kn.OnShelfTime = null;
|
|
|
- kn.OffShelfTime = DateTime.Now;
|
|
|
- await _knowledgeRepository.UpdateAsync(kn, HttpContext.RequestAborted);
|
|
|
-
|
|
|
- var pushKnowledge = _mapper.Map<KnowledgeSendDto>(kn);
|
|
|
- pushKnowledge.CategoryCode = "01";
|
|
|
- pushKnowledge.CategoryName = "公共服务";
|
|
|
- //推省上
|
|
|
- await _capPublisher.PublishAsync(EventNames.HotlineKnowledgeRemove, pushKnowledge, cancellationToken: HttpContext.RequestAborted);
|
|
|
- }
|
|
|
- else
|
|
|
- {
|
|
|
- kn.Status = EKnowledgeStatus.Auditing;
|
|
|
- await _knowledgeRepository.UpdateAsync(kn, HttpContext.RequestAborted);
|
|
|
-
|
|
|
- var approve = await _knowledgeDomainService.AddKnowledgeApproveAsync(EKnowledgeApproveType.OffShelf,
|
|
|
- kn.Id, null, HttpContext.RequestAborted);
|
|
|
- }
|
|
|
+ var kn = await _knowledgeDomainService.OffShelfAsync(dto, HttpContext.RequestAborted);
|
|
|
|
|
|
+ await _knowledgeDomainService.AddKnowledgeApproveAsync(EKnowledgeApproveType.OffShelf,
|
|
|
+ kn, null, HttpContext.RequestAborted);
|
|
|
}
|
|
|
|
|
|
/// <summary>
|
|
@@ -482,12 +431,12 @@ namespace Hotline.Api.Controllers
|
|
|
|
|
|
if (kn.Status == EKnowledgeStatus.Drafts)
|
|
|
{
|
|
|
- await _knowledgeDomainService.AddKnowledgeApproveAsync(EKnowledgeApproveType.Add, kn.Id, null,
|
|
|
+ await _knowledgeDomainService.AddKnowledgeApproveAsync(EKnowledgeApproveType.Add, kn, null,
|
|
|
HttpContext.RequestAborted);
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
- await _knowledgeDomainService.AddKnowledgeApproveAsync(EKnowledgeApproveType.Update, kn.Id, dto.Opinion,
|
|
|
+ await _knowledgeDomainService.AddKnowledgeApproveAsync(EKnowledgeApproveType.Update, kn, dto.Opinion,
|
|
|
HttpContext.RequestAborted);
|
|
|
}
|
|
|
}
|
|
@@ -636,7 +585,7 @@ namespace Hotline.Api.Controllers
|
|
|
if (exists)
|
|
|
throw new UserFriendlyException($"该知识存在待审批申请, knId: {dto.Id}", "该知识存在待审批申请, 请先审批");
|
|
|
|
|
|
- await _knowledgeDomainService.AddKnowledgeApproveAsync(EKnowledgeApproveType.Delete, knowledge.Id, dto.Opinion,
|
|
|
+ await _knowledgeDomainService.AddKnowledgeApproveAsync(EKnowledgeApproveType.Delete, knowledge, dto.Opinion,
|
|
|
HttpContext.RequestAborted);
|
|
|
}
|
|
|
}
|