|
@@ -44,8 +44,9 @@ namespace Hotline.Application.Orders
|
|
|
private readonly IWorkflowDomainService _workflowDomainService;
|
|
|
private readonly IRepository<OrderVisitDetail> _orderVisitedDetailRepository;
|
|
|
private readonly IOrderDomainService _orderDomainService;
|
|
|
+ private readonly IOrderScreenRepository _orderScreenRepository;
|
|
|
|
|
|
- public OrderSecondaryHandlingApplication(
|
|
|
+ public OrderSecondaryHandlingApplication(
|
|
|
IMapper mapper,
|
|
|
IRepository<OrderSecondaryHandling> orderSecondaryHandlingRepository,
|
|
|
IFileRepository fileRepository,
|
|
@@ -59,9 +60,9 @@ namespace Hotline.Application.Orders
|
|
|
IRepository<OrderPublishHistory> orderPublishHistoryRepository,
|
|
|
IWorkflowDomainService workflowDomainService,
|
|
|
IRepository<OrderVisitDetail> orderVisitedDetailRepository,
|
|
|
- IOrderDomainService orderDomainService
|
|
|
-,
|
|
|
- ICalcExpireTime expireTime)
|
|
|
+ IOrderDomainService orderDomainService,
|
|
|
+ IOrderScreenRepository orderScreenRepository,
|
|
|
+ ICalcExpireTime expireTime)
|
|
|
{
|
|
|
_mapper = mapper;
|
|
|
_orderSecondaryHandlingRepository = orderSecondaryHandlingRepository;
|
|
@@ -78,7 +79,8 @@ namespace Hotline.Application.Orders
|
|
|
_orderVisitedDetailRepository = orderVisitedDetailRepository;
|
|
|
_orderDomainService = orderDomainService;
|
|
|
_expireTime = expireTime;
|
|
|
- }
|
|
|
+ _orderScreenRepository = orderScreenRepository;
|
|
|
+ }
|
|
|
|
|
|
/// <summary>
|
|
|
/// 二次办理新增
|
|
@@ -202,6 +204,15 @@ namespace Hotline.Application.Orders
|
|
|
await _orderPublishHistoryRepository.AddAsync(publishHistory, cancellationToken);
|
|
|
await _orderPublishRepository.RemoveAsync(publish, false, cancellationToken);
|
|
|
}
|
|
|
+
|
|
|
+ var screen = await _orderScreenRepository.Queryable().FirstAsync(
|
|
|
+ x => x.OrderId == model.OrderId &&
|
|
|
+ (x.Status != EScreenStatus.End && x.Status != EScreenStatus.Refuse), cancellationToken);
|
|
|
+ if (screen != null)
|
|
|
+ {
|
|
|
+ await _orderScreenRepository.RemoveAsync(screen, false, cancellationToken);
|
|
|
+ }
|
|
|
+
|
|
|
await _workflowApplication.RecallAsync(recall, expiredTime.ExpiredTime, isOrderFiled, EWorkflowTraceType.SecondHandle, cancellationToken);
|
|
|
visit.VisitState = EVisitState.None;
|
|
|
await _orderVisitRepository.UpdateAsync(visit, cancellationToken);
|