|
@@ -2,10 +2,12 @@
|
|
|
using Hotline.KnowledgeBase;
|
|
|
using Hotline.Permissions;
|
|
|
using Hotline.Repository.SqlSugar.Extensions;
|
|
|
+using Hotline.Settings;
|
|
|
using Hotline.Share.Dtos;
|
|
|
using Hotline.Share.Dtos.Knowledge;
|
|
|
using Hotline.Share.Enums.KnowledgeBase;
|
|
|
using Hotline.Share.Requests;
|
|
|
+using Hotline.Users;
|
|
|
using MapsterMapper;
|
|
|
using Microsoft.AspNetCore.Mvc;
|
|
|
using XF.Domain.Authentications;
|
|
@@ -23,6 +25,8 @@ namespace Hotline.Api.Controllers
|
|
|
private readonly ISessionContext _sessionContext;
|
|
|
private readonly IMapper _mapper;
|
|
|
private readonly IKnowApplication _knowApplication;
|
|
|
+ private readonly IUserRepository _userRepository;
|
|
|
+ private readonly ISystemOrganizeRepository _systemOrganizeRepository;
|
|
|
|
|
|
/// <summary>
|
|
|
///
|
|
@@ -32,14 +36,18 @@ namespace Hotline.Api.Controllers
|
|
|
/// <param name="sessionContext"></param>
|
|
|
/// <param name="mapper"></param>
|
|
|
/// <param name="knowApplication"></param>
|
|
|
+ /// <param name="userRepository"></param>
|
|
|
+ /// <param name="systemOrganizeRepository"></param>
|
|
|
public KnowledgeApplyController(IKnowledgeRepository knowledgeRepository, IKnowledgeApplyRepository knowledgeApplyRepository, ISessionContext sessionContext
|
|
|
- , IMapper mapper, IKnowApplication knowApplication)
|
|
|
+ , IMapper mapper, IKnowApplication knowApplication, IUserRepository userRepository, ISystemOrganizeRepository systemOrganizeRepository)
|
|
|
{
|
|
|
_knowledgeRepository = knowledgeRepository;
|
|
|
_knowledgeApplyRepository = knowledgeApplyRepository;
|
|
|
_sessionContext = sessionContext;
|
|
|
_mapper = mapper;
|
|
|
_knowApplication = knowApplication;
|
|
|
+ _userRepository = userRepository;
|
|
|
+ _systemOrganizeRepository = systemOrganizeRepository;
|
|
|
}
|
|
|
|
|
|
/// <summary>
|
|
@@ -87,6 +95,8 @@ namespace Hotline.Api.Controllers
|
|
|
handle.HandleTime = DateTime.Now;
|
|
|
handle.KnowledgeId = dto.KnowledgeId;
|
|
|
handle.Opinion = dto.Opinion;
|
|
|
+ handle.Processor = _sessionContext.UserName;
|
|
|
+ handle.ProcessorId = _sessionContext.RequiredUserId;
|
|
|
//修改办理信息
|
|
|
await _knowledgeApplyRepository.UpdateAsync(handle, HttpContext.RequestAborted);
|
|
|
}
|
|
@@ -128,7 +138,7 @@ namespace Hotline.Api.Controllers
|
|
|
if (string.IsNullOrEmpty(dto.Opinion))
|
|
|
throw UserFriendlyException.SameMessage("退回原因不能为空");
|
|
|
handle.Status = EKnowledgeApplyStatus.Failed;
|
|
|
- handle.ReturnTime = DateTime.Now;
|
|
|
+ handle.ReturnTime = DateTime.Now;
|
|
|
handle.HandleTime = DateTime.Now;
|
|
|
handle.Opinion = dto.Opinion;
|
|
|
await _knowledgeApplyRepository.UpdateAsync(handle, HttpContext.RequestAborted);
|
|
@@ -165,6 +175,14 @@ namespace Hotline.Api.Controllers
|
|
|
DataKnowledgeApplyDto dataKnowledgeApplyDto = new();
|
|
|
_mapper.Map(handle, dataKnowledgeApplyDto);
|
|
|
|
|
|
+ var user = await _userRepository.GetAsync(handle.CreatorId, HttpContext.RequestAborted);
|
|
|
+ if (user != null)
|
|
|
+ dataKnowledgeApplyDto.CreationName = user.Name;
|
|
|
+
|
|
|
+ var organize = await _systemOrganizeRepository.GetAsync(handle.CreatorOrgId, HttpContext.RequestAborted);
|
|
|
+ if (organize != null)
|
|
|
+ dataKnowledgeApplyDto.CreationBMName = organize.OrgName;
|
|
|
+
|
|
|
var knowledge = await _knowledgeRepository.GetAsync(p => p.Id == handle.KnowledgeId, HttpContext.RequestAborted);
|
|
|
if (knowledge != null)
|
|
|
{
|