|
@@ -11,6 +11,7 @@ using Hotline.Share.Dtos.JudicialManagement;
|
|
using Hotline.Share.Enums.Order;
|
|
using Hotline.Share.Enums.Order;
|
|
using MapsterMapper;
|
|
using MapsterMapper;
|
|
using Microsoft.AspNetCore.Mvc;
|
|
using Microsoft.AspNetCore.Mvc;
|
|
|
|
+using SqlSugar;
|
|
using System.Diagnostics.Eventing.Reader;
|
|
using System.Diagnostics.Eventing.Reader;
|
|
using XF.Domain.Authentications;
|
|
using XF.Domain.Authentications;
|
|
using XF.Domain.Exceptions;
|
|
using XF.Domain.Exceptions;
|
|
@@ -176,6 +177,11 @@ namespace Hotline.Api.Controllers
|
|
else
|
|
else
|
|
order.EventTypeName = null;
|
|
order.EventTypeName = null;
|
|
|
|
|
|
|
|
+ if (!string.IsNullOrEmpty(dto.EventTypeSpliceName))
|
|
|
|
+ order.EventTypeSpliceName = dto.EventTypeSpliceName;
|
|
|
|
+ else
|
|
|
|
+ order.EventTypeSpliceName = null;
|
|
|
|
+
|
|
if (!string.IsNullOrEmpty(dto.EventTypeId))
|
|
if (!string.IsNullOrEmpty(dto.EventTypeId))
|
|
{
|
|
{
|
|
order.EventTypeOneLevelId = dto.EventTypeId.Substring(0, 2);
|
|
order.EventTypeOneLevelId = dto.EventTypeId.Substring(0, 2);
|
|
@@ -184,7 +190,7 @@ namespace Hotline.Api.Controllers
|
|
else
|
|
else
|
|
{
|
|
{
|
|
order.EventTypeOneLevelId = null;
|
|
order.EventTypeOneLevelId = null;
|
|
- order.EventTypeOneLevelId = null;
|
|
|
|
|
|
+ order.EventTypeId = null;
|
|
}
|
|
}
|
|
await _enforcementOrdersRepository.UpdateAsync(order, HttpContext.RequestAborted);
|
|
await _enforcementOrdersRepository.UpdateAsync(order, HttpContext.RequestAborted);
|
|
}
|
|
}
|
|
@@ -200,21 +206,37 @@ namespace Hotline.Api.Controllers
|
|
return await _judicialComplaintsEventTypeRepository.Queryable().ToTreeAsync(it => it.Children, it => it.ParentId, null, it => it.Id);
|
|
return await _judicialComplaintsEventTypeRepository.Queryable().ToTreeAsync(it => it.Children, it => it.ParentId, null, it => it.Id);
|
|
}
|
|
}
|
|
|
|
|
|
- ///// <summary>
|
|
|
|
- /////
|
|
|
|
- ///// </summary>
|
|
|
|
- ///// <param name="StartDate"></param>
|
|
|
|
- ///// <param name="EndDate"></param>
|
|
|
|
- ///// <returns></returns>
|
|
|
|
- //[HttpGet("departmental_processing_statistics")]
|
|
|
|
- //public async Task<object> GetDepartmentalProcessingStatisticsAsync(DateTime StartDate, DateTime EndDate)
|
|
|
|
- //{
|
|
|
|
-
|
|
|
|
- // EndDate = EndDate.AddDays(1).AddSeconds(-1);
|
|
|
|
- // await _enforcementOrdersRepository.Queryable()
|
|
|
|
- // .LeftJoin<Order>
|
|
|
|
-
|
|
|
|
|
|
+ /// <summary>
|
|
|
|
+ /// 执法部门办件统计
|
|
|
|
+ /// </summary>
|
|
|
|
+ /// <param name="StartDate"></param>
|
|
|
|
+ /// <param name="EndDate"></param>
|
|
|
|
+ /// <returns></returns>
|
|
|
|
+ [HttpGet("enforcement_departmental_processing_statistics")]
|
|
|
|
+ public async Task<object> GetDepartmentalProcessingStatisticsAsync(DateTime StartDate, DateTime EndDate)
|
|
|
|
+ {
|
|
|
|
|
|
- //}
|
|
|
|
|
|
+ EndDate = EndDate.AddDays(1).AddSeconds(-1);
|
|
|
|
+ var data = await _enforcementOrdersRepository.Queryable()
|
|
|
|
+ .Includes(x => x.Order)
|
|
|
|
+ .Where(d => d.Order.Id != null)
|
|
|
|
+ .Where(d => d.Order.FiledTime >= StartDate && d.Order.FiledTime <= EndDate)
|
|
|
|
+ .GroupBy(d => new
|
|
|
|
+ {
|
|
|
|
+ OrgCode = d.Order.OrgLevelOneCode,
|
|
|
|
+ OrgName = d.Order.OrgLevelOneName
|
|
|
|
+ })
|
|
|
|
+ .Select(d => new
|
|
|
|
+ {
|
|
|
|
+ OrgName = d.Order.OrgLevelOneName,
|
|
|
|
+ CountNum = SqlFunc.AggregateCount(d.Order.OrgLevelOneCode),
|
|
|
|
+ TheClueIsTrue = SqlFunc.AggregateSum(SqlFunc.IIF(d.IsTheClueTrue.HasValue && d.IsTheClueTrue.Value==true, 1, 0)),
|
|
|
|
+ TheClueIsNotTrue = SqlFunc.AggregateSum(SqlFunc.IIF(d.IsTheClueTrue.HasValue && d.IsTheClueTrue.Value == false, 1, 0)),
|
|
|
|
+ EnforcementOrder = SqlFunc.AggregateSum(SqlFunc.IIF(d.IsEnforcementOrder, 1, 0))
|
|
|
|
+ })
|
|
|
|
+ .ToListAsync();
|
|
|
|
+
|
|
|
|
+ return data;
|
|
|
|
+ }
|
|
}
|
|
}
|
|
}
|
|
}
|