|
@@ -63,7 +63,7 @@ namespace Hotline.Api.Controllers.Bigscreen
|
|
|
.Select(d => new OrderModuleDto
|
|
|
{
|
|
|
OrderCountNum = SqlFunc.AggregateSum(SqlFunc.IIF(d.Id != null, 1, 0)),
|
|
|
- EnforcementOrderNum = SqlFunc.AggregateSum(SqlFunc.IIF(d.IsEnforcementOrder.HasValue&& d.IsEnforcementOrder.Value, 1, 0)),
|
|
|
+ EnforcementOrderNum = SqlFunc.AggregateSum(SqlFunc.IIF(d.IsEnforcementOrder.HasValue && d.IsEnforcementOrder.Value, 1, 0)),
|
|
|
TheClueIsTrueNum = SqlFunc.AggregateSum(SqlFunc.IIF(d.IsTheClueTrue.HasValue && d.IsTheClueTrue.Value == true, 1, 0)),
|
|
|
TheClueIsNotTrueNum = SqlFunc.AggregateSum(SqlFunc.IIF(d.IsTheClueTrue.HasValue && d.IsTheClueTrue.Value == false, 1, 0)),
|
|
|
PassTheBuckOrderNum = SqlFunc.AggregateSum(SqlFunc.IIF(d.IsPassTheBuckOrder, 1, 0))
|
|
@@ -89,43 +89,6 @@ namespace Hotline.Api.Controllers.Bigscreen
|
|
|
return dto;
|
|
|
}
|
|
|
|
|
|
- /// <summary>
|
|
|
- /// 左中受理类型
|
|
|
- /// </summary>
|
|
|
- /// <param name="StartTime"></param>
|
|
|
- /// <param name="EndTime"></param>
|
|
|
- /// <returns></returns>
|
|
|
- [AllowAnonymous]
|
|
|
- [HttpGet("order-accept-type-statistics")]
|
|
|
- public async Task<List<OrderAcceptTypeStatisticsDto>> GetOrderAcceptTypeStatisticsAsync(DateTime StartTime, DateTime EndTime)
|
|
|
- {
|
|
|
- EndTime = EndTime.AddDays(1).AddSeconds(-1);
|
|
|
-
|
|
|
- var list = await _enforcementOrdersRepository.Queryable()
|
|
|
- .LeftJoin<Order>((x, o) => x.Id == o.Id)
|
|
|
- .Where((x, o) => o.Id != null && o.Status > EOrderStatus.Handling && !string.IsNullOrEmpty(o.AcceptType))
|
|
|
- .Where((x, o) => o.StartTime >= StartTime && o.StartTime <= EndTime)
|
|
|
- .Select((x, o) => new
|
|
|
- {
|
|
|
- x.Id,
|
|
|
- o.AcceptType,
|
|
|
- o.Status,
|
|
|
- o.ExpiredStatus
|
|
|
- })
|
|
|
- .MergeTable()
|
|
|
- .GroupBy(x => x.AcceptType)
|
|
|
- .Select(x => new OrderAcceptTypeStatisticsDto
|
|
|
- {
|
|
|
- AcceptType = x.AcceptType,
|
|
|
- SumCount = SqlFunc.AggregateCount(x.Id),
|
|
|
- HandlingCount = SqlFunc.AggregateSum(SqlFunc.IIF(x.Status >= EOrderStatus.Handling && x.Status < EOrderStatus.Filed, 1, 0)),
|
|
|
- FiledCount = SqlFunc.AggregateSum(SqlFunc.IIF(x.Status >= EOrderStatus.Filed, 1, 0)),
|
|
|
- OverTimeCount = SqlFunc.AggregateSum(SqlFunc.IIF(x.ExpiredStatus == EExpiredStatus.Expired, 1, 0))
|
|
|
- }).ToListAsync();
|
|
|
-
|
|
|
- return list;
|
|
|
- }
|
|
|
-
|
|
|
/// <summary>
|
|
|
/// 左下高频事项统计
|
|
|
/// </summary>
|
|
@@ -141,15 +104,14 @@ namespace Hotline.Api.Controllers.Bigscreen
|
|
|
if (AreaCode.Length == 6 && AreaCode.IndexOf("00") == 4)
|
|
|
AreaCode = AreaCode.Remove(4);
|
|
|
|
|
|
- var list = await _enforcementOrdersRepository.Queryable()
|
|
|
- .LeftJoin<Order>((x, o) => x.Id == o.Id)
|
|
|
- .LeftJoin<JudicialComplaintsEventType>((x, o, j) => x.EventTypeOneLevelId == j.Id)
|
|
|
- .Where((x, o, j) => o.Id != null && x.EventTypeOneLevelId != null && j.Id != null)
|
|
|
- .Where((x, o, j) => o.StartTime >= StartTime && o.StartTime <= EndTime && o.AreaCode.StartsWith(AreaCode))
|
|
|
- .Select((x, o, j) => new
|
|
|
+ var list = await _judicialManagementOrdersRepository.Queryable()
|
|
|
+ .LeftJoin<JudicialComplaintsEventType>((o, j) => o.EventTypeOneLevelId == j.Id)
|
|
|
+ .Where((o, j) => o.EventTypeOneLevelId != null && j.Id != null)
|
|
|
+ .Where((o, j) => o.CreationTime >= StartTime && o.CreationTime <= EndTime && o.AreaCode.StartsWith(AreaCode))
|
|
|
+ .Select((o, j) => new
|
|
|
{
|
|
|
- x.Id,
|
|
|
- EventTypeId = x.EventTypeOneLevelId,
|
|
|
+ o.Id,
|
|
|
+ EventTypeId = o.EventTypeOneLevelId,
|
|
|
j.EventTypeName
|
|
|
})
|
|
|
.MergeTable()
|
|
@@ -161,7 +123,7 @@ namespace Hotline.Api.Controllers.Bigscreen
|
|
|
SumCount = SqlFunc.AggregateCount(p.Id)
|
|
|
})
|
|
|
.OrderByDescending(p => p.SumCount)
|
|
|
- .Take(5)
|
|
|
+ .Take(10)
|
|
|
.ToListAsync();
|
|
|
|
|
|
return list;
|
|
@@ -210,22 +172,20 @@ namespace Hotline.Api.Controllers.Bigscreen
|
|
|
AreaName = item.Name
|
|
|
};
|
|
|
|
|
|
- var data = await _enforcementOrdersRepository.Queryable()
|
|
|
- .LeftJoin<Order>((x, o) => x.Id == o.Id)
|
|
|
- .Where((x, o) => o.Id != null)
|
|
|
- .Where((x, o) => o.StartTime >= StartTime && o.StartTime <= EndTime && o.AreaCode.StartsWith(item.Id))
|
|
|
- .Select((x, o) => new
|
|
|
+ var data = await _judicialManagementOrdersRepository.Queryable()
|
|
|
+ .Where(o => o.CreationTime >= StartTime && o.CreationTime <= EndTime && o.AreaCode.StartsWith(item.Id))
|
|
|
+ .Select(o => new
|
|
|
{
|
|
|
- x.Id,
|
|
|
- x.IsEnforcementOrder,
|
|
|
- x.IsTheClueTrue,
|
|
|
- x.IsPassTheBuckOrder
|
|
|
+ o.Id,
|
|
|
+ o.IsEnforcementOrder,
|
|
|
+ o.IsTheClueTrue,
|
|
|
+ o.IsPassTheBuckOrder
|
|
|
})
|
|
|
.MergeTable()
|
|
|
.Select(d => new OrderModuleDto
|
|
|
{
|
|
|
OrderCountNum = SqlFunc.AggregateSum(SqlFunc.IIF(d.Id != null, 1, 0)),
|
|
|
- EnforcementOrderNum = SqlFunc.AggregateSum(SqlFunc.IIF(d.IsEnforcementOrder, 1, 0)),
|
|
|
+ EnforcementOrderNum = SqlFunc.AggregateSum(SqlFunc.IIF(d.IsEnforcementOrder.HasValue && d.IsEnforcementOrder.Value == true, 1, 0)),
|
|
|
TheClueIsTrueNum = SqlFunc.AggregateSum(SqlFunc.IIF(d.IsTheClueTrue.HasValue && d.IsTheClueTrue.Value == true, 1, 0)),
|
|
|
TheClueIsNotTrueNum = SqlFunc.AggregateSum(SqlFunc.IIF(d.IsTheClueTrue.HasValue && d.IsTheClueTrue.Value == false, 1, 0)),
|
|
|
PassTheBuckOrderNum = SqlFunc.AggregateSum(SqlFunc.IIF(d.IsPassTheBuckOrder, 1, 0))
|
|
@@ -255,15 +215,12 @@ namespace Hotline.Api.Controllers.Bigscreen
|
|
|
[HttpGet("order-overview")]
|
|
|
public async Task<List<OrderOverviewDto>> GetOrderOverviewAsync()
|
|
|
{
|
|
|
- var list = await _enforcementOrdersRepository.Queryable()
|
|
|
- .LeftJoin<Order>((x, o) => x.Id == o.Id)
|
|
|
- .LeftJoin<SystemArea>((x, o, p) => o.AreaCode == p.Id)
|
|
|
- .Where((x, o, p) => o.Id != null)
|
|
|
- .Where((x, o) => o.Status > EOrderStatus.WaitForAccept && o.StartTime.Value.Date == DateTime.Now.Date)
|
|
|
- .Select((x, o, p) => new OrderOverviewDto
|
|
|
+ var list = await _judicialManagementOrdersRepository.Queryable()
|
|
|
+ .LeftJoin<SystemArea>((o, s) => o.AreaCode == s.Id)
|
|
|
+ .Where((o, s) => o.CreationTime.Date == DateTime.Now.Date)
|
|
|
+ .Select((o, s) => new OrderOverviewDto
|
|
|
{
|
|
|
Id = o.Id,
|
|
|
- WorkflowId = o.WorkflowId,
|
|
|
SourceChannel = o.SourceChannel,
|
|
|
SourceChannelCode = o.SourceChannelCode,
|
|
|
Title = o.Title,
|
|
@@ -271,17 +228,12 @@ namespace Hotline.Api.Controllers.Bigscreen
|
|
|
AcceptTypeCode = o.AcceptTypeCode,
|
|
|
HotspotId = o.HotspotId,
|
|
|
HotspotName = o.HotspotName,
|
|
|
- ActualHandleOrgName = o.ActualHandleOrgName,
|
|
|
- ActualHandleOrgCode = o.ActualHandleOrgCode,
|
|
|
- Status = o.Status,
|
|
|
- ActualHandleTime = o.ActualHandleTime,
|
|
|
- ExpiredTime = o.ExpiredTime,
|
|
|
- NearlyExpiredTime = o.NearlyExpiredTime,
|
|
|
- StartTime = o.StartTime,
|
|
|
- AreaName = p.AreaName
|
|
|
+ EnforcementOrdersHandler = o.EnforcementOrdersHandler,
|
|
|
+ AreaName = s.AreaName,
|
|
|
+ CreationTime = o.CreationTime
|
|
|
})
|
|
|
.MergeTable()
|
|
|
- .OrderByDescending(d => d.StartTime)
|
|
|
+ .OrderByDescending(d => d.CreationTime)
|
|
|
.Take(50)
|
|
|
.ToListAsync();
|
|
|
|
|
@@ -300,7 +252,7 @@ namespace Hotline.Api.Controllers.Bigscreen
|
|
|
{
|
|
|
EndTime = EndTime.AddDays(1).AddSeconds(-1);
|
|
|
|
|
|
- var list = await _enforcementOrdersRepository.Queryable()
|
|
|
+ var list = await _judicialManagementOrdersRepository.Queryable()
|
|
|
.LeftJoin<OrderVisit>((x, o) => x.Id == o.OrderId)
|
|
|
.LeftJoin<OrderVisitDetail>((x, o, p) => o.Id == p.VisitId)
|
|
|
.Where((x, o, p) => o.VisitTime >= StartTime && o.VisitTime <= EndTime && p.VisitTarget == EVisitTarget.Org &&
|
|
@@ -348,14 +300,12 @@ namespace Hotline.Api.Controllers.Bigscreen
|
|
|
EndDate = DateTime.Now;
|
|
|
}
|
|
|
|
|
|
- var queryData = await _enforcementOrdersRepository.Queryable()
|
|
|
- .LeftJoin<Order>((x, o) => x.Id == o.Id)
|
|
|
- .Where((x, o) => o.Id != null)
|
|
|
- .Where((x, o) => o.Status > EOrderStatus.WaitForAccept && o.StartTime >= StartDate && o.StartTime <= EndDate)
|
|
|
- .Select((x, o) => new
|
|
|
+ var queryData = await _judicialManagementOrdersRepository.Queryable()
|
|
|
+ .Where(o => o.CreationTime >= StartDate && o.CreationTime <= EndDate)
|
|
|
+ .Select(o => new
|
|
|
{
|
|
|
o.Id,
|
|
|
- Month = o.StartTime.Value.Month
|
|
|
+ Month = o.CreationTime.Month
|
|
|
})
|
|
|
.MergeTable()
|
|
|
.GroupBy(x => x.Month)
|
|
@@ -392,20 +342,16 @@ namespace Hotline.Api.Controllers.Bigscreen
|
|
|
{
|
|
|
EndTime = EndTime.AddDays(1).AddSeconds(-1);
|
|
|
|
|
|
- var SumCount = await _enforcementOrdersRepository.Queryable()
|
|
|
- .LeftJoin<Order>((x, o) => x.Id == o.Id)
|
|
|
- .Where((x, o) => o.Id != null)
|
|
|
- .Where((x, o) => o.StartTime >= StartTime && o.StartTime <= EndTime && o.Status > EOrderStatus.WaitForAccept)
|
|
|
+ var SumCount = await _judicialManagementOrdersRepository.Queryable()
|
|
|
+ .Where(o => o.CreationTime >= StartTime && o.CreationTime <= EndTime)
|
|
|
.CountAsync();
|
|
|
|
|
|
if (IsSource)
|
|
|
{
|
|
|
- var list = await _enforcementOrdersRepository.Queryable()
|
|
|
- .LeftJoin<Order>((x, o) => x.Id == o.Id)
|
|
|
- .Where((x, o) => o.Id != null)
|
|
|
- .Where((x, o) => o.StartTime >= StartTime && o.StartTime <= EndTime && o.Status > EOrderStatus.WaitForAccept)
|
|
|
- .GroupBy((x, o) => new { o.SourceChannelCode, o.SourceChannel })
|
|
|
- .Select((x, o) => new OrderProportionStatisticsDto()
|
|
|
+ var list = await _judicialManagementOrdersRepository.Queryable()
|
|
|
+ .Where(o => o.CreationTime >= StartTime && o.CreationTime <= EndTime)
|
|
|
+ .GroupBy(o => new { o.SourceChannelCode, o.SourceChannel })
|
|
|
+ .Select(o => new OrderProportionStatisticsDto()
|
|
|
{
|
|
|
Name = o.SourceChannel,
|
|
|
SumCount = SumCount,
|
|
@@ -416,12 +362,10 @@ namespace Hotline.Api.Controllers.Bigscreen
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
- var list = await _enforcementOrdersRepository.Queryable()
|
|
|
- .LeftJoin<Order>((x, o) => x.Id == o.Id)
|
|
|
- .Where((x, o) => o.Id != null)
|
|
|
- .Where((x, o) => o.StartTime >= StartTime && o.StartTime <= EndTime && o.Status > EOrderStatus.WaitForAccept)
|
|
|
- .GroupBy((x, o) => new { o.AcceptTypeCode, o.AcceptType })
|
|
|
- .Select((x, o) => new OrderProportionStatisticsDto()
|
|
|
+ var list = await _judicialManagementOrdersRepository.Queryable()
|
|
|
+ .Where(o => o.CreationTime >= StartTime && o.CreationTime <= EndTime)
|
|
|
+ .GroupBy(o => new { o.AcceptTypeCode, o.AcceptType })
|
|
|
+ .Select(o => new OrderProportionStatisticsDto()
|
|
|
{
|
|
|
Name = o.AcceptType,
|
|
|
SumCount = SumCount,
|
|
@@ -431,6 +375,5 @@ namespace Hotline.Api.Controllers.Bigscreen
|
|
|
return list;
|
|
|
}
|
|
|
}
|
|
|
-
|
|
|
}
|
|
|
}
|