|
@@ -668,7 +668,7 @@ public class OrderController : BaseController
|
|
|
var dissatisfiedReason = _sysDicDataCacheManager.GetSysDicDataCache(SysDicTypeConsts.DissatisfiedReason);
|
|
|
var visitManner = _sysDicDataCacheManager.GetSysDicDataCache(SysDicTypeConsts.VisitManner).Where(x => x.DicDataValue != "-1");
|
|
|
//var callRecord = await _trCallRecordRepository.GetAsync(x => x.CallAccept == orderVisit.CallId); //由CallAccept改为OtherAccept
|
|
|
- var callRecord = await _trCallRecordRepository.GetAsync(x => x.OtherAccept == orderVisit.CallId);
|
|
|
+ var callRecord = await _trCallRecordRepository.GetAsync(x => x.OtherAccept == orderVisit.CallId && string.IsNullOrEmpty(x.OtherAccept)==false,HttpContext.RequestAborted);
|
|
|
var recordingFileUrl = "";
|
|
|
var recordingBaseAddress = "";
|
|
|
var recordingAbsolutePath = "";
|
|
@@ -1340,14 +1340,14 @@ public class OrderController : BaseController
|
|
|
public async Task<PagedDto<OrderDelayDto>> DelayList([FromQuery] DelayListDto dto)
|
|
|
{
|
|
|
var (total, items) = await _orderDelayRepository.Queryable(canView: true)
|
|
|
- .Includes(x => x.Order)
|
|
|
- .Includes(x => x.Workflow)
|
|
|
+ .Includes(d => d.Order)
|
|
|
+ .Includes(d => d.Workflow)
|
|
|
.WhereIF(!string.IsNullOrEmpty(dto.Keyword),
|
|
|
d => d.Order.Title.Contains(dto.Keyword!) || d.Order.No.Contains(dto.Keyword!))
|
|
|
- .WhereIF(dto.IsApply == true, x => x.DelayState != EDelayState.Examining)
|
|
|
- .WhereIF(dto.IsApply == false, x => x.DelayState == EDelayState.Examining)
|
|
|
- .WhereIF(dto.DelayState != null, x => x.DelayState == dto.DelayState)
|
|
|
- .OrderByDescending(x => x.ApplyDelayTime)
|
|
|
+ .WhereIF(dto.IsApply == true, d => d.DelayState != EDelayState.Examining)
|
|
|
+ .WhereIF(dto.IsApply == false, d => d.DelayState == EDelayState.Examining)
|
|
|
+ .WhereIF(dto.DelayState != null, d => d.DelayState == dto.DelayState)
|
|
|
+ .OrderByDescending(d => d.ApplyDelayTime)
|
|
|
.ToPagedListAsync(dto.PageIndex, dto.PageSize, HttpContext.RequestAborted);
|
|
|
|
|
|
return new PagedDto<OrderDelayDto>(total, _mapper.Map<IReadOnlyList<OrderDelayDto>>(items));
|
|
@@ -1364,15 +1364,15 @@ public class OrderController : BaseController
|
|
|
var isHandled = dto.IsApply.HasValue && dto.IsApply.Value;
|
|
|
var (total, items) = await _orderDelayRepository
|
|
|
.Queryable(hasHandled: !isHandled)
|
|
|
- .Includes(x => x.Order)
|
|
|
- .Includes(x => x.Workflow)
|
|
|
+ .Includes(d => d.Order)
|
|
|
+ .Includes(d => d.Workflow)
|
|
|
.WhereIF(!string.IsNullOrEmpty(dto.Keyword),
|
|
|
d => d.Order.Title.Contains(dto.Keyword!) || d.No.Contains(dto.Keyword!))
|
|
|
- .WhereIF(dto.IsApply == true, x => x.DelayState != EDelayState.Examining)
|
|
|
- .WhereIF(dto.IsApply == false, x => x.DelayState == EDelayState.Examining)
|
|
|
+ .WhereIF(dto.IsApply == true, d => d.DelayState != EDelayState.Examining)
|
|
|
+ .WhereIF(dto.IsApply == false, d => d.DelayState == EDelayState.Examining)
|
|
|
//.WhereIF(dto.DelayState != null, x => x.DelayState == dto.DelayState)
|
|
|
//.Where(x=>x.DelayState == EDelayState.Examining)
|
|
|
- .OrderByDescending(x => x.ApplyDelayTime)
|
|
|
+ .OrderByDescending(d => d.ApplyDelayTime)
|
|
|
.ToPagedListAsync(dto.PageIndex, dto.PageSize, HttpContext.RequestAborted);
|
|
|
|
|
|
return new PagedDto<OrderDelayDto>(total, _mapper.Map<IReadOnlyList<OrderDelayDto>>(items));
|
|
@@ -1388,9 +1388,9 @@ public class OrderController : BaseController
|
|
|
public async Task<OrderDelayDto> DelayEntity(string id)
|
|
|
{
|
|
|
var model = await _orderDelayRepository.Queryable()
|
|
|
- .Includes(x => x.Order)
|
|
|
- .Includes(x => x.Workflow)
|
|
|
- .FirstAsync(x => x.Id == id);
|
|
|
+ .Includes(d => d.Order)
|
|
|
+ .Includes(d => d.Workflow)
|
|
|
+ .FirstAsync(d => d.Id == id);
|
|
|
var rspModel = _mapper.Map<OrderDelayDto>(model);
|
|
|
rspModel.IsCanHandle = model.CanHandle(_sessionContext.RequiredUserId, _sessionContext.RequiredOrgId);
|
|
|
rspModel.Handle = false;
|
|
@@ -1531,27 +1531,27 @@ public class OrderController : BaseController
|
|
|
var handler = dto.source == 1 && dto.Status is EScreenStatus.Apply;
|
|
|
|
|
|
var query = _orderScreenRepository.Queryable(canView: view, hasHandled: handler)
|
|
|
- .Includes(x => x.Order)
|
|
|
- .Includes(x => x.VisitDetail)
|
|
|
- .Includes(x => x.Visit, d => d.Order)
|
|
|
- .Includes(x => x.Workflow)
|
|
|
+ .Includes(d => d.Order)
|
|
|
+ .Includes(d => d.VisitDetail)
|
|
|
+ .Includes(d => d.Visit, v => v.Order)
|
|
|
+ .Includes(d => d.Workflow)
|
|
|
.WhereIF(!string.IsNullOrEmpty(dto.Keyword),
|
|
|
- x => x.Visit.Order.Title.Contains(dto.Keyword!) || x.Visit.Order.No.Contains(dto.Keyword!));
|
|
|
+ d => d.Visit.Order.Title.Contains(dto.Keyword!) || d.Visit.Order.No.Contains(dto.Keyword!));
|
|
|
if (dto.Status is EScreenStatus.Apply)
|
|
|
{
|
|
|
- query.Where(x => (x.Status == EScreenStatus.Apply || x.Status == EScreenStatus.Approval));
|
|
|
+ query.Where(d => (d.Status == EScreenStatus.Apply || d.Status == EScreenStatus.Approval));
|
|
|
}
|
|
|
if (dto.Status.HasValue && dto.Status == EScreenStatus.MyHandle)
|
|
|
{
|
|
|
- query.Where(x => (x.Status != EScreenStatus.Apply));
|
|
|
+ query.Where(d => (d.Status != EScreenStatus.Apply));
|
|
|
}
|
|
|
var (total, items) = await query
|
|
|
//.WhereIF(dto.Status.HasValue && dto.Status == EScreenStatus.MyHandle,
|
|
|
// x => x.Status != EScreenStatus.Apply && x.CreatorId == _sessionContext.UserId)
|
|
|
- .WhereIF(dto.CreationTimeStart.HasValue, x => x.CreationTime >= dto.CreationTimeStart)
|
|
|
- .WhereIF(dto.CreationTimeEnd.HasValue, x => x.CreationTime <= dto.CreationTimeEnd)
|
|
|
- .WhereIF(!string.IsNullOrEmpty(dto.OrderId), x => x.OrderId == dto.OrderId)
|
|
|
- .OrderByDescending(x => x.CreationTime)
|
|
|
+ .WhereIF(dto.CreationTimeStart.HasValue, d => d.CreationTime >= dto.CreationTimeStart)
|
|
|
+ .WhereIF(dto.CreationTimeEnd.HasValue, d => d.CreationTime <= dto.CreationTimeEnd)
|
|
|
+ .WhereIF(!string.IsNullOrEmpty(dto.OrderId), d => d.OrderId == dto.OrderId)
|
|
|
+ .OrderByDescending(d => d.CreationTime)
|
|
|
.ToPagedListAsync(dto.PageIndex, dto.PageSize, HttpContext.RequestAborted);
|
|
|
return new PagedDto<OrderScreenListDto>(total, _mapper.Map<IReadOnlyList<OrderScreenListDto>>(items));
|
|
|
}
|
|
@@ -2390,7 +2390,7 @@ public class OrderController : BaseController
|
|
|
|
|
|
//工单ID跟通话记录相关联
|
|
|
//var callRecord = await _trCallRecordRepository.GetAsync(p => p.CallAccept == order.CallId, HttpContext.RequestAborted);//由CallAccept改为OtherAccept
|
|
|
- var callRecord = await _trCallRecordRepository.GetAsync(p => p.OtherAccept== order.CallId, HttpContext.RequestAborted);
|
|
|
+ var callRecord = await _trCallRecordRepository.GetAsync(p => p.OtherAccept== order.CallId && string.IsNullOrEmpty(p.OtherAccept) ==false, HttpContext.RequestAborted);
|
|
|
if (callRecord != null && string.IsNullOrEmpty(callRecord.ExternalId))
|
|
|
{
|
|
|
callRecord.ExternalId = order.Id;
|
|
@@ -2910,9 +2910,9 @@ public class OrderController : BaseController
|
|
|
.WhereIF(dto.ExpiredOrAlmostOverdue.HasValue && dto.ExpiredOrAlmostOverdue == true, d => (d.ExpiredTime < DateTime.Now && d.Status < EOrderStatus.Filed) || (d.ExpiredTime < d.ActualHandleTime && d.Status >= EOrderStatus.Filed)) //超期 未办
|
|
|
.WhereIF(dto.ExpiredOrAlmostOverdue.HasValue && dto.ExpiredOrAlmostOverdue == false, d => d.NearlyExpiredTime < DateTime.Now && d.ExpiredTime > DateTime.Now)//即将超期 未办
|
|
|
.Where(d => d.Source < ESource.MLSQ || d.Source > ESource.WZSC)
|
|
|
- .Where(d => d.Status != EOrderStatus.BackToProvince)
|
|
|
+ .Where(d => d.Status != EOrderStatus.BackToProvince && d.Status < EOrderStatus.Filed)
|
|
|
//.Where(d => SqlFunc.Subqueryable<OrderSpecial>().Where(os => os.OrderId == d.Id).NotAny())
|
|
|
- .Where(d => d.OrderSpecials.Any() == false || d.OrderSpecials.Any(s => s.State == 0) == false)
|
|
|
+ .Where(d => d.OrderSpecials.Any() == false || d.OrderSpecials.Any(s => s.State > 0))
|
|
|
.WhereIF(dto.StartTime.HasValue, d => d.StartTime >= dto.StartTime)
|
|
|
.WhereIF(dto.EndTime.HasValue, d => d.StartTime <= dto.EndTime)
|
|
|
.OrderByDescending(d => d.StartTime)
|
|
@@ -2948,7 +2948,7 @@ public class OrderController : BaseController
|
|
|
.WhereIF(dto.StartTime.HasValue, d => d.CreationTime >= dto.StartTime)
|
|
|
.WhereIF(dto.EndTime.HasValue, d => d.CreationTime <= dto.EndTime)
|
|
|
.Where(x => x.Source < ESource.MLSQ || x.Source > ESource.WZSC)
|
|
|
- .Where(x => x.Status != EOrderStatus.BackToProvince)
|
|
|
+ .Where(x => x.Status != EOrderStatus.BackToProvince && x.Status < EOrderStatus.Filed)
|
|
|
.OrderBy(d => d.Status)
|
|
|
.OrderByIF(dto.IsHandled == true, d => d.StartTime, OrderByType.Desc)
|
|
|
.OrderByIF(dto.IsHandled == false, d => d.CreationTime, OrderByType.Desc)
|
|
@@ -2972,7 +2972,7 @@ public class OrderController : BaseController
|
|
|
var (total, items) = await _orderRepository.Queryable(canView: false)
|
|
|
.Where(x => x.Workflow.Steps.Any(s => s.Status < EWorkflowStepStatus.Handled && s.HandlerOrgId == OrgSeedData.CenterId))
|
|
|
.Where(x => x.Source < ESource.MLSQ || x.Source > ESource.WZSC)
|
|
|
- .Where(x => x.Status != EOrderStatus.BackToProvince)
|
|
|
+ .Where(x => x.Status != EOrderStatus.BackToProvince && x.Status < EOrderStatus.Filed)
|
|
|
.WhereIF(!string.IsNullOrEmpty(dto.No), x => x.No!.Contains(dto.No!))
|
|
|
.WhereIF(!string.IsNullOrEmpty(dto.Title), x => x.Title!.Contains(dto.Title!))
|
|
|
.WhereIF(dto is { StCreationTime: not null, EndCreationTime: not null }, x => x.CreationTime >= dto.StCreationTime && x.CreationTime <= dto.EndCreationTime)
|
|
@@ -3016,7 +3016,6 @@ public class OrderController : BaseController
|
|
|
|
|
|
public async Task<Object> QueryWaitedHome([FromQuery] QueryOrderWaitedDto dto)
|
|
|
{
|
|
|
-
|
|
|
var isHandled = dto.IsHandled.HasValue && dto.IsHandled.Value;
|
|
|
if (dto.EndTime.HasValue)
|
|
|
dto.EndTime = dto.EndTime.Value.AddDays(1).AddSeconds(-1);
|
|
@@ -3032,7 +3031,7 @@ public class OrderController : BaseController
|
|
|
.WhereIF(dto.StartTime.HasValue, d => d.CreationTime >= dto.StartTime)
|
|
|
.WhereIF(dto.EndTime.HasValue, d => d.CreationTime <= dto.EndTime)
|
|
|
.Where(d => d.Source < ESource.MLSQ || d.Source > ESource.WZSC)
|
|
|
- .Where(d => d.Status != EOrderStatus.BackToProvince)
|
|
|
+ .Where(d => d.Status != EOrderStatus.BackToProvince && d.Status < EOrderStatus.Filed)
|
|
|
//.Where(d => SqlFunc.Subqueryable<OrderSpecial>().Where(os => os.OrderId == d.Id).NotAny())
|
|
|
.Where(d => d.OrderSpecials.Any() == false || d.OrderSpecials.Any(s => s.State == 0) == false)
|
|
|
.OrderByDescending(d => d.StartTime)
|
|
@@ -3040,7 +3039,9 @@ public class OrderController : BaseController
|
|
|
|
|
|
var page1 = new PagedDto<OrderDto>(total, _mapper.Map<IReadOnlyList<OrderDto>>(items));
|
|
|
|
|
|
- EOrderStatus[] handleStatuses = EnumExts.GetFields<EOrderStatus>().Select(d => (EOrderStatus)d.Key).ToArray();
|
|
|
+ dto.IsHandled = false;
|
|
|
+ isHandled = dto.IsHandled.HasValue && dto.IsHandled.Value;
|
|
|
+ EOrderStatus[] handleStatuses = EnumExts.GetFields<EOrderStatus>().Select(d => (EOrderStatus)d.Key).ToArray();
|
|
|
handleStatuses = handleStatuses.WhereIF(dto.IsHandled.HasValue,
|
|
|
d => dto.IsHandled!.Value
|
|
|
? d is not EOrderStatus.WaitForAccept and not EOrderStatus.BackToUnAccept and not EOrderStatus.SpecialToUnAccept
|
|
@@ -3057,13 +3058,13 @@ public class OrderController : BaseController
|
|
|
.WhereIF(dto.ExpiredOrAlmostOverdue.HasValue && dto.ExpiredOrAlmostOverdue == true, d => (d.ExpiredTime < DateTime.Now && d.Status < EOrderStatus.Filed) || (d.ExpiredTime < d.ActualHandleTime && d.Status >= EOrderStatus.Filed)) //超期 未办
|
|
|
.WhereIF(dto.ExpiredOrAlmostOverdue.HasValue && dto.ExpiredOrAlmostOverdue == false, d => d.NearlyExpiredTime < DateTime.Now && d.ExpiredTime > DateTime.Now)//即将超期 未办
|
|
|
.Where(x => x.Source < ESource.MLSQ || x.Source > ESource.WZSC)
|
|
|
- .Where(x => x.Status != EOrderStatus.BackToProvince)
|
|
|
+ .Where(x => x.Status != EOrderStatus.BackToProvince && x.Status < EOrderStatus.Filed)
|
|
|
.OrderBy(d => d.Status)
|
|
|
.OrderByIF(dto.IsHandled == true, d => d.StartTime, OrderByType.Asc)
|
|
|
.OrderByIF(dto.IsHandled == false, d => d.CreationTime, OrderByType.Desc)
|
|
|
.ToPagedListAsync(dto, HttpContext.RequestAborted);
|
|
|
|
|
|
- var page2 = new PagedDto<OrderDto>(total2, _mapper.Map<IReadOnlyList<OrderDto>>(items2));
|
|
|
+ var page2 = new PagedDto<OrderDto>(total2, _mapper.Map<IReadOnlyList<OrderDto>>(items2));
|
|
|
|
|
|
return new { Waited = page1, Sign = page2 };
|
|
|
}
|