报表速度提升

This commit is contained in:
dell
2023-04-27 15:02:45 +08:00
parent 13b0556370
commit 0da8710708
9 changed files with 455 additions and 20 deletions

View File

@ -3,6 +3,11 @@ using System;
using System.Threading.Tasks;
using HT.Cloud.Service.ChartsManage;
using HT.Cloud.Service.ReportManage;
using Newtonsoft.Json;
using System.Diagnostics.Metrics;
using System.Text;
using static System.Net.Mime.MediaTypeNames;
using Microsoft.AspNetCore.Mvc.Rendering;
namespace HT.Cloud.Web.Areas.ReportManage.Controllers
{
@ -22,6 +27,47 @@ namespace HT.Cloud.Web.Areas.ReportManage.Controllers
var data = await _historyReportService.GetReportFileName(StartTime, EndTime, Interval);
return Content(data);
}
[HttpPost]
public async Task<ActionResult> GetReportNew(Reportparam reportparam)
{
var t1 = DateTime.Now;
//var ob = JsonConvert.SerializeObject(reportparam);
var t2 = DateTime.Now;
Console.WriteLine($"第1次序列化,花费时间:{(t2 - t1).TotalMilliseconds}");
//var StartTime = reportparam.StartTime.ToString("yyyy-MM-dd HH:mm:ss");
//var EndTime = reportparam.EndTime.ToString("yyyy-MM-dd HH:mm:ss");
var StartTime = Gettime(reportparam.StartTime.ToString());
var EndTime = Gettime(reportparam.EndTime.ToString());
var Interval = int.Parse(reportparam.Interval);
var t5 = DateTime.Now;
var data = await _historyReportService.GetReportNew(StartTime, EndTime, Interval);
var t6 = DateTime.Now;
Console.WriteLine($"调用service,花费时间:{(t6 - t5).TotalMilliseconds}");
var t3 = DateTime.Now;
var con = JsonConvert.SerializeObject(data);
var t4 = DateTime.Now;
Console.WriteLine($"第2次序列化,花费时间:{(t4 - t3).TotalMilliseconds}");
return Content(con, "text/html; charset=utf-8");
//return Content(con);
}
[HttpGet]
public async Task<ActionResult> GetReportFirstHead()
{
//var StartTime = reportparam.StartTime.ToString("yyyy-MM-dd HH:mm:ss");
//var EndTime = reportparam.EndTime.ToString("yyyy-MM-dd HH:mm:ss");
var data = await _historyReportService.GetReportFirstHead();
return Content(data);
}
[HttpGet]
public async Task<ActionResult> GetReportSecondHead()
{
//var StartTime = reportparam.StartTime.ToString("yyyy-MM-dd HH:mm:ss");
//var EndTime = reportparam.EndTime.ToString("yyyy-MM-dd HH:mm:ss");
var data = await _historyReportService.GetReportSecondHead();
return Content(data);
}
public string Gettime(string longtime)
{