|
@@ -6093,8 +6093,8 @@ public class OrderApplication : IOrderApplication, IScopeDependency
|
|
|
var send = _workflowTraceRepository.Queryable()
|
|
|
.LeftJoin<Order>((x, o) => x.ExternalId == o.Id)
|
|
|
.Where((x, o) => x.HandlerOrgId != OrgSeedData.CenterId && (x.PrevStepName == "班长审批"|| x.PrevStepName == "派单组") && o.CreationTime >= dto.StartTime && o.CreationTime <= dto.EndTime && x.CreationTime >= dto.StartTime)
|
|
|
- .GroupBy((x, o) => new {o.AcceptorId ,x.ExternalId })
|
|
|
- .Select((x, o) => new { UserId = o.AcceptorId , SendOrderNum = SqlFunc.AggregateDistinctCount(x.ExternalId) });
|
|
|
+ .GroupBy((x, o) => new {o.AcceptorId })
|
|
|
+ .Select((x, o) => new SeatSendBackStatisticsVo { UserId = o.AcceptorId , SendOrderNum = SqlFunc.AggregateDistinctCount(x.ExternalId) });
|
|
|
|
|
|
// var sendBack = _workflowTraceRepository.Queryable()
|
|
|
//.LeftJoin<Order>((x, o) => x.ExternalId == o.Id)
|
|
@@ -6104,36 +6104,37 @@ public class OrderApplication : IOrderApplication, IScopeDependency
|
|
|
var sendBack = _orderSendBackAuditRepository.Queryable()
|
|
|
.LeftJoin<Order>((x, o) => x.OrderId == o.Id)
|
|
|
.Where((x, o) => x.ApplyOrgId != OrgSeedData.CenterId && (x.SendBackStepName == "班长审批" || x.SendBackStepName == "派单组") && o.CreationTime >= dto.StartTime && o.CreationTime <= dto.EndTime)
|
|
|
- .GroupBy((x, o) => new { x.ApplyOrgId })
|
|
|
- .Select((x, o) => new { UserId = x.ApplyOrgId, SendOrderBackNum = SqlFunc.AggregateDistinctCount(x.OrderId), SendOrderBackNumber = SqlFunc.AggregateCount(x.Id) });
|
|
|
+ .GroupBy((x, o) => new { o.AcceptorId })
|
|
|
+ .Select((x, o) => new SeatSendBackStatisticsVo { UserId = o.AcceptorId, SendOrderBackNum = SqlFunc.AggregateDistinctCount(x.OrderId), SendOrderBackNumber = SqlFunc.AggregateCount(x.Id) });
|
|
|
|
|
|
|
|
|
var filed = _orderRepository.Queryable()
|
|
|
.Where(x=> x.CreationTime >= dto.StartTime && x.CreationTime <= dto.EndTime && x.Status >= EOrderStatus.Filed && x.FileOrgIsCenter == true)
|
|
|
.GroupBy(x=>x.AcceptorId)
|
|
|
- .Select(x => new { UserId = x.AcceptorId, FiledNum = SqlFunc.AggregateDistinctCount(x.Id) });
|
|
|
+ .Select(x => new SeatSendBackStatisticsVo { UserId = x.AcceptorId, CentreFileNum = SqlFunc.AggregateDistinctCount(x.Id) });
|
|
|
|
|
|
var back = _orderSpecialRepository.Queryable()
|
|
|
.LeftJoin<Order>((x, o) => x.OrderId == o.Id)
|
|
|
.Where((x, o) => o.CreationTime >= dto.StartTime && o.CreationTime <= dto.EndTime && x.SpecialType == ESpecialType.SendBack && x.NextStepCode == "start")
|
|
|
.GroupBy((x, o) => new { o.AcceptorId })
|
|
|
- .Select((x, o) => new { UserId = o.AcceptorId, CentreFileBackNum = SqlFunc.AggregateDistinctCount(x.OrderId), CentreFileBackNumber = SqlFunc.AggregateCount(x.OrderId)});
|
|
|
+ .Select((x, o) => new SeatSendBackStatisticsVo { UserId = o.AcceptorId, CentreFileBackNum = SqlFunc.AggregateDistinctCount(x.OrderId), CentreFileBackNumber = SqlFunc.AggregateCount(x.OrderId)});
|
|
|
|
|
|
var query = seats.LeftJoin(send, (s, sd) => s.Id == sd.UserId)
|
|
|
.LeftJoin(sendBack, (s, sd, sb) => s.Id == sb.UserId)
|
|
|
.LeftJoin(filed, (s, sd, sb, f) => s.Id == f.UserId)
|
|
|
.LeftJoin(back, (s, sd, sb, f, b) => s.Id == b.UserId)
|
|
|
- .Select((s, sd, sb, f, b) => new SeatSendBackStatisticsVo
|
|
|
- {
|
|
|
- UserId = s.Id,
|
|
|
- UserName = s.Name,
|
|
|
- SendOrderNum = sd.SendOrderNum,
|
|
|
- SendOrderBackNum = sb.SendOrderBackNum,
|
|
|
- SendOrderBackNumber = sb.SendOrderBackNumber,
|
|
|
- CentreFileNum = f.FiledNum,
|
|
|
- CentreFileBackNum = b.CentreFileBackNum,
|
|
|
- CentreFileBackNumber = b.CentreFileBackNumber,
|
|
|
- });
|
|
|
+ .GroupBy((s, sd, sb, f, b) => new { s.Id, s.Name })
|
|
|
+ .Select((s, sd, sb, f, b) => new SeatSendBackStatisticsVo
|
|
|
+ {
|
|
|
+ UserId = s.Id,
|
|
|
+ UserName = s.Name,
|
|
|
+ SendOrderNum = SqlFunc.AggregateSum(sd.SendOrderNum),
|
|
|
+ SendOrderBackNum = SqlFunc.AggregateSum(sb.SendOrderBackNum),
|
|
|
+ SendOrderBackNumber = SqlFunc.AggregateSum(sb.SendOrderBackNumber),
|
|
|
+ CentreFileNum = SqlFunc.AggregateSum(f.CentreFileNum),
|
|
|
+ CentreFileBackNum = SqlFunc.AggregateSum(b.CentreFileBackNum),
|
|
|
+ CentreFileBackNumber = SqlFunc.AggregateSum(b.CentreFileBackNumber),
|
|
|
+ });
|
|
|
return query;
|
|
|
}
|
|
|
|
|
@@ -6147,7 +6148,7 @@ public class OrderApplication : IOrderApplication, IScopeDependency
|
|
|
|
|
|
if (dto.StatisticsType == "sendOrderNum")
|
|
|
{
|
|
|
- var query = _orderRepository.Queryable().Where(x => x.CreationTime >= dto.StartTime && x.CreationTime <= dto.EndTime)
|
|
|
+ var query = _orderRepository.Queryable().Where(x => x.CreationTime >= dto.StartTime && x.CreationTime <= dto.EndTime && x.AcceptorId == dto.UserId)
|
|
|
.WhereIF(!string.IsNullOrEmpty(dto.No), x => x.No.Contains(dto.No!))
|
|
|
.WhereIF(!string.IsNullOrEmpty(dto.Title), x => x.Title.Contains(dto.Title!))
|
|
|
.WhereIF(!string.IsNullOrEmpty(dto.AcceptType), x => x.AcceptTypeCode == dto.AcceptType) //受理类型
|
|
@@ -6160,7 +6161,7 @@ public class OrderApplication : IOrderApplication, IScopeDependency
|
|
|
}
|
|
|
else if(dto.StatisticsType == "sendOrderBackNum")
|
|
|
{
|
|
|
- var query = _orderRepository.Queryable().Where(x => x.CreationTime >= dto.StartTime && x.CreationTime <= dto.EndTime)
|
|
|
+ var query = _orderRepository.Queryable().Where(x => x.CreationTime >= dto.StartTime && x.CreationTime <= dto.EndTime && x.AcceptorId == dto.UserId)
|
|
|
.WhereIF(!string.IsNullOrEmpty(dto.No), x => x.No.Contains(dto.No!))
|
|
|
.WhereIF(!string.IsNullOrEmpty(dto.Title), x => x.Title.Contains(dto.Title!))
|
|
|
.WhereIF(!string.IsNullOrEmpty(dto.AcceptType), x => x.AcceptTypeCode == dto.AcceptType) //受理类型
|
|
@@ -6181,13 +6182,13 @@ public class OrderApplication : IOrderApplication, IScopeDependency
|
|
|
.WhereIF(!string.IsNullOrEmpty(dto.Channel), (x, os) => x.SourceChannelCode == dto.Channel) //来源渠道
|
|
|
.WhereIF(!string.IsNullOrEmpty(dto.Hotspot),
|
|
|
(x, os) => x.HotspotSpliceName != null && x.HotspotSpliceName.Contains(dto.Hotspot)) //热点分类
|
|
|
- .Where((x, os) => x.CreationTime >= dto.StartTime && x.CreationTime <= dto.EndTime)
|
|
|
+ .Where((x, os) => x.CreationTime >= dto.StartTime && x.CreationTime <= dto.EndTime && x.AcceptorId == dto.UserId)
|
|
|
.Select((x, os) => new OrderDto() { Id = x.Id.SelectAll(), SendBackOpinion = os.Content, SendBackAuditTime = os.AuditTime });
|
|
|
return query;
|
|
|
}
|
|
|
else if (dto.StatisticsType == "centreFileNum")
|
|
|
{
|
|
|
- var query = _orderRepository.Queryable().Where(x => x.CreationTime >= dto.StartTime && x.CreationTime <= dto.EndTime)
|
|
|
+ var query = _orderRepository.Queryable().Where(x => x.CreationTime >= dto.StartTime && x.CreationTime <= dto.EndTime && x.AcceptorId == dto.UserId)
|
|
|
.WhereIF(!string.IsNullOrEmpty(dto.No), x => x.No.Contains(dto.No!))
|
|
|
.WhereIF(!string.IsNullOrEmpty(dto.Title), x => x.Title.Contains(dto.Title!))
|
|
|
.WhereIF(!string.IsNullOrEmpty(dto.AcceptType), x => x.AcceptTypeCode == dto.AcceptType) //受理类型
|
|
@@ -6199,7 +6200,7 @@ public class OrderApplication : IOrderApplication, IScopeDependency
|
|
|
}
|
|
|
else if (dto.StatisticsType == "centreFileBackNum")
|
|
|
{
|
|
|
- var query = _orderRepository.Queryable().Where(x => x.CreationTime >= dto.StartTime && x.CreationTime <= dto.EndTime)
|
|
|
+ var query = _orderRepository.Queryable().Where(x => x.CreationTime >= dto.StartTime && x.CreationTime <= dto.EndTime && x.AcceptorId == dto.UserId)
|
|
|
.WhereIF(!string.IsNullOrEmpty(dto.No), x => x.No.Contains(dto.No!))
|
|
|
.WhereIF(!string.IsNullOrEmpty(dto.Title), x => x.Title.Contains(dto.Title!))
|
|
|
.WhereIF(!string.IsNullOrEmpty(dto.AcceptType), x => x.AcceptTypeCode == dto.AcceptType) //受理类型
|
|
@@ -6219,7 +6220,7 @@ public class OrderApplication : IOrderApplication, IScopeDependency
|
|
|
.WhereIF(!string.IsNullOrEmpty(dto.Channel), (x, os) => x.SourceChannelCode == dto.Channel) //来源渠道
|
|
|
.WhereIF(!string.IsNullOrEmpty(dto.Hotspot),
|
|
|
(x, os) => x.HotspotSpliceName != null && x.HotspotSpliceName.Contains(dto.Hotspot)) //热点分类
|
|
|
- .Where((x, os) => x.CreationTime >= dto.StartTime && x.CreationTime <= dto.EndTime)
|
|
|
+ .Where((x, os) => x.CreationTime >= dto.StartTime && x.CreationTime <= dto.EndTime && x.AcceptorId == dto.UserId)
|
|
|
.Select((x, os) => new OrderDto() { Id = x.Id.SelectAll() , SendBackOpinion = os.Reason , SendBackAuditTime = os.CreationTime });
|
|
|
return query;
|
|
|
}
|