|
@@ -311,8 +311,8 @@ public class OrderController : BaseController
|
|
|
.WhereIF(!string.IsNullOrEmpty(dto.AcceptType), d => d.AcceptTypeCode == dto.AcceptType) //受理类型
|
|
|
.WhereIF(!string.IsNullOrEmpty(dto.Hotspot), d => d.HotspotSpliceName != null && d.HotspotSpliceName.Contains(dto.Hotspot))
|
|
|
.WhereIF(!string.IsNullOrEmpty(dto.FromPhone), d => d.FromPhone == dto.FromPhone) //来电号码
|
|
|
- //.WhereIF(!string.IsNullOrEmpty(dto.PubMan),
|
|
|
- // d => d.AcceptorName.Contains(dto.PubMan!) || d.AcceptorStaffNo.Contains(dto.PubMan!))
|
|
|
+ //.WhereIF(!string.IsNullOrEmpty(dto.PubMan),
|
|
|
+ // d => d.AcceptorName.Contains(dto.PubMan!) || d.AcceptorStaffNo.Contains(dto.PubMan!))
|
|
|
.WhereIF(dto.PubRange == EPublicState.Pub, d => d.OrderPublish.PublishState)
|
|
|
.WhereIF(dto.PubRange == EPublicState.NoPub, d => !d.OrderPublish.PublishState)
|
|
|
.WhereIF(dto.IsProvinceOrder.HasValue && dto.IsProvinceOrder == true, d => d.Source == ESource.ProvinceStraight)
|
|
@@ -432,17 +432,29 @@ public class OrderController : BaseController
|
|
|
|
|
|
// 取消发布功能开关
|
|
|
var cancelPublishOrderEnabled = _systemSettingCacheManager.CancelPublishOrderEnabled;
|
|
|
- // 取消发布的工单数量
|
|
|
- var orderPublishDeletedCount = await _orderPublishRepository.Queryable(includeDeleted: true)
|
|
|
+ // 取消发布的工单
|
|
|
+ var publishOrder = await _orderPublishRepository.Queryable(includeDeleted: true)
|
|
|
.Where(m => m.OrderId == order.Id && m.IsDeleted == true)
|
|
|
- .CountAsync(HttpContext.RequestAborted);
|
|
|
- var orderVisitVisitedCount = await _orderVisitRepository.Queryable()
|
|
|
- .Where(m => m.OrderId == order.Id && m.VisitState == EVisitState.Visited)
|
|
|
- .CountAsync(HttpContext.RequestAborted);
|
|
|
+ .FirstAsync(HttpContext.RequestAborted);
|
|
|
|
|
|
// 若取消发布的工单,已经被回访过了,没有经过重新办理,再次发布后,自动跳过回访环节,展示取消发布前的回访结果
|
|
|
- if (orderPublishDeletedCount != 0 && orderVisitVisitedCount != 0 && cancelPublishOrderEnabled == true)
|
|
|
+ if (publishOrder != null && cancelPublishOrderEnabled == true)
|
|
|
{
|
|
|
+ var history = new OrderPublishHistory
|
|
|
+ {
|
|
|
+ ArrangeTitleBefor = publishOrder.ArrangeTitle,
|
|
|
+ ArrangeTitleAfter = dto.ArrangeTitle,
|
|
|
+ ArrangeContentBefor = publishOrder.ArrangeContent,
|
|
|
+ ArrangeContentAfter = dto.ArrangeContent,
|
|
|
+ ArrangeOpinionBefor = publishOrder.ArrangeOpinion,
|
|
|
+ ArrangeOpinionAfter = dto.ArrangeOpinion,
|
|
|
+ PublishStateBefor = publishOrder.PublishState,
|
|
|
+ PublishStateAfter = dto.PublishState,
|
|
|
+ No = publishOrder.No,
|
|
|
+ OrderId = publishOrder.OrderId,
|
|
|
+ OrderPublishId = publishOrder.Id
|
|
|
+ };
|
|
|
+ await _orderPublishHistoryRepository.AddAsync(history, HttpContext.RequestAborted);
|
|
|
return;
|
|
|
}
|
|
|
|
|
@@ -3127,7 +3139,7 @@ public class OrderController : BaseController
|
|
|
cancellationToken: HttpContext.RequestAborted);
|
|
|
|
|
|
List<OrderRemarksDto> remarks = workflow.Steps.Where(x => !string.IsNullOrEmpty(x.Remark)).Select(x => new OrderRemarksDto
|
|
|
- { Remark = x.Remark, RemarkTime = x.HandleTime, RemarkUser = x.HandlerName }).ToList();
|
|
|
+ { Remark = x.Remark, RemarkTime = x.HandleTime, RemarkUser = x.HandlerName }).ToList();
|
|
|
dto.OrderRemarks = remarks;
|
|
|
if (order.Status == EOrderStatus.SendBack || order.Status == EOrderStatus.SendBackAudit || order.Status == EOrderStatus.BackToUnAccept)
|
|
|
{
|
|
@@ -4320,7 +4332,7 @@ public class OrderController : BaseController
|
|
|
.Includes(d => d.Workflow)
|
|
|
.FirstAsync(d => d.Id == workflow.ExternalId);
|
|
|
dto.ExpiredTime = order.ExpiredTime;
|
|
|
- var (currentStep, prevStep, isOrgToCenter, isSecondToFirstOrgLevel) = await _workflowApplication.GetPreviousInformationAsync(
|
|
|
+ var (currentStep, prevStep, isOrgToCenter, isSecondToFirstOrgLevel) = await _workflowApplication.GetPreviousInformationAsync(
|
|
|
dto.WorkflowId, _sessionContext.RequiredUserId, _sessionContext.RequiredOrgId, _sessionContext.Roles, HttpContext.RequestAborted);
|
|
|
var audit = new OrderSendBackAudit
|
|
|
{
|
|
@@ -4921,7 +4933,7 @@ public class OrderController : BaseController
|
|
|
var handler = await _orderDomainService.AverageOrder(HttpContext.RequestAborted);
|
|
|
dto.NextHandlers = new List<FlowStepHandler> { handler };
|
|
|
await _orderSpecialRepository.Updateable().SetColumns(x => new OrderSpecial { NextHandlers = dto.NextHandlers }).Where(x => x.Id == model.Id).ExecuteCommandAsync();
|
|
|
- }
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
var recall = new RecallDto
|
|
@@ -4981,13 +4993,13 @@ public class OrderController : BaseController
|
|
|
// ETimeType.WorkDay,
|
|
|
// dto.TimeLimit.Value, order.AcceptTypeCode);
|
|
|
await _orderRepository.Updateable().SetColumns(o => new Orders.Order()
|
|
|
- {
|
|
|
- ExpiredTime = expiredTime.ExpiredTime,
|
|
|
- NearlyExpiredTime = expiredTime.NearlyExpiredTime,
|
|
|
- NearlyExpiredTimeOne = expiredTime.NearlyExpiredTimeOne,
|
|
|
- ProcessType = processType,
|
|
|
- Status = EOrderStatus.Special
|
|
|
- })
|
|
|
+ {
|
|
|
+ ExpiredTime = expiredTime.ExpiredTime,
|
|
|
+ NearlyExpiredTime = expiredTime.NearlyExpiredTime,
|
|
|
+ NearlyExpiredTimeOne = expiredTime.NearlyExpiredTimeOne,
|
|
|
+ ProcessType = processType,
|
|
|
+ Status = EOrderStatus.Special
|
|
|
+ })
|
|
|
.Where(o => o.Id == order.Id).ExecuteCommandAsync(HttpContext.RequestAborted);
|
|
|
var orderDto = _mapper.Map<OrderDto>(order);
|
|
|
await _capPublisher.PublishAsync(Hotline.Share.Mq.EventNames.HotlineOrderExpiredTimeUpdate, orderDto,
|
|
@@ -5129,7 +5141,7 @@ public class OrderController : BaseController
|
|
|
var handler = await _orderDomainService.AverageOrder(HttpContext.RequestAborted);
|
|
|
dto.NextHandlers = new List<FlowStepHandler> { handler };
|
|
|
await _orderSpecialRepository.Updateable().SetColumns(x => new OrderSpecial { NextHandlers = dto.NextHandlers }).Where(x => x.Id == model.Id).ExecuteCommandAsync();
|
|
|
- }
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
var recall = new RecallDto
|
|
@@ -5162,11 +5174,11 @@ public class OrderController : BaseController
|
|
|
|
|
|
endTime = expiredTime.EndTime;
|
|
|
await _orderRepository.Updateable().SetColumns(o => new Orders.Order()
|
|
|
- {
|
|
|
- ExpiredTime = expiredTime.EndTime,
|
|
|
- NearlyExpiredTime = expiredTime.NearlyExpiredTime,
|
|
|
- NearlyExpiredTimeOne = expiredTime.NearlyExpiredTimeOne
|
|
|
- })
|
|
|
+ {
|
|
|
+ ExpiredTime = expiredTime.EndTime,
|
|
|
+ NearlyExpiredTime = expiredTime.NearlyExpiredTime,
|
|
|
+ NearlyExpiredTimeOne = expiredTime.NearlyExpiredTimeOne
|
|
|
+ })
|
|
|
.Where(o => o.Id == order.Id).ExecuteCommandAsync(HttpContext.RequestAborted);
|
|
|
var orderDto = _mapper.Map<OrderDto>(order);
|
|
|
await _capPublisher.PublishAsync(Hotline.Share.Mq.EventNames.HotlineOrderExpiredTimeUpdate, orderDto,
|
|
@@ -5258,7 +5270,7 @@ public class OrderController : BaseController
|
|
|
var handler = await _orderDomainService.AverageOrder(HttpContext.RequestAborted);
|
|
|
special.NextHandlers = new List<FlowStepHandler> { handler };
|
|
|
await _orderSpecialRepository.Updateable().SetColumns(x => new OrderSpecial { NextHandlers = special.NextHandlers }).Where(x => x.Id == special.Id).ExecuteCommandAsync();
|
|
|
- }
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
var recall = new RecallDto
|
|
@@ -5310,13 +5322,13 @@ public class OrderController : BaseController
|
|
|
? EProcessType.Zhiban
|
|
|
: EProcessType.Jiaoban;
|
|
|
await _orderRepository.Updateable().SetColumns(o => new Orders.Order()
|
|
|
- {
|
|
|
- ExpiredTime = expiredTime.ExpiredTime,
|
|
|
- NearlyExpiredTime = expiredTime.NearlyExpiredTime,
|
|
|
- NearlyExpiredTimeOne = expiredTime.NearlyExpiredTimeOne,
|
|
|
- ProcessType = processType,
|
|
|
- Status = EOrderStatus.Special
|
|
|
- })
|
|
|
+ {
|
|
|
+ ExpiredTime = expiredTime.ExpiredTime,
|
|
|
+ NearlyExpiredTime = expiredTime.NearlyExpiredTime,
|
|
|
+ NearlyExpiredTimeOne = expiredTime.NearlyExpiredTimeOne,
|
|
|
+ ProcessType = processType,
|
|
|
+ Status = EOrderStatus.Special
|
|
|
+ })
|
|
|
.Where(o => o.Id == order.Id).ExecuteCommandAsync(HttpContext.RequestAborted);
|
|
|
var orderDto = _mapper.Map<OrderDto>(order);
|
|
|
await _capPublisher.PublishAsync(Hotline.Share.Mq.EventNames.HotlineOrderExpiredTimeUpdate, orderDto,
|
|
@@ -5397,19 +5409,19 @@ public class OrderController : BaseController
|
|
|
var order = await _orderRepository.GetAsync(x => x.Id == special.OrderId);
|
|
|
if (special.State == 1)
|
|
|
{
|
|
|
- if (_appOptions.Value.IsZiGong && special.BusinessType == EBusinessType.Send)
|
|
|
- {
|
|
|
- // 平均派单
|
|
|
- var averageSendOrder = bool.Parse(_systemSettingCacheManager.GetSetting(SettingConstants.AverageSendOrder).SettingValue[0]);
|
|
|
- if (averageSendOrder)
|
|
|
- {
|
|
|
- var handler = await _orderDomainService.AverageOrder(HttpContext.RequestAborted);
|
|
|
- special.NextHandlers = new List<FlowStepHandler> { handler };
|
|
|
- await _orderSpecialRepository.Updateable().SetColumns(x => new OrderSpecial { NextHandlers = special.NextHandlers }).Where(x => x.Id == special.Id).ExecuteCommandAsync();
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- var recall = new RecallDto
|
|
|
+ if (_appOptions.Value.IsZiGong && special.BusinessType == EBusinessType.Send)
|
|
|
+ {
|
|
|
+ // 平均派单
|
|
|
+ var averageSendOrder = bool.Parse(_systemSettingCacheManager.GetSetting(SettingConstants.AverageSendOrder).SettingValue[0]);
|
|
|
+ if (averageSendOrder)
|
|
|
+ {
|
|
|
+ var handler = await _orderDomainService.AverageOrder(HttpContext.RequestAborted);
|
|
|
+ special.NextHandlers = new List<FlowStepHandler> { handler };
|
|
|
+ await _orderSpecialRepository.Updateable().SetColumns(x => new OrderSpecial { NextHandlers = special.NextHandlers }).Where(x => x.Id == special.Id).ExecuteCommandAsync();
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ var recall = new RecallDto
|
|
|
{
|
|
|
WorkflowId = special.WorkflowId!,
|
|
|
NextStepCode = special.NextStepCode,
|
|
@@ -5458,13 +5470,13 @@ public class OrderController : BaseController
|
|
|
? EProcessType.Zhiban
|
|
|
: EProcessType.Jiaoban;
|
|
|
await _orderRepository.Updateable().SetColumns(o => new Orders.Order()
|
|
|
- {
|
|
|
- ExpiredTime = expiredTime.ExpiredTime,
|
|
|
- NearlyExpiredTime = expiredTime.NearlyExpiredTime,
|
|
|
- NearlyExpiredTimeOne = expiredTime.NearlyExpiredTimeOne,
|
|
|
- ProcessType = processType,
|
|
|
- Status = EOrderStatus.Special
|
|
|
- })
|
|
|
+ {
|
|
|
+ ExpiredTime = expiredTime.ExpiredTime,
|
|
|
+ NearlyExpiredTime = expiredTime.NearlyExpiredTime,
|
|
|
+ NearlyExpiredTimeOne = expiredTime.NearlyExpiredTimeOne,
|
|
|
+ ProcessType = processType,
|
|
|
+ Status = EOrderStatus.Special
|
|
|
+ })
|
|
|
.Where(o => o.Id == order.Id).ExecuteCommandAsync(HttpContext.RequestAborted);
|
|
|
var orderDto = _mapper.Map<OrderDto>(order);
|
|
|
await _capPublisher.PublishAsync(Hotline.Share.Mq.EventNames.HotlineOrderExpiredTimeUpdate, orderDto,
|
|
@@ -5607,7 +5619,7 @@ public class OrderController : BaseController
|
|
|
d => d.Title.Contains(dto.Keyword!) || d.No.Contains(dto.Keyword!))
|
|
|
//.WhereIF(!string.IsNullOrEmpty(dto.Content), d => d.Content.Contains(dto.Content!))
|
|
|
.WhereIF(!string.IsNullOrEmpty(dto.AcceptType), d => d.AcceptTypeCode == dto.AcceptType) //受理类型
|
|
|
- //.WhereIF(dto.AcceptTypes.Any(), d => dto.AcceptTypes.Contains(d.AcceptTypeCode)) //受理类型
|
|
|
+ //.WhereIF(dto.AcceptTypes.Any(), d => dto.AcceptTypes.Contains(d.AcceptTypeCode)) //受理类型
|
|
|
.WhereIF(!string.IsNullOrEmpty(dto.Channel), d => d.SourceChannelCode == dto.Channel) //来源渠道
|
|
|
.WhereIF(!string.IsNullOrEmpty(dto.Hotspot), d => d.HotspotSpliceName != null && d.HotspotSpliceName.Contains(dto.Hotspot))
|
|
|
.WhereIF(!string.IsNullOrEmpty(dto.TransferPhone), d => d.TransferPhone.Contains(dto.TransferPhone!))
|
|
@@ -7346,7 +7358,7 @@ public class OrderController : BaseController
|
|
|
{
|
|
|
await _orderRepository.Updateable()
|
|
|
.SetColumns(o => new Orders.Order()
|
|
|
- { SignerId = dto.Handler.UserId, SignerName = dto.Handler.Username, Status = EOrderStatus.HandOverToUnAccept })
|
|
|
+ { SignerId = dto.Handler.UserId, SignerName = dto.Handler.Username, Status = EOrderStatus.HandOverToUnAccept })
|
|
|
.Where(o => o.Id == dto.OrderId).ExecuteCommandAsync(HttpContext.RequestAborted);
|
|
|
}
|
|
|
else
|