|
@@ -394,6 +394,12 @@ public class OrderController : BaseController
|
|
//推省上
|
|
//推省上
|
|
var publishPublishOrder = _mapper.Map<PublishPublishOrderDto>(orderPublish);
|
|
var publishPublishOrder = _mapper.Map<PublishPublishOrderDto>(orderPublish);
|
|
publishPublishOrder.Order = _mapper.Map<OrderDto>(order);
|
|
publishPublishOrder.Order = _mapper.Map<OrderDto>(order);
|
|
|
|
+ //查询实际办理附件
|
|
|
|
+ if (!string.IsNullOrEmpty(order.ActualHandleStepId))
|
|
|
|
+ {
|
|
|
|
+ var actualHandleStep = await _workflowStepRepository.GetAsync(order.ActualHandleStepId, HttpContext.RequestAborted);
|
|
|
|
+ publishPublishOrder.FileJsons = actualHandleStep?.FileJson;
|
|
|
|
+ }
|
|
await _capPublisher.PublishAsync(Hotline.Share.Mq.EventNames.HotlineOrderPublishOrder, publishPublishOrder);
|
|
await _capPublisher.PublishAsync(Hotline.Share.Mq.EventNames.HotlineOrderPublishOrder, publishPublishOrder);
|
|
|
|
|
|
var orderVisit = new OrderVisit();
|
|
var orderVisit = new OrderVisit();
|
|
@@ -664,9 +670,8 @@ public class OrderController : BaseController
|
|
.Includes(x => x.Employee)
|
|
.Includes(x => x.Employee)
|
|
.Includes(x => x.OrderVisitDetails)
|
|
.Includes(x => x.OrderVisitDetails)
|
|
.WhereIF(dto.VisitState == EVisitStateQuery.NoVisit,
|
|
.WhereIF(dto.VisitState == EVisitStateQuery.NoVisit,
|
|
- x => (x.VisitState == EVisitState.WaitForVisit ||
|
|
|
|
- x.VisitState == EVisitState.NoSatisfiedWaitForVisit) &&
|
|
|
|
- x.Order.IsProvince == false)
|
|
|
|
|
|
+ x => x.VisitState == EVisitState.WaitForVisit ||
|
|
|
|
+ x.VisitState == EVisitState.NoSatisfiedWaitForVisit)
|
|
.WhereIF(dto.VisitState == EVisitStateQuery.Visited, x => x.VisitState == EVisitState.Visited)
|
|
.WhereIF(dto.VisitState == EVisitStateQuery.Visited, x => x.VisitState == EVisitState.Visited)
|
|
.WhereIF(!string.IsNullOrEmpty(dto.Keyword), x => x.Order.Title.StartsWith(dto.Keyword!))
|
|
.WhereIF(!string.IsNullOrEmpty(dto.Keyword), x => x.Order.Title.StartsWith(dto.Keyword!))
|
|
.WhereIF(!string.IsNullOrEmpty(dto.No), d => d.No == dto.No)
|
|
.WhereIF(!string.IsNullOrEmpty(dto.No), d => d.No == dto.No)
|
|
@@ -676,6 +681,8 @@ public class OrderController : BaseController
|
|
.WhereIF(dto.IsCountersign != null && dto.IsCountersign == true, d => d.Order.CounterSignType != null)
|
|
.WhereIF(dto.IsCountersign != null && dto.IsCountersign == true, d => d.Order.CounterSignType != null)
|
|
.WhereIF(dto.IsCountersign != null && dto.IsCountersign == false, d => d.Order.CounterSignType == null)
|
|
.WhereIF(dto.IsCountersign != null && dto.IsCountersign == false, d => d.Order.CounterSignType == null)
|
|
.WhereIF(dto.QuerySelf.HasValue && dto.QuerySelf.Value, d => d.EmployeeId == _sessionContext.RequiredUserId)
|
|
.WhereIF(dto.QuerySelf.HasValue && dto.QuerySelf.Value, d => d.EmployeeId == _sessionContext.RequiredUserId)
|
|
|
|
+ .WhereIF(dto.IsProvince != null && dto.IsProvince == true, d => d.Order.IsProvince == true)
|
|
|
|
+ .WhereIF(dto.IsProvince != null && dto.IsProvince == false, d => d.Order.IsProvince == false)
|
|
.OrderByDescending(x => x.PublishTime)
|
|
.OrderByDescending(x => x.PublishTime)
|
|
.ToPagedListAsync(dto.PageIndex, dto.PageSize, HttpContext.RequestAborted);
|
|
.ToPagedListAsync(dto.PageIndex, dto.PageSize, HttpContext.RequestAborted);
|
|
return new PagedDto<OrderVisitDto>(total, _mapper.Map<IReadOnlyList<OrderVisitDto>>(items));
|
|
return new PagedDto<OrderVisitDto>(total, _mapper.Map<IReadOnlyList<OrderVisitDto>>(items));
|
|
@@ -2543,14 +2550,27 @@ public class OrderController : BaseController
|
|
dto.RepeatableEventDetails = repeatables;
|
|
dto.RepeatableEventDetails = repeatables;
|
|
if (!string.IsNullOrEmpty(dto.WorkflowId))
|
|
if (!string.IsNullOrEmpty(dto.WorkflowId))
|
|
{
|
|
{
|
|
|
|
+
|
|
var workflow = await _workflowDomainService.GetWorkflowAsync(dto.WorkflowId, withSteps: true,
|
|
var workflow = await _workflowDomainService.GetWorkflowAsync(dto.WorkflowId, withSteps: true,
|
|
cancellationToken: HttpContext.RequestAborted);
|
|
cancellationToken: HttpContext.RequestAborted);
|
|
- var centerOpinion = workflow.Steps.Where(x => x.HandlerOrgId == OrgSeedData.CenterId).OrderByDescending(x => x.CreationTime).Select(x => x.Opinion).First();
|
|
|
|
- dto.CenterOpinion = string.IsNullOrEmpty(centerOpinion) ? string.Empty : centerOpinion;
|
|
|
|
- var sendBack = await _orderSendBackAuditRepository.Queryable().Where(x => x.OrderId == dto.Id).OrderByDescending(x => x.CreationTime).FirstAsync();
|
|
|
|
- dto.SendBackOpinion = sendBack is { Id: not null } && !string.IsNullOrEmpty(sendBack.Content) ? sendBack.Content : string.Empty;
|
|
|
|
|
|
+ // var centerOpinion = workflow.Steps.Where(x => x.HandlerOrgId == OrgSeedData.CenterId).OrderByDescending(x => x.CreationTime).Select(x => x.Opinion).FirstOrDefault();
|
|
|
|
+ var centerOpinion = workflow.Steps.Where(x => x.HandlerOrgId == OrgSeedData.CenterId).MaxBy(d => d.CreationTime)?.Opinion ?? string.Empty;
|
|
|
|
+
|
|
|
|
+ dto.CenterOpinion = centerOpinion;//string.IsNullOrEmpty(centerOpinion) ? string.Empty : centerOpinion;
|
|
List<OrderRemarksDto> remarks = workflow.Steps.Where(x => !string.IsNullOrEmpty(x.Remark)).Select(x => new OrderRemarksDto { Remark = x.Remark, RemarkTime = x.CreationTime, RemarkUser = x.CreatorName }).ToList();
|
|
List<OrderRemarksDto> remarks = workflow.Steps.Where(x => !string.IsNullOrEmpty(x.Remark)).Select(x => new OrderRemarksDto { Remark = x.Remark, RemarkTime = x.CreationTime, RemarkUser = x.CreatorName }).ToList();
|
|
dto.OrderRemarks = remarks;
|
|
dto.OrderRemarks = remarks;
|
|
|
|
+
|
|
|
|
+ var sendBack = await _orderSendBackAuditRepository.Queryable().Where(x => x.OrderId == dto.Id).OrderByDescending(x => x.CreationTime).FirstAsync();
|
|
|
|
+ dto.SendBackOpinion = sendBack is { Id: not null } && !string.IsNullOrEmpty(sendBack.Content) ? sendBack.Content : string.Empty;
|
|
|
|
+
|
|
|
|
+ //var workflow = await _workflowDomainService.GetWorkflowAsync(dto.WorkflowId, withSteps: true,
|
|
|
|
+ // cancellationToken: HttpContext.RequestAborted);
|
|
|
|
+ //var centerOpinion = workflow.Steps.Where(x => x.HandlerOrgId == OrgSeedData.CenterId).OrderByDescending(x => x.CreationTime).Select(x => x.Opinion).First();
|
|
|
|
+ //dto.CenterOpinion = string.IsNullOrEmpty(centerOpinion) ? string.Empty : centerOpinion;
|
|
|
|
+ //var sendBack = await _orderSendBackAuditRepository.Queryable().Where(x => x.OrderId == dto.Id).OrderByDescending(x => x.CreationTime).FirstAsync();
|
|
|
|
+ //dto.SendBackOpinion = sendBack is { Id: not null } && !string.IsNullOrEmpty(sendBack.Content) ? sendBack.Content : string.Empty;
|
|
|
|
+ //List<OrderRemarksDto> remarks = workflow.Steps.Where(x => !string.IsNullOrEmpty(x.Remark)).Select(x => new OrderRemarksDto { Remark = x.Remark, RemarkTime = x.CreationTime, RemarkUser = x.CreatorName }).ToList();
|
|
|
|
+ //dto.OrderRemarks = remarks;
|
|
}
|
|
}
|
|
return dto;
|
|
return dto;
|
|
}
|
|
}
|
|
@@ -3920,7 +3940,7 @@ public class OrderController : BaseController
|
|
var orderDto = _mapper.Map<OrderDto>(order);
|
|
var orderDto = _mapper.Map<OrderDto>(order);
|
|
await _capPublisher.PublishAsync(Hotline.Share.Mq.EventNames.HotlineOrderExpiredTimeUpdate, orderDto, cancellationToken: HttpContext.RequestAborted);
|
|
await _capPublisher.PublishAsync(Hotline.Share.Mq.EventNames.HotlineOrderExpiredTimeUpdate, orderDto, cancellationToken: HttpContext.RequestAborted);
|
|
//}
|
|
//}
|
|
- await _workflowApplication.RecallAsync(recall, expiredTime.ExpiredTime, HttpContext.RequestAborted);
|
|
|
|
|
|
+ await _workflowApplication.RecallAsync(recall, expiredTime.ExpiredTime, order.Status >= EOrderStatus.Filed, HttpContext.RequestAborted);
|
|
var publish = await _orderPublishRepository.GetAsync(x => x.OrderId == dto.OrderId);
|
|
var publish = await _orderPublishRepository.GetAsync(x => x.OrderId == dto.OrderId);
|
|
if (publish != null)
|
|
if (publish != null)
|
|
{
|
|
{
|
|
@@ -4049,7 +4069,7 @@ public class OrderController : BaseController
|
|
var processType = dto.FlowDirection == EFlowDirection.OrgToCenter || dto.FlowDirection == EFlowDirection.CenterToCenter ? EProcessType.Zhiban : EProcessType.Jiaoban;
|
|
var processType = dto.FlowDirection == EFlowDirection.OrgToCenter || dto.FlowDirection == EFlowDirection.CenterToCenter ? EProcessType.Zhiban : EProcessType.Jiaoban;
|
|
await _orderRepository.Updateable().SetColumns(o => new Orders.Order() { ProcessType = processType })
|
|
await _orderRepository.Updateable().SetColumns(o => new Orders.Order() { ProcessType = processType })
|
|
.Where(o => o.Id == order.Id).ExecuteCommandAsync(HttpContext.RequestAborted);
|
|
.Where(o => o.Id == order.Id).ExecuteCommandAsync(HttpContext.RequestAborted);
|
|
- await _workflowApplication.RecallAsync(recall, endTime, HttpContext.RequestAborted);
|
|
|
|
|
|
+ await _workflowApplication.RecallAsync(recall, endTime, order.Status >= EOrderStatus.Filed, HttpContext.RequestAborted);
|
|
var publish = await _orderPublishRepository.GetAsync(x => x.OrderId == dto.OrderId);
|
|
var publish = await _orderPublishRepository.GetAsync(x => x.OrderId == dto.OrderId);
|
|
if (publish != null)
|
|
if (publish != null)
|
|
{
|
|
{
|
|
@@ -4130,7 +4150,7 @@ public class OrderController : BaseController
|
|
|
|
|
|
//todo 特提重办,按审批通过时间依据中心派至部门的规则计算期满时间,更新order
|
|
//todo 特提重办,按审批通过时间依据中心派至部门的规则计算期满时间,更新order
|
|
|
|
|
|
- await _workflowApplication.RecallAsync(recall, expiredTime.ExpiredTime, HttpContext.RequestAborted);
|
|
|
|
|
|
+ await _workflowApplication.RecallAsync(recall, expiredTime.ExpiredTime, order.Status >= EOrderStatus.Filed, HttpContext.RequestAborted);
|
|
var publish = await _orderPublishRepository.GetAsync(x => x.OrderId == special.OrderId);
|
|
var publish = await _orderPublishRepository.GetAsync(x => x.OrderId == special.OrderId);
|
|
if (publish != null)
|
|
if (publish != null)
|
|
{
|
|
{
|
|
@@ -4230,7 +4250,7 @@ public class OrderController : BaseController
|
|
|
|
|
|
//todo 特提重办,按审批通过时间依据中心派至部门的规则计算期满时间,更新order
|
|
//todo 特提重办,按审批通过时间依据中心派至部门的规则计算期满时间,更新order
|
|
|
|
|
|
- await _workflowApplication.RecallAsync(recall, expiredTime.ExpiredTime, HttpContext.RequestAborted);
|
|
|
|
|
|
+ await _workflowApplication.RecallAsync(recall, expiredTime.ExpiredTime, order.Status >= EOrderStatus.Filed, HttpContext.RequestAborted);
|
|
var publish = await _orderPublishRepository.GetAsync(x => x.OrderId == special.OrderId);
|
|
var publish = await _orderPublishRepository.GetAsync(x => x.OrderId == special.OrderId);
|
|
if (publish != null)
|
|
if (publish != null)
|
|
{
|
|
{
|