|
@@ -1,11 +1,13 @@
|
|
|
using Hotline.Application.Knowledge;
|
|
|
using Hotline.KnowledgeBase;
|
|
|
+using Hotline.KnowledgeBase.Notifies;
|
|
|
using Hotline.Permissions;
|
|
|
using Hotline.Repository.SqlSugar.Extensions;
|
|
|
using Hotline.Share.Dtos;
|
|
|
using Hotline.Share.Dtos.Knowledge;
|
|
|
using Hotline.Share.Enums.KnowledgeBase;
|
|
|
using MapsterMapper;
|
|
|
+using MediatR;
|
|
|
using Microsoft.AspNetCore.Mvc;
|
|
|
using SqlSugar;
|
|
|
using XF.Domain.Authentications;
|
|
@@ -24,6 +26,7 @@ namespace Hotline.Api.Controllers
|
|
|
private readonly IKnowledgeDomainService _knowledgeDomainService;
|
|
|
private readonly IMapper _mapper;
|
|
|
private readonly IKnowApplication _knowApplication;
|
|
|
+ private readonly IMediator _mediator;
|
|
|
|
|
|
/// <summary>
|
|
|
///
|
|
@@ -35,7 +38,8 @@ namespace Hotline.Api.Controllers
|
|
|
/// <param name="mapper"></param>
|
|
|
/// <param name="knowApplication"></param>
|
|
|
public KnowledgeController(IKnowledgeRepository knowledgeRepository, IKnowledgeTempRepository knowledgeTempRepository,
|
|
|
- ISessionContext sessionContext, IKnowledgeDomainService knowledgeDomainService, IMapper mapper, IKnowApplication knowApplication)
|
|
|
+ ISessionContext sessionContext, IKnowledgeDomainService knowledgeDomainService, IMapper mapper, IKnowApplication knowApplication,
|
|
|
+ IMediator mediator)
|
|
|
{
|
|
|
_knowledgeRepository = knowledgeRepository;
|
|
|
_knowledgeTempRepository = knowledgeTempRepository;
|
|
@@ -43,6 +47,7 @@ namespace Hotline.Api.Controllers
|
|
|
_knowledgeDomainService = knowledgeDomainService;
|
|
|
_mapper = mapper;
|
|
|
_knowApplication = knowApplication;
|
|
|
+ _mediator = mediator;
|
|
|
}
|
|
|
#region 草稿箱
|
|
|
/// <summary>
|
|
@@ -150,7 +155,9 @@ namespace Hotline.Api.Controllers
|
|
|
[HttpGet("info/{Id}")]
|
|
|
public async Task<Knowledge> KnowledgeInfo(string Id)
|
|
|
{
|
|
|
- return await _knowledgeDomainService.KnowledgeInfo(Id, HttpContext.RequestAborted);
|
|
|
+ var knowledge = await _knowledgeDomainService.KnowledgeInfo(Id, HttpContext.RequestAborted);
|
|
|
+ _mediator.Publish(new GetKnowledgeInfoNotify(knowledge));
|
|
|
+ return knowledge;
|
|
|
}
|
|
|
|
|
|
/// <summary>
|