|
@@ -689,7 +689,7 @@ jxrWXHbT1FB6DqkdOnBbQqS1Azqz5HxLlSyEK3F60e3SgB5iZsDZ
|
|
|
operationLog.ReceiveServiceInterface = data.TaskType;
|
|
|
operationLog.Path = data.Path;
|
|
|
operationLog.RequestData = data.Request;
|
|
|
- resultId = await _initPushDataService.InitDsSendTaskSubmitCaseInfo(data.ProvinceNo, data.Request, data.RequestData, data.GenerationTime, HttpContext.RequestAborted);
|
|
|
+ resultId = await _initPushDataService.InitDsSendTaskSubmitCaseInfo(data.OrderId, data.ProvinceNo, data.Request, data.RequestData, data.GenerationTime, HttpContext.RequestAborted);
|
|
|
}
|
|
|
}
|
|
|
|
|
@@ -799,7 +799,8 @@ jxrWXHbT1FB6DqkdOnBbQqS1Azqz5HxLlSyEK3F60e3SgB5iZsDZ
|
|
|
CreationTime = p.CreationTime,
|
|
|
IntervalTime = SqlFunc.DateDiff(DateType.Second, p.GenerationTime.Value, p.LastTime.Value),
|
|
|
CaseSource = p.CaseSource,
|
|
|
- p.RequestData
|
|
|
+ p.RequestData,
|
|
|
+ p.OrderId
|
|
|
})
|
|
|
.MergeTable()
|
|
|
.Where(d => d.index == 1)
|
|
@@ -809,32 +810,6 @@ jxrWXHbT1FB6DqkdOnBbQqS1Azqz5HxLlSyEK3F60e3SgB5iZsDZ
|
|
|
.ToPageListAsync(dto.PageIndex, dto.PageSize, total, HttpContext.RequestAborted);
|
|
|
return new PagedDto<object>(total, items);
|
|
|
|
|
|
-
|
|
|
- //var items = await _dsOrderSendRepository.Queryable()
|
|
|
- // .Where(p => p.CreationTime >= dto.StartTime && p.CreationTime <= dto.EndTime)
|
|
|
- // .Where(p => p.FirstSendProvinceTime.HasValue && p.StartTime.HasValue)
|
|
|
- // .WhereIF(!string.IsNullOrEmpty(dto.CaseSerial), p => p.ProvinceNo == dto.CaseSerial)
|
|
|
- // .Select(p => new
|
|
|
- // {
|
|
|
- // p.OrderId,
|
|
|
- // p.OrderNo,
|
|
|
- // p.ProvinceNo,
|
|
|
- // p.CaseDate,
|
|
|
- // p.StartTime,
|
|
|
- // p.CallId,
|
|
|
- // p.FirstSendProvinceTime,
|
|
|
- // p.LastSendProvinceTime,
|
|
|
- // p.CaseSource,
|
|
|
- // p.CaseSourceCode,
|
|
|
- // p.ExpiredTime,
|
|
|
- // p.CreationTime
|
|
|
- // })
|
|
|
- // .MergeTable()
|
|
|
- // .WhereIF(dto.IsSuccess.HasValue && dto.IsSuccess == true, p => SqlFunc.DateDiff(DateType.Second, p.StartTime.Value, p.FirstSendProvinceTime.Value) <= 180)//及时上传
|
|
|
- // .WhereIF(dto.IsSuccess.HasValue && dto.IsSuccess == false, p => SqlFunc.DateDiff(DateType.Second, p.StartTime.Value, p.FirstSendProvinceTime.Value) > 180)//不及时上传
|
|
|
- // .OrderByDescending(p => p.CreationTime)
|
|
|
- // .ToPageListAsync(dto.PageIndex, dto.PageSize, total, HttpContext.RequestAborted);
|
|
|
- //return new PagedDto<object>(total, items);
|
|
|
}
|
|
|
|
|
|
/// <summary>
|
|
@@ -879,45 +854,6 @@ jxrWXHbT1FB6DqkdOnBbQqS1Azqz5HxLlSyEK3F60e3SgB5iZsDZ
|
|
|
.ToPageListAsync(dto.PageIndex, dto.PageSize, total, HttpContext.RequestAborted);
|
|
|
return new PagedDto<object>(total, items);
|
|
|
|
|
|
- //var items = await _dsTelCallRepository.Queryable()
|
|
|
- // .Where(p => p.CreationTime >= dto.StartTime && p.CreationTime <= dto.EndTime)
|
|
|
- // .WhereIF(!string.IsNullOrEmpty(dto.CaseSerial), p => p.ProvinceNo == dto.CaseSerial)
|
|
|
- // .Where(p => p.FirstSendProvinceTime != null)
|
|
|
- // .Where(p => p.OverTime != null)
|
|
|
- // .Select(p => new
|
|
|
- // {
|
|
|
- // p.CallId,
|
|
|
- // p.CPN,
|
|
|
- // p.CDPN,
|
|
|
- // p.CallDirection,
|
|
|
- // p.TelNo,
|
|
|
- // p.UserName,
|
|
|
- // p.BeginIvrTime,
|
|
|
- // p.EndIvrTime,
|
|
|
- // p.BeginQueueTime,
|
|
|
- // p.EndQueueTime,
|
|
|
- // p.BeginRingTime,
|
|
|
- // p.EndRingTimg,
|
|
|
- // p.AnsweredTime,
|
|
|
- // p.OverTime,
|
|
|
- // p.Duration,
|
|
|
- // p.RingTimes,
|
|
|
- // p.QueueTims,
|
|
|
- // p.OnState,
|
|
|
- // p.RecordingFileUrl,
|
|
|
- // p.ProvinceNo,
|
|
|
- // p.FirstSendProvinceTime,
|
|
|
- // p.LastSendProvinceTime,
|
|
|
- // p.TaskId,
|
|
|
- // p.CreationTime
|
|
|
- // })
|
|
|
- // .MergeTable()
|
|
|
- // .WhereIF(dto.IsSuccess.HasValue && dto.IsSuccess == true, p => SqlFunc.DateDiff(DateType.Second, p.OverTime.Value, p.FirstSendProvinceTime.Value) <= 180)//及时
|
|
|
- // .WhereIF(dto.IsSuccess.HasValue && dto.IsSuccess == false, p => SqlFunc.DateDiff(DateType.Second, p.OverTime.Value, p.FirstSendProvinceTime.Value) > 180)//不及时
|
|
|
- // .OrderByDescending(p => p.CreationTime)
|
|
|
- // .ToPageListAsync(dto.PageIndex, dto.PageSize, total, HttpContext.RequestAborted);
|
|
|
- //return new PagedDto<object>(total, items);
|
|
|
-
|
|
|
}
|
|
|
|
|
|
/// <summary>
|
|
@@ -936,77 +872,40 @@ jxrWXHbT1FB6DqkdOnBbQqS1Azqz5HxLlSyEK3F60e3SgB5iZsDZ
|
|
|
|
|
|
RefAsync<int> total = 0;
|
|
|
|
|
|
- var queryableCall = _sendTaskSubmitCaseRecordRepository.Queryable()
|
|
|
- .Where(p => p.GenerationTime >= dto.StartTime && p.GenerationTime <= dto.EndTime)
|
|
|
- .Where(p => p.LastTime >= dto.StartTime && p.LastTime <= dto.EndTime && p.IsSuccess == ESendTaskState.PushSuccess)
|
|
|
- .Select(p => new
|
|
|
- {
|
|
|
- index = SqlFunc.RowNumber($"{p.CreationTime} desc ", $"{p.CallLogId}"),
|
|
|
- ProvinceNo = p.ProvinceNo,
|
|
|
- FirstTime = p.FirstTime,
|
|
|
- LastTime = p.LastTime,
|
|
|
- SendTimes = p.SendTimes,
|
|
|
- StartTime = p.GenerationTime,
|
|
|
- CreationTime = p.CreationTime,
|
|
|
- IntervalTime = SqlFunc.DateDiff(DateType.Second, p.GenerationTime.Value, p.LastTime.Value),
|
|
|
- p.CallId,
|
|
|
- p.RequestData,
|
|
|
- p.CallLogId
|
|
|
- })
|
|
|
- .MergeTable()
|
|
|
- .Where(d => d.index == 1)
|
|
|
- .MergeTable();
|
|
|
-
|
|
|
- var items = await _sendTaskSubmitCaseInfoRepository.Queryable()
|
|
|
- .Where(p => p.GenerationTime >= dto.StartTime && p.GenerationTime <= dto.EndTime)
|
|
|
- .Where(p => p.LastTime >= dto.StartTime && p.LastTime <= dto.EndTime && p.IsSuccess == ESendTaskState.PushSuccess)
|
|
|
- .Select(p => new
|
|
|
- {
|
|
|
- index = SqlFunc.RowNumber($"{p.CreationTime} desc ", $"{p.ProvinceNo}"),
|
|
|
- ProvinceNo = p.ProvinceNo,
|
|
|
- FirstTime = p.FirstTime,
|
|
|
- LastTime = p.LastTime,
|
|
|
- SendTimes = p.SendTimes,
|
|
|
- StartTime = p.GenerationTime,
|
|
|
- CreationTime = p.CreationTime,
|
|
|
- p.RequestData,
|
|
|
- p.ExpiredTime,
|
|
|
- p.CaseSource
|
|
|
- })
|
|
|
- .MergeTable()
|
|
|
- .Where(d => d.index == 1 && d.CaseSource == "RGDH")
|
|
|
- .MergeTable()
|
|
|
- .LeftJoin(queryableCall, (o, c) => o.ProvinceNo == c.ProvinceNo)
|
|
|
- .Select((o, c) => new
|
|
|
- {
|
|
|
- ProvinceNo = o.ProvinceNo,
|
|
|
- FirstTime = o.FirstTime,
|
|
|
- LastTime = o.LastTime,
|
|
|
- SendTimes = o.SendTimes,
|
|
|
- StartTime = o.StartTime,
|
|
|
- CreationTime = o.CreationTime,
|
|
|
- CallId = c.CallId,
|
|
|
- CallLogId = c.CallLogId,
|
|
|
- o.CaseSource,
|
|
|
- o.RequestData
|
|
|
- })
|
|
|
- .MergeTable()
|
|
|
- .Where(o => o.CallId == null || o.CallId == "")
|
|
|
- .OrderByDescending(o => o.CreationTime)
|
|
|
- .ToPageListAsync(dto.PageIndex, dto.PageSize, total, HttpContext.RequestAborted);
|
|
|
+ string strSql = @"SELECT ""SCO"".""ProvinceNo"",""FirstTime"",
|
|
|
+""LastTime"",""SendTimes"", ""StartTime"",""CreationTime"",""RequestData"",""ExpiredTime"", ""CaseSource"",""OrderId""
|
|
|
+FROM(
|
|
|
|
|
|
- return new PagedDto<object>(total, items);
|
|
|
+SELECT *
|
|
|
+FROM
|
|
|
+(
|
|
|
+SELECT ROW_NUMBER() OVER(PARTITION BY ""ProvinceNo"" ORDER BY ""CreationTime"" DESC) AS ""newIndex"",""ProvinceNo"",""FirstTime"",""OrderId"",
|
|
|
+""LastTime"",""SendTimes"",""GenerationTime""AS ""StartTime"",""CreationTime"",""RequestData"",""ExpiredTime"",""RequestData""->>'CaseSource' AS ""CaseSource""
|
|
|
|
|
|
- //var items = await _dsOrderSendRepository.Queryable()
|
|
|
- // .LeftJoin<DsTelCall>((p, o) => p.CallId == o.CallId)
|
|
|
- // .Where((p, o) => p.FirstSendProvinceTime >= dto.StartTime && p.FirstSendProvinceTime <= dto.EndTime && p.CaseSourceCode == "RGDH")
|
|
|
- // .Where((p, o) => p.FirstSendProvinceTime.HasValue)
|
|
|
- // .Where((p, o) => o.CallId == null || o.CallId == "")
|
|
|
- // .WhereIF(!string.IsNullOrEmpty(dto.CaseSerial), p => p.ProvinceNo == dto.CaseSerial)
|
|
|
- // .OrderByDescending((p, o) => p.CreationTime)
|
|
|
- // .ToPageListAsync(dto.PageIndex, dto.PageSize, total, HttpContext.RequestAborted);
|
|
|
+FROM ""ds_send_task_submit_case_info""
|
|
|
+ where ""GenerationTime"" >= '{0}' AND ""GenerationTime"" <= '{1}'
|
|
|
+ AND ""LastTime"" >= '{0}' AND ""LastTime"" <= '{1}' AND ""IsSuccess"" = 1
|
|
|
+
|
|
|
+) ""SCI"" WHERE ""newIndex""=1 AND ""CaseSource"" = 'RGDH'
|
|
|
+) ""SCO""
|
|
|
+ LEFT JOIN
|
|
|
|
|
|
- //return new PagedDto<object>(total, _mapper.Map<IReadOnlyList<DsOrderSend>>(items));
|
|
|
+(
|
|
|
+SELECT * FROM (
|
|
|
+SELECT ROW_NUMBER() OVER(PARTITION BY ""ProvinceNo"" ORDER BY ""CreationTime"" DESC) as ""newIndex"",""ProvinceNo"",""CallId"",""CallLogId""
|
|
|
+FROM
|
|
|
+ ""ds_send_task_submit_case_record""
|
|
|
+ WHERE
|
|
|
+ ""GenerationTime"" >= '{0}' AND ""GenerationTime"" <= '{1}'
|
|
|
+ AND ""LastTime"" >= '{0}' AND ""LastTime"" <= '{1}' AND ""IsSuccess"" = 1
|
|
|
+ ) ""SCR"" WHERE ""newIndex""=1
|
|
|
+)""SCRC""
|
|
|
+ON ""SCO"".""ProvinceNo""=""SCRC"".""ProvinceNo""
|
|
|
+WHERE ""SCRC"".""ProvinceNo"" IS NULL ";
|
|
|
+ strSql = string.Format(strSql, dto.StartTime, dto.EndTime);
|
|
|
+ return await _waitSendTaskRepository.GetDataBySql(strSql, dto.PageIndex, dto.PageSize, HttpContext.RequestAborted);
|
|
|
+
|
|
|
+
|
|
|
}
|
|
|
|
|
|
/// <summary>
|
|
@@ -1655,8 +1554,7 @@ WHERE ""GenerationTime"">='{2}' AND ""GenerationTime""<='{0}' AND ""IsSuccess""
|
|
|
) SCR WHERE ""newIndex""=1 ;
|
|
|
|
|
|
|
|
|
-select ""与电话工单匹配的话务数据量"",""电话工单量"",
|
|
|
-""时间范围按时办结量"",""结转按时已办结量"",""时间范围超期办结量"",""结转超期已办结量"",""时间范围超期未办量"",""结转超期未办量"",
|
|
|
+select
|
|
|
CASE WHEN ""呼入总量"">0 THEN CAST(CAST(((""呼入接通量""*1.0)/""呼入总量"") as decimal(10,5))*100 as decimal(10,3)) ELSE 0 END AS ""CalConnectionRate"" ,
|
|
|
|
|
|
CASE WHEN ""电话工单量"">0 THEN CAST(CAST(((""与电话工单匹配的话务数据量""*1.0)/""电话工单量"") as decimal(10,5))*100 as decimal(10,3)) ELSE 0 END AS ""MatchingRateOfCallData"" ,
|