|
@@ -18,6 +18,7 @@ using Hotline.Share.Mq;
|
|
|
using MapsterMapper;
|
|
|
using MediatR;
|
|
|
using Microsoft.AspNetCore.Http;
|
|
|
+using Microsoft.Extensions.Logging;
|
|
|
using XF.Domain.Exceptions;
|
|
|
using XF.Domain.Repository;
|
|
|
|
|
@@ -44,6 +45,7 @@ public class WorkflowEndHandler : INotificationHandler<EndWorkflowNotify>
|
|
|
private readonly IRepository<OrderDelay> _orderDelayRepository;
|
|
|
private readonly IRepository<OrderVisitApply> _orderVisitApplyRepository;
|
|
|
private readonly IMediator _mediator;
|
|
|
+ private readonly ILogger<WorkflowEndHandler> _logger;
|
|
|
|
|
|
public WorkflowEndHandler(
|
|
|
IKnowledgeDomainService knowledgeDomainService,
|
|
@@ -63,8 +65,8 @@ public class WorkflowEndHandler : INotificationHandler<EndWorkflowNotify>
|
|
|
IRepository<OrderDelay> orderDelayRepository,
|
|
|
IRepository<OrderVisit> orderVisitRepository,
|
|
|
IRepository<OrderVisitApply> orderVisitApplyRepository,
|
|
|
- IMediator mediator
|
|
|
- )
|
|
|
+ IMediator mediator,
|
|
|
+ ILogger<WorkflowEndHandler> logger)
|
|
|
{
|
|
|
_knowledgeDomainService = knowledgeDomainService;
|
|
|
_orderDomainService = orderDomainService;
|
|
@@ -84,6 +86,7 @@ public class WorkflowEndHandler : INotificationHandler<EndWorkflowNotify>
|
|
|
_orderVisitRepository = orderVisitRepository;
|
|
|
_orderVisitApplyRepository = orderVisitApplyRepository;
|
|
|
_mediator = mediator;
|
|
|
+ _logger = logger;
|
|
|
}
|
|
|
|
|
|
/// <summary>Handles a notification</summary>
|
|
@@ -124,12 +127,20 @@ public class WorkflowEndHandler : INotificationHandler<EndWorkflowNotify>
|
|
|
// Order = _mapper.Map<OrderDto>(order),
|
|
|
// WorkflowTrace = _mapper.Map<WorkflowTraceDto>(notification.Trace)
|
|
|
//}, cancellationToken: cancellationToken);
|
|
|
- await _provinceService.OrderFiled(new OrderFlowDto
|
|
|
+ try
|
|
|
{
|
|
|
- Order = _mapper.Map<OrderDto>(order),
|
|
|
- WorkflowTrace = _mapper.Map<WorkflowTraceDto>(notification.Trace)
|
|
|
- }, cancellationToken: cancellationToken);
|
|
|
|
|
|
+ await _provinceService.OrderFiled(new OrderFlowDto
|
|
|
+ {
|
|
|
+ Order = _mapper.Map<OrderDto>(order),
|
|
|
+ WorkflowTrace = _mapper.Map<WorkflowTraceDto>(notification.Trace)
|
|
|
+ }, cancellationToken: cancellationToken);
|
|
|
+
|
|
|
+ }
|
|
|
+ catch (Exception e)
|
|
|
+ {
|
|
|
+ _logger.LogError("_provinceService.OrderFiled throw exception: {ex}", e.Message);
|
|
|
+ }
|
|
|
break;
|
|
|
case WorkflowModuleConsts.OrderScreen:
|
|
|
var screen = await _orderScreenRepository.GetAsync(workflow.ExternalId, cancellationToken);
|
|
@@ -171,19 +182,28 @@ public class WorkflowEndHandler : INotificationHandler<EndWorkflowNotify>
|
|
|
// FirstSatisfactionCode = visit.Order.FirstVisitResultCode!,
|
|
|
// ClientGuid = ""
|
|
|
// });
|
|
|
- await _provinceService.SubmitOrderScreenSuccess(new PublishVisitDto()
|
|
|
+ try
|
|
|
+ {
|
|
|
+
|
|
|
+ await _provinceService.SubmitOrderScreenSuccess(new PublishVisitDto()
|
|
|
+ {
|
|
|
+ Order = _mapper.Map<OrderDto>(visit.Order),
|
|
|
+ No = visit.No,
|
|
|
+ VisitType = visit.VisitType,
|
|
|
+ VisitName = visit.CreatorName,
|
|
|
+ VisitTime = visit.VisitTime,
|
|
|
+ VisitRemark = visitDe.VisitContent,
|
|
|
+ AreaCode = visit.Order.AreaCode!,
|
|
|
+ SubjectResultSatifyCode = visitDe.OrgProcessingResults?.Key,
|
|
|
+ FirstSatisfactionCode = visit.Order.FirstVisitResultCode!,
|
|
|
+ ClientGuid = ""
|
|
|
+ }, cancellationToken);
|
|
|
+
|
|
|
+ }
|
|
|
+ catch (Exception e)
|
|
|
{
|
|
|
- Order = _mapper.Map<OrderDto>(visit.Order),
|
|
|
- No = visit.No,
|
|
|
- VisitType = visit.VisitType,
|
|
|
- VisitName = visit.CreatorName,
|
|
|
- VisitTime = visit.VisitTime,
|
|
|
- VisitRemark = visitDe.VisitContent,
|
|
|
- AreaCode = visit.Order.AreaCode!,
|
|
|
- SubjectResultSatifyCode = visitDe.OrgProcessingResults?.Key,
|
|
|
- FirstSatisfactionCode = visit.Order.FirstVisitResultCode!,
|
|
|
- ClientGuid = ""
|
|
|
- }, cancellationToken);
|
|
|
+ _logger.LogError("_provinceService.SubmitOrderScreenSuccess throw exception: {ex}", e.Message);
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
}
|