|
@@ -25,6 +25,7 @@ using Hotline.Share.Dtos.FlowEngine;
|
|
|
using Hotline.Share.Dtos.Knowledge;
|
|
|
using Hotline.Share.Dtos.Order;
|
|
|
using Hotline.Share.Enums.Article;
|
|
|
+using Hotline.Share.Enums.FlowEngine;
|
|
|
using Hotline.Share.Enums.KnowledgeBase;
|
|
|
using Hotline.Share.Mq;
|
|
|
using Hotline.Share.Tools;
|
|
@@ -335,21 +336,27 @@ namespace Hotline.Api.Controllers
|
|
|
var result = new StringBuilder();
|
|
|
var fail = 0;
|
|
|
var success = 0;
|
|
|
+ var nextWorkflowDto = new NextWorkflowDto
|
|
|
+ {
|
|
|
+ IsSms = dto.IsSms,
|
|
|
+ ReviewResult = dto.IsPass ? EReviewResult.Approval : EReviewResult.Failed,
|
|
|
+ Opinion = dto.Opinion
|
|
|
+ };
|
|
|
foreach (var knowledgeId in dto.KnowledgeIds)
|
|
|
{
|
|
|
try
|
|
|
{
|
|
|
var knowledge = await _knowledgeDomainService.KnowledgeInfo(knowledgeId, HttpContext.RequestAborted);
|
|
|
- dto.NextWorkflowDto.WorkflowId = knowledge.WorkflowId;
|
|
|
+ nextWorkflowDto.WorkflowId = knowledge.WorkflowId;
|
|
|
var next = await _workflowApplication.GetNextStepsAsync(knowledge.WorkflowId, HttpContext.RequestAborted);
|
|
|
- dto.NextWorkflowDto.StepId = next.StepId;
|
|
|
- dto.NextWorkflowDto.NextStepCode = next.Steps.First().Key;
|
|
|
- dto.NextWorkflowDto.NextStepName = next.Steps.First().Value;
|
|
|
+ nextWorkflowDto.StepId = next.StepId;
|
|
|
+ nextWorkflowDto.NextStepCode = next.Steps.First().Key;
|
|
|
+ nextWorkflowDto.NextStepName = next.Steps.First().Value;
|
|
|
if (dto.IsPass)
|
|
|
- await _workflowApplication.NextAsync(dto.NextWorkflowDto, cancellationToken: HttpContext.RequestAborted);
|
|
|
+ await _workflowApplication.NextAsync(nextWorkflowDto, cancellationToken: HttpContext.RequestAborted);
|
|
|
else
|
|
|
{
|
|
|
- var reject = dto.NextWorkflowDto.Adapt<RejectDto>();
|
|
|
+ var reject = nextWorkflowDto.Adapt<RejectDto>();
|
|
|
await _workflowApplication.RejectAsync(reject, HttpContext.RequestAborted);
|
|
|
}
|
|
|
}
|