|
@@ -126,26 +126,27 @@ namespace Hotline.Application.Subscribers
|
|
|
sendBack.FileJson = await _fileRepository.AddFileAsync(dto.Files, sendBack.Id, string.Empty, cancellationToken);
|
|
|
}
|
|
|
|
|
|
+ var order = await _orderRepository.GetAsync(sendBack.OrderId, cancellationToken);
|
|
|
+ if (order is null)
|
|
|
+ throw new UserFriendlyException("无效工单编号");
|
|
|
+
|
|
|
if (dto.Result is 1)
|
|
|
{
|
|
|
- var order = await _orderRepository.GetAsync(sendBack.OrderId, cancellationToken);
|
|
|
- if (order is null)
|
|
|
- throw new UserFriendlyException("无效工单编号");
|
|
|
- var now = DateTime.Now;
|
|
|
- var handleDuration = order.StartTime.HasValue
|
|
|
- ? _timeLimitDomainService.CalcWorkTime(order.StartTime.Value,
|
|
|
- now, order.ProcessType is EProcessType.Zhiban)
|
|
|
- : 0;
|
|
|
- var fileDuration = order.CenterToOrgTime.HasValue
|
|
|
- ? _timeLimitDomainService.CalcWorkTime(order.CenterToOrgTime.Value,
|
|
|
- now, order.ProcessType is EProcessType.Zhiban)
|
|
|
- : 0;
|
|
|
- var allDuration = order.StartTime.HasValue
|
|
|
- ? _timeLimitDomainService.CalcWorkTime(order.StartTime.Value, now,
|
|
|
- order.ProcessType is EProcessType.Zhiban)
|
|
|
- : 0;
|
|
|
- order.File(now, handleDuration, fileDuration, allDuration);
|
|
|
- await _orderRepository.UpdateAsync(order, cancellationToken);
|
|
|
+ //var now = DateTime.Now;
|
|
|
+ //var handleDuration = order.StartTime.HasValue
|
|
|
+ // ? _timeLimitDomainService.CalcWorkTime(order.StartTime.Value,
|
|
|
+ // now, order.ProcessType is EProcessType.Zhiban)
|
|
|
+ // : 0;
|
|
|
+ //var fileDuration = order.CenterToOrgTime.HasValue
|
|
|
+ // ? _timeLimitDomainService.CalcWorkTime(order.CenterToOrgTime.Value,
|
|
|
+ // now, order.ProcessType is EProcessType.Zhiban)
|
|
|
+ // : 0;
|
|
|
+ //var allDuration = order.StartTime.HasValue
|
|
|
+ // ? _timeLimitDomainService.CalcWorkTime(order.StartTime.Value, now,
|
|
|
+ // order.ProcessType is EProcessType.Zhiban)
|
|
|
+ // : 0;
|
|
|
+ //order.File(now, handleDuration, fileDuration, allDuration);
|
|
|
+ //await _orderRepository.UpdateAsync(order, cancellationToken);
|
|
|
|
|
|
var current = SessionContextCreator.CreateSessionContext(dto.Source);
|
|
|
if (string.IsNullOrEmpty(order.WorkflowId))
|
|
@@ -167,6 +168,11 @@ namespace Hotline.Application.Subscribers
|
|
|
null, cancellationToken: cancellationToken);
|
|
|
}
|
|
|
}
|
|
|
+ else
|
|
|
+ {
|
|
|
+ order.Status = EOrderStatus.WaitForAccept;
|
|
|
+ await _orderRepository.UpdateAsync(order, cancellationToken);
|
|
|
+ }
|
|
|
}
|
|
|
await _orderSendBackRepository.UpdateAsync(sendBack, cancellationToken);
|
|
|
}
|
|
@@ -319,7 +325,7 @@ namespace Hotline.Application.Subscribers
|
|
|
// .FirstAsync(cancellationToken);
|
|
|
|
|
|
var orderScreen = await _orderScreenRepository.Queryable()
|
|
|
- .Where(x => x.Order.ProvinceNo == dto.ProvinceScreenResult.CaseSerial &&
|
|
|
+ .Where(x => x.Order.ProvinceNo == dto.ProvinceScreenResult.CaseSerial &&
|
|
|
x.Status == EScreenStatus.Approval)
|
|
|
.FirstAsync(cancellationToken);
|
|
|
|
|
@@ -330,17 +336,17 @@ namespace Hotline.Application.Subscribers
|
|
|
? Share.Enums.FlowEngine.EReviewResult.Approval
|
|
|
: Share.Enums.FlowEngine.EReviewResult.Failed, cancellationToken);
|
|
|
orderScreen.Status = dto.ProvinceScreenResult.AuditResult ? Share.Enums.Order.EScreenStatus.End : Share.Enums.Order.EScreenStatus.Refuse;
|
|
|
- if (orderScreen.Status == Share.Enums.Order.EScreenStatus.End)
|
|
|
- {
|
|
|
- var visitDetail = await _orderVisitedDetailRepository.GetAsync(orderScreen.VisitDetailId, cancellationToken);
|
|
|
- if (visitDetail != null)
|
|
|
- {
|
|
|
- var screenSatisfy = new Kv() { Key = "-1", Value = "视为满意" };
|
|
|
- visitDetail.OrgProcessingResults = screenSatisfy;
|
|
|
- visitDetail.OrgHandledAttitude = screenSatisfy;
|
|
|
- await _orderVisitedDetailRepository.UpdateAsync(visitDetail, cancellationToken);
|
|
|
- }
|
|
|
- }
|
|
|
+ //if (orderScreen.Status == Share.Enums.Order.EScreenStatus.End)
|
|
|
+ //{
|
|
|
+ // var visitDetail = await _orderVisitedDetailRepository.GetAsync(orderScreen.VisitDetailId, cancellationToken);
|
|
|
+ // if (visitDetail != null)
|
|
|
+ // {
|
|
|
+ // var screenSatisfy = new Kv() { Key = "-1", Value = "视为满意" };
|
|
|
+ // visitDetail.OrgProcessingResults = screenSatisfy;
|
|
|
+ // visitDetail.OrgHandledAttitude = screenSatisfy;
|
|
|
+ // await _orderVisitedDetailRepository.UpdateAsync(visitDetail, cancellationToken);
|
|
|
+ // }
|
|
|
+ //}
|
|
|
orderScreen.ReplyContent = dto.ProvinceScreenResult.AuditOpinion;
|
|
|
if (dto.Files.Any())
|
|
|
orderScreen.FileJson =
|
|
@@ -475,14 +481,15 @@ namespace Hotline.Application.Subscribers
|
|
|
if (order != null)
|
|
|
{
|
|
|
//查询延期
|
|
|
- var orderDelay = await _orderDelayRepository.GetAsync(x => x.OrderId == order.Id && x.DelayState == EDelayState.Examining, cancellationToken);
|
|
|
- var current = SessionContextCreator.CreateSessionContext(dto.Source);
|
|
|
- await _workflowApplication.HandleToEndAsync(current, orderDelay.WorkflowId, dto.Opinion, dto.Files,
|
|
|
- dto.IsPass ? EReviewResult.Approval : EReviewResult.Failed, cancellationToken);
|
|
|
-
|
|
|
+ var orderDelay = await _orderDelayRepository
|
|
|
+ .GetAsync(x => x.OrderId == order.Id && x.DelayState == EDelayState.Examining, cancellationToken);
|
|
|
if (dto.Files != null && dto.Files.Any())
|
|
|
orderDelay.FileJson = await _fileRepository.AddFileAsync(dto.Files, orderDelay.Id, orderDelay.WorkflowId, cancellationToken);
|
|
|
await _orderDelayRepository.UpdateAsync(orderDelay, cancellationToken);
|
|
|
+
|
|
|
+ var current = SessionContextCreator.CreateSessionContext(dto.Source);
|
|
|
+ await _workflowApplication.HandleToEndAsync(current, orderDelay.WorkflowId, dto.Opinion, dto.Files,
|
|
|
+ dto.IsPass ? EReviewResult.Approval : EReviewResult.Failed, cancellationToken);
|
|
|
}
|
|
|
}
|
|
|
|
|
@@ -519,21 +526,21 @@ namespace Hotline.Application.Subscribers
|
|
|
break;
|
|
|
}
|
|
|
|
|
|
- var now = DateTime.Now;
|
|
|
- var handleDuration = order.StartTime.HasValue
|
|
|
- ? _timeLimitDomainService.CalcWorkTime(order.StartTime.Value,
|
|
|
- now, order.ProcessType is EProcessType.Zhiban)
|
|
|
- : 0;
|
|
|
- var fileDuration = order.CenterToOrgTime.HasValue
|
|
|
- ? _timeLimitDomainService.CalcWorkTime(order.CenterToOrgTime.Value,
|
|
|
- now, order.ProcessType is EProcessType.Zhiban)
|
|
|
- : 0;
|
|
|
- var allDuration = order.StartTime.HasValue
|
|
|
- ? _timeLimitDomainService.CalcWorkTime(order.StartTime.Value, now,
|
|
|
- order.ProcessType is EProcessType.Zhiban)
|
|
|
- : 0;
|
|
|
- order.File(now, handleDuration, fileDuration, allDuration);
|
|
|
- await _orderRepository.UpdateAsync(order, cancellationToken);
|
|
|
+ //var now = DateTime.Now;
|
|
|
+ //var handleDuration = order.StartTime.HasValue
|
|
|
+ // ? _timeLimitDomainService.CalcWorkTime(order.StartTime.Value,
|
|
|
+ // now, order.ProcessType is EProcessType.Zhiban)
|
|
|
+ // : 0;
|
|
|
+ //var fileDuration = order.CenterToOrgTime.HasValue
|
|
|
+ // ? _timeLimitDomainService.CalcWorkTime(order.CenterToOrgTime.Value,
|
|
|
+ // now, order.ProcessType is EProcessType.Zhiban)
|
|
|
+ // : 0;
|
|
|
+ //var allDuration = order.StartTime.HasValue
|
|
|
+ // ? _timeLimitDomainService.CalcWorkTime(order.StartTime.Value, now,
|
|
|
+ // order.ProcessType is EProcessType.Zhiban)
|
|
|
+ // : 0;
|
|
|
+ //order.File(now, handleDuration, fileDuration, allDuration);
|
|
|
+ //await _orderRepository.UpdateAsync(order, cancellationToken);
|
|
|
}
|
|
|
|
|
|
/// <summary>
|
|
@@ -593,6 +600,15 @@ namespace Hotline.Application.Subscribers
|
|
|
await _orderDomainService.AddOrderComplementAsync(dto, cancellationToken);
|
|
|
}
|
|
|
|
|
|
+ /// <summary>
|
|
|
+ /// 接收省上上传附件
|
|
|
+ /// </summary>
|
|
|
+ /// <param name="dto"></param>
|
|
|
+ /// <param name="cancellationToken"></param>
|
|
|
+ /// <returns></returns>
|
|
|
+ /// <exception cref="UserFriendlyException"></exception>
|
|
|
+ /// <exception cref="ArgumentOutOfRangeException"></exception>
|
|
|
+ [CapSubscribe(EventNames.SharingFileInfo)]
|
|
|
public async Task RecFilesAsync(ReceiveFilesFromDsDto dto, CancellationToken cancellationToken)
|
|
|
{
|
|
|
if (dto.Files == null || !dto.Files.Any())
|
|
@@ -668,7 +684,7 @@ namespace Hotline.Application.Subscribers
|
|
|
await _orderComplementRepository.UpdateAsync(complement, cancellationToken);
|
|
|
break;
|
|
|
case EDsBisType.OrderHandleResult:
|
|
|
- var order1 = await _orderRepository.GetAsync(d=>d.ProvinceNo == dto.ProvinceNo, cancellationToken);
|
|
|
+ var order1 = await _orderRepository.GetAsync(d => d.ProvinceNo == dto.ProvinceNo, cancellationToken);
|
|
|
if (order1 is null)
|
|
|
throw new UserFriendlyException($"无效工单编号, ProvinceNo: {dto.ProvinceNo}");
|
|
|
if (string.IsNullOrEmpty(order1.WorkflowId))
|