|
@@ -587,8 +587,8 @@ public class TestController : BaseController
|
|
|
|
|
|
var workflowIds = orders.Select(d => d.WorkflowId).ToList();
|
|
|
var workflows = await _workflowRepository.Queryable()
|
|
|
- .Includes(d=>d.Steps)
|
|
|
- .Includes(d=>d.Traces)
|
|
|
+ .Includes(d=>d.Steps, x=>x.WorkflowTrace)
|
|
|
+ //.Includes(d=>d.Traces)
|
|
|
.Where(d => workflowIds.Contains(d.Id))
|
|
|
.ToListAsync(HttpContext.RequestAborted);
|
|
|
|
|
@@ -613,11 +613,23 @@ public class TestController : BaseController
|
|
|
: 0;
|
|
|
order.File(now, handleDuration, fileDuration, allDuration);
|
|
|
|
|
|
- var endTrace = workflow.Traces.FirstOrDefault(d => d.StepType == EStepType.End);
|
|
|
- if(endTrace is null) continue;
|
|
|
- var trace = workflow.Traces.FirstOrDefault(d => d.Id == endTrace.PrevStepId);
|
|
|
- if(trace is null) continue;
|
|
|
+ var endStep = workflow.Steps.FirstOrDefault(d => d.StepType == EStepType.End);
|
|
|
+ //var endTrace = workflow.Steps.FirstOrDefault(d => d.WorkflowTrace.StepType == EStepType.End)?.WorkflowTrace;
|
|
|
+ if (endStep is null)
|
|
|
+ {
|
|
|
+ _logger.LogWarning($"endStep 为空, orderNo:{order.No}");
|
|
|
+ continue;
|
|
|
+ }
|
|
|
|
|
|
+ var step = workflow.Steps.FirstOrDefault(d => d.Id == endStep.PrevStepId);
|
|
|
+ //var trace = workflow.Steps.FirstOrDefault(d => d.WorkflowTrace.Id == endTrace.PrevStepId)?.WorkflowTrace;
|
|
|
+ if (step is null)
|
|
|
+ {
|
|
|
+ _logger.LogWarning($"step 为空, orderNo:{order.No}");
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+
|
|
|
+ var trace = step.WorkflowTrace;
|
|
|
order.FileUserId = trace.HandlerId;
|
|
|
order.FileUserName = trace.HandlerName;
|
|
|
order.FileUserOrgId = trace.HandlerOrgId;
|
|
@@ -645,12 +657,12 @@ public class TestController : BaseController
|
|
|
updateOrders.Add(order);
|
|
|
|
|
|
//var callRecord = await _trCallRecordRepository.GetAsync(p => p.CallAccept == order.CallId, cancellationToken); //由CallAccept改为OtherAccept
|
|
|
- var callRecord = await _trCallRecordRepository.GetAsync(p => p.OtherAccept == order.CallId, HttpContext.RequestAborted);
|
|
|
var orderFlowDto = new OrderFlowDto
|
|
|
{
|
|
|
Order = _mapper.Map<OrderDto>(order),
|
|
|
WorkflowTrace = _mapper.Map<WorkflowTraceDto>(trace)
|
|
|
};
|
|
|
+ var callRecord = await _trCallRecordRepository.GetAsync(p => p.OtherAccept == order.CallId, HttpContext.RequestAborted);
|
|
|
if (callRecord != null)
|
|
|
{
|
|
|
orderFlowDto.TrCallRecordDto = _mapper.Map<TrCallDto>(callRecord);
|