|
@@ -544,7 +544,7 @@ namespace Hotline.Api.Controllers.Bi
|
|
var query = _orderRepository.Queryable(false, false, false)
|
|
var query = _orderRepository.Queryable(false, false, false)
|
|
.WhereIF(dto.StartTime.HasValue, x => x.CreationTime >= dto.StartTime)
|
|
.WhereIF(dto.StartTime.HasValue, x => x.CreationTime >= dto.StartTime)
|
|
.WhereIF(dto.EndTime.HasValue, x => x.CreationTime <= dto.EndTime)
|
|
.WhereIF(dto.EndTime.HasValue, x => x.CreationTime <= dto.EndTime)
|
|
- .WhereIF(IsCenter == false, x => x.ActualHandleOrgCode.StartsWith(_sessionContext.OrgId))
|
|
|
|
|
|
+ .WhereIF(IsCenter == false, x => x.ActualHandleOrgCode.StartsWith(_sessionContext.RequiredOrgId))
|
|
.Select(x => new
|
|
.Select(x => new
|
|
{
|
|
{
|
|
AcceptType = x.AcceptType,
|
|
AcceptType = x.AcceptType,
|
|
@@ -859,11 +859,11 @@ namespace Hotline.Api.Controllers.Bi
|
|
.WhereIF(IsCenter == false, (x, it) => it.VisitOrgCode.StartsWith(_sessionContext.OrgId))
|
|
.WhereIF(IsCenter == false, (x, it) => it.VisitOrgCode.StartsWith(_sessionContext.OrgId))
|
|
.GroupBy((x, it) => new
|
|
.GroupBy((x, it) => new
|
|
{
|
|
{
|
|
- VisitOrgCode = it.VisitOrgCode.Substring(SqlFunc.MappingColumn<int>("0"), SqlFunc.MappingColumn<int>("9"))
|
|
|
|
|
|
+ VisitOrgCode = it.VisitOrgCode
|
|
})
|
|
})
|
|
.Select((x, it) => new VisitAndOrgSatisfactionStatisticsDto()
|
|
.Select((x, it) => new VisitAndOrgSatisfactionStatisticsDto()
|
|
{
|
|
{
|
|
- OrgCode = it.VisitOrgCode.Substring(SqlFunc.MappingColumn<int>("0"), SqlFunc.MappingColumn<int>("9")),
|
|
|
|
|
|
+ OrgCode = it.VisitOrgCode,
|
|
TotalSumCount = SqlFunc.AggregateCount(it.VisitOrgCode.Substring(SqlFunc.MappingColumn<int>("0"), SqlFunc.MappingColumn<int>("9"))),
|
|
TotalSumCount = SqlFunc.AggregateCount(it.VisitOrgCode.Substring(SqlFunc.MappingColumn<int>("0"), SqlFunc.MappingColumn<int>("9"))),
|
|
VerySatisfiedCount = SqlFunc.IIF(TypeId == 1, SqlFunc.AggregateSum(SqlFunc.IIF(SqlFunc.JsonField(it.OrgProcessingResults, "Key") == "5", 1, 0)), SqlFunc.AggregateSum(SqlFunc.IIF(SqlFunc.JsonField(it.OrgHandledAttitude, "Key") == "5", 1, 0))),//非常满意数
|
|
VerySatisfiedCount = SqlFunc.IIF(TypeId == 1, SqlFunc.AggregateSum(SqlFunc.IIF(SqlFunc.JsonField(it.OrgProcessingResults, "Key") == "5", 1, 0)), SqlFunc.AggregateSum(SqlFunc.IIF(SqlFunc.JsonField(it.OrgHandledAttitude, "Key") == "5", 1, 0))),//非常满意数
|
|
SatisfiedCount = SqlFunc.IIF(TypeId == 1, SqlFunc.AggregateSum(SqlFunc.IIF(SqlFunc.JsonField(it.OrgProcessingResults, "Key") == "4", 1, 0)), SqlFunc.AggregateSum(SqlFunc.IIF(SqlFunc.JsonField(it.OrgHandledAttitude, "Key") == "4", 1, 0))), //满意数
|
|
SatisfiedCount = SqlFunc.IIF(TypeId == 1, SqlFunc.AggregateSum(SqlFunc.IIF(SqlFunc.JsonField(it.OrgProcessingResults, "Key") == "4", 1, 0)), SqlFunc.AggregateSum(SqlFunc.IIF(SqlFunc.JsonField(it.OrgHandledAttitude, "Key") == "4", 1, 0))), //满意数
|
|
@@ -1269,9 +1269,12 @@ namespace Hotline.Api.Controllers.Bi
|
|
{
|
|
{
|
|
dto.EndDate = dto.EndDate.AddDays(1).AddSeconds(-1);
|
|
dto.EndDate = dto.EndDate.AddDays(1).AddSeconds(-1);
|
|
var (total, items) = await _orderRepository.Queryable()
|
|
var (total, items) = await _orderRepository.Queryable()
|
|
- .Where(p => p.CreationTime >= dto.StartDate && p.CreationTime <= dto.EndDate && (int)p.Status >= 300)
|
|
|
|
- .WhereIF(!string.IsNullOrEmpty(dto.OrgLevelOneCode), p => p.OrgLevelOneCode == dto.OrgLevelOneCode)
|
|
|
|
|
|
+ .Where(p => p.CreationTime >= dto.StartDate && p.CreationTime <= dto.EndDate && p.Status >= EOrderStatus.Filed)
|
|
|
|
+ .WhereIF(!string.IsNullOrEmpty(dto.OrgLevelOneCode) && dto.OrgLevelOneCode == "001", p => p.OrgLevelOneCode == dto.OrgLevelOneCode)
|
|
|
|
+ .WhereIF(!string.IsNullOrEmpty(dto.OrgLevelOneCode) && dto.OrgLevelOneCode != "001", p => p.ActualHandleOrgCode.StartsWith(dto.OrgLevelOneCode))
|
|
.WhereIF(!string.IsNullOrEmpty(dto.AcceptTypeCode), p => p.AcceptTypeCode == dto.AcceptTypeCode)
|
|
.WhereIF(!string.IsNullOrEmpty(dto.AcceptTypeCode), p => p.AcceptTypeCode == dto.AcceptTypeCode)
|
|
|
|
+ .WhereIF(dto.TypeCode == 1, p => p.OrgLevelOneCode == "001")
|
|
|
|
+ .WhereIF(dto.TypeCode == 2, p => p.OrgLevelOneCode != "001")
|
|
.OrderByDescending(d => d.CreationTime)
|
|
.OrderByDescending(d => d.CreationTime)
|
|
.ToPagedListAsync(dto, HttpContext.RequestAborted);
|
|
.ToPagedListAsync(dto, HttpContext.RequestAborted);
|
|
|
|
|