添加变量名称导入
This commit is contained in:
@ -8,6 +8,9 @@ using System.Diagnostics.Metrics;
|
||||
using System.Text;
|
||||
using static System.Net.Mime.MediaTypeNames;
|
||||
using Microsoft.AspNetCore.Mvc.Rendering;
|
||||
using Microsoft.AspNetCore.Http;
|
||||
using Microsoft.CodeAnalysis;
|
||||
using HT.Cloud.Code;
|
||||
|
||||
namespace HT.Cloud.Web.Areas.ReportManage.Controllers
|
||||
{
|
||||
@ -16,6 +19,16 @@ namespace HT.Cloud.Web.Areas.ReportManage.Controllers
|
||||
{
|
||||
public HistoryReportService _historyReportService { get; set; }
|
||||
|
||||
[HttpGet]
|
||||
public async Task<ActionResult> GetDriverGroupList()
|
||||
{
|
||||
//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.GetDriverGroupList();
|
||||
return Content(data);
|
||||
}
|
||||
|
||||
[HttpPost]
|
||||
public async Task<ActionResult> GetReport(Reportparam reportparam)
|
||||
{
|
||||
@ -50,6 +63,38 @@ namespace HT.Cloud.Web.Areas.ReportManage.Controllers
|
||||
return Content(con, "text/html; charset=utf-8");
|
||||
//return Content(con);
|
||||
}
|
||||
[HttpPost]
|
||||
public async Task<ActionResult> GetReportNewInitPara(Reportparam reportparam)
|
||||
{
|
||||
////sql获取count
|
||||
//var StartTime = Gettime(reportparam.StartTime.ToString());
|
||||
//var EndTime = Gettime(reportparam.EndTime.ToString());
|
||||
//var Interval = int.Parse(reportparam.Interval);
|
||||
//var data = await _historyReportService.GetReportNewInitPara(StartTime, EndTime, Interval);
|
||||
//var con = JsonConvert.SerializeObject(data);
|
||||
//return Content(con);
|
||||
|
||||
//代码理论count
|
||||
var StartTime = long.Parse(reportparam.StartTime.ToString());
|
||||
var EndTime = long.Parse(reportparam.EndTime.ToString());
|
||||
var Interval = int.Parse(reportparam.Interval);
|
||||
var data = await _historyReportService.GetReportNewInitParaInCode(StartTime, EndTime, Interval);
|
||||
var con = JsonConvert.SerializeObject(data);
|
||||
return Content(con);
|
||||
}
|
||||
[IgnoreAntiforgeryToken]
|
||||
public async Task<ActionResult> GetReportNewPage(string page, string limit,string StartTime,string EndTime, string Interval, string GroupName)
|
||||
{
|
||||
//string page = Request.Query["page"].ToString();
|
||||
//string limit = Request.Query["limit"].ToString();
|
||||
//var page = Gettime(asyncparam.page.ToString());
|
||||
//var limit = Gettime(asyncparam.limit.ToString());
|
||||
var startTime = Gettime(StartTime);
|
||||
var endTime = Gettime(EndTime);
|
||||
var data = await _historyReportService.GetReportNewAsync(page, limit, startTime, endTime, Interval, GroupName);
|
||||
//var con = JsonConvert.SerializeObject(data);
|
||||
return Content(data);
|
||||
}
|
||||
[HttpGet]
|
||||
public async Task<ActionResult> GetReportFirstHead()
|
||||
{
|
||||
@ -68,7 +113,18 @@ namespace HT.Cloud.Web.Areas.ReportManage.Controllers
|
||||
var data = await _historyReportService.GetReportSecondHead();
|
||||
return Content(data);
|
||||
}
|
||||
|
||||
[HttpPost]
|
||||
public async Task<ActionResult> GetReportDownLoad(DownLoadparam downLoadparam)
|
||||
{
|
||||
//var StartTime = reportparam.StartTime.ToString("yyyy-MM-dd HH:mm:ss");
|
||||
//var EndTime = reportparam.EndTime.ToString("yyyy-MM-dd HH:mm:ss");
|
||||
DateTime start = new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc);
|
||||
DateTime StartTime = start.AddMilliseconds(downLoadparam.StartTime).ToLocalTime();
|
||||
DateTime EndTime = start.AddMilliseconds(downLoadparam.EndTime).ToLocalTime();
|
||||
int Interval = int.Parse(downLoadparam.Interval.ToString());
|
||||
var data = await _historyReportService.GetReportDownLoad(StartTime, EndTime, Interval);
|
||||
return Content(data);
|
||||
}
|
||||
public string Gettime(string longtime)
|
||||
{
|
||||
long jsTimeStamp =long.Parse( longtime);
|
||||
@ -83,5 +139,16 @@ namespace HT.Cloud.Web.Areas.ReportManage.Controllers
|
||||
public string EndTime { get; set; }
|
||||
public string Interval { get; set; }
|
||||
}
|
||||
public class DownLoadparam
|
||||
{
|
||||
public long StartTime { get; set; }
|
||||
public long EndTime { get; set; }
|
||||
public string Interval { get; set; }
|
||||
}
|
||||
public class Asyncparam
|
||||
{
|
||||
public string page { get; set; }
|
||||
public string limit { get; set; }
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -15,9 +15,7 @@
|
||||
表单设计器代码
|
||||
</title>
|
||||
<style type="text/css">
|
||||
.layui-table-cell {
|
||||
line-height: 20px !important;
|
||||
vertical-align: middle;
|
||||
.mytable .layui-table-cell {
|
||||
height: auto;
|
||||
overflow: visible;
|
||||
text-overflow: inherit;
|
||||
@ -25,6 +23,17 @@
|
||||
}
|
||||
|
||||
</style>
|
||||
<style>
|
||||
.layui-table-cell {
|
||||
font-size:14px;
|
||||
padding:0 5px;
|
||||
height:auto;
|
||||
overflow:visible;
|
||||
text-overflow:inherit;
|
||||
white-space:normal;
|
||||
word-break: break-all;
|
||||
}
|
||||
</style>
|
||||
<link rel="stylesheet" href="~/lib/layui/css/layui.css" />
|
||||
<link rel="stylesheet" href="~/js/lay-module/formDesigner/formDesigner.css" />
|
||||
<link rel="stylesheet" href="~/js/lay-module/cron/cron.css" />
|
||||
@ -37,25 +46,38 @@
|
||||
<form class="layui-form" style="height:30px;" id="formPreviewForm">
|
||||
<div id="grid_2" class="layui-form-item layui-row grid active" data-id="grid_2"
|
||||
data-tag="grid" data-index="0" style="height:100%">
|
||||
<div class="layui-col-md3 widget-col-list column0" data-index="0" data-parentindex="0">
|
||||
<div class="layui-col-md2 widget-col-list column2" data-index="3" data-parentindex="0">
|
||||
<div id="select_Group" class="layui-form-item active" data-id="select_4" data-tag="select"
|
||||
data-index="0">
|
||||
<label class="layui-form-label layui-form-required" style="width: 100px;">
|
||||
选择系统:
|
||||
</label>
|
||||
<div class="layui-input-block layui-form" lay-filter="select_4" style="margin-left: 110px">
|
||||
<select name="selectGroup" lay-verify="required" id="selectGroup">
|
||||
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-col-md2 widget-col-list column0" data-index="0" data-parentindex="0">
|
||||
<div id="ReStartTime" class="layui-form-item active" data-id="ReStartTime"
|
||||
data-tag="date" data-index="0">
|
||||
<label class="layui-form-label layui-form-required" style="width: 110px;">
|
||||
开始时间:
|
||||
</label>
|
||||
<div class="layui-input-block" style="width:calc(100% - 150px);margin-left: 110px;">
|
||||
<div class="layui-input-block" style="width:calc(100% - 110px);margin-left: 110px;">
|
||||
<input id="dateReStartTime" name="ndateReStartTime" lay-verify="required"
|
||||
class="layui-input icon-date widget-date " style="line-height: 40px;">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-col-md3 widget-col-list column1" data-index="1" data-parentindex="0">
|
||||
<div class="layui-col-md2 widget-col-list column1" data-index="1" data-parentindex="0">
|
||||
<div id="ReEndTime" class="layui-form-item active" data-id="ReEndTime"
|
||||
data-tag="date" data-index="0">
|
||||
<label class="layui-form-label layui-form-required" style="width: 110px;">
|
||||
结束世间:
|
||||
</label>
|
||||
<div class="layui-input-block" style="width:calc(100% - 150px);margin-left: 110px;">
|
||||
<div class="layui-input-block" style="width:calc(100% - 110px);margin-left: 110px;">
|
||||
<input id="dateReEndTime" name="ndateReEndTime" lay-verify="required" class="layui-input icon-date widget-date "
|
||||
style="line-height: 40px;">
|
||||
</div>
|
||||
@ -104,6 +126,15 @@
|
||||
</label>
|
||||
<div class="layui-input-block layui-form" lay-filter="select_4" style="margin-left: 110px">
|
||||
<select name="selectint" lay-verify="required" id="selectIntervalt">
|
||||
<option value="onesec">
|
||||
1秒钟
|
||||
</option>
|
||||
<option value="tensec">
|
||||
10秒钟
|
||||
</option>
|
||||
<option value="thirtysec">
|
||||
30秒钟
|
||||
</option>
|
||||
<option value="onemin" selected="">
|
||||
1分钟
|
||||
</option>
|
||||
@ -141,7 +172,7 @@
|
||||
data-index="0">
|
||||
|
||||
<div class="layui-input-block" style="margin-left: 0px;">
|
||||
<button id="bottom_6bottom" type="button" class="layui-btn custom-zc" ; onclick="downloadreport()">
|
||||
<button id="bottom_6bottom" type="button" class="layui-btn custom-zc" ; onclick="exports()">
|
||||
<i class="layui-icon ">
|
||||
</i>
|
||||
下载
|
||||
@ -166,10 +197,12 @@
|
||||
</script>
|
||||
@* <script type="text/javascript" src="~/js/lay-module/iceEditor/iceEditor.js">
|
||||
</script>
|
||||
<script type="text/javascript" src="~/js/config.js?v=100">*@
|
||||
</script>
|
||||
<script type="text/javascript" src="~/js/config.js?v=100">
|
||||
</script>*@
|
||||
<script type="text/javascript" src="~/lib/xlsx/dist/xlsx.full.min.js">
|
||||
</script>
|
||||
<script type="text/javascript" src="~/lib/notify/notify_stand.js">
|
||||
</script>
|
||||
<script>
|
||||
|
||||
layui.use(["table", "layer", "laytpl", "element", "form", "slider", "laydate", "rate", "colorpicker", "carousel", "upload", "formField", "numberInput", "iconPicker", "cron", "labelGeneration"],
|
||||
@ -483,6 +516,19 @@
|
||||
});
|
||||
});
|
||||
wcLoading.close();
|
||||
$.ajax({
|
||||
url: "/ReportManage/HistoryReport/GetDriverGroupList",
|
||||
type: "GET",
|
||||
success: function (redata) {
|
||||
debugger;
|
||||
var groupResult = JSON.parse(redata);
|
||||
debugger;
|
||||
$.each(groupResult,function(index,item){
|
||||
$('#selectGroup').append(new Option(item.GroupDescription,item.GroupName));
|
||||
});
|
||||
debugger;
|
||||
}
|
||||
});
|
||||
//debugger;
|
||||
var starttime = new Date(new Date().setHours(0, 0, 0, 0));
|
||||
var starttimeString = starttime.getFullYear() + "-" + parseInt(starttime.getMonth() + 1) + "-" + starttime.getDate() + " " + (starttime.getHours()) + ":" + starttime.getMinutes() + ":" + starttime.getSeconds();
|
||||
@ -584,19 +630,19 @@
|
||||
async function downloadreport() {
|
||||
window.open(filepath);
|
||||
}
|
||||
async function GetReportViewNew() {
|
||||
async function GetReportViewNewGZIP() {
|
||||
debugger;
|
||||
showLoading();
|
||||
var datetimestart = $('#dateReStartTime')[0].value;
|
||||
var datetimeend = $('#dateReEndTime')[0].value;
|
||||
var timeInterval = 0;
|
||||
switch ($('[name="selectint"]')[0].value) {
|
||||
case "onesec":
|
||||
timeInterval = 1
|
||||
break
|
||||
case "tensec":
|
||||
timeInterval = 10
|
||||
break
|
||||
case "twentysec":
|
||||
timeInterval = 20
|
||||
break
|
||||
case "thirtysec":
|
||||
timeInterval = 30
|
||||
break
|
||||
@ -645,7 +691,6 @@
|
||||
|
||||
var start = Date.now();
|
||||
result = JSON.parse(redata);
|
||||
|
||||
var end = Date.now();
|
||||
console.log(end - start);
|
||||
debugger;
|
||||
@ -685,6 +730,8 @@
|
||||
align: 'center',
|
||||
width: 200,
|
||||
rowspan: 2,
|
||||
|
||||
|
||||
}
|
||||
firstHead.push(timeHead);
|
||||
for (var si = 0; si < second.length; si++) {
|
||||
@ -714,7 +761,7 @@
|
||||
var table = layui.table;
|
||||
table.render({
|
||||
elem: '#result',
|
||||
height: 'full-200',
|
||||
height: 'full-160',
|
||||
data: result,
|
||||
//editTrigger:'dblclick',
|
||||
cols: [
|
||||
@ -723,6 +770,8 @@
|
||||
],
|
||||
page:true,
|
||||
limit:15,
|
||||
//toolbar: 'default',
|
||||
//defaultToolbar: ['filter', 'print', 'exports'],
|
||||
done: function (res, curr, count) {
|
||||
debugger;
|
||||
// console.log(res)
|
||||
@ -775,6 +824,248 @@
|
||||
completeLoading();
|
||||
|
||||
};
|
||||
var DownLaodPara;
|
||||
async function GetReportViewNew() {
|
||||
debugger;
|
||||
showLoading();
|
||||
var datetimestart = $('#dateReStartTime')[0].value;
|
||||
var datetimeend = $('#dateReEndTime')[0].value;
|
||||
var groupname = $('[name="selectGroup"]')[0].value;
|
||||
var timeInterval = 0;
|
||||
switch ($('[name="selectint"]')[0].value) {
|
||||
case "onesec":
|
||||
timeInterval = 1
|
||||
break
|
||||
case "tensec":
|
||||
timeInterval = 10
|
||||
break
|
||||
case "thirtysec":
|
||||
timeInterval = 30
|
||||
break
|
||||
case "onemin":
|
||||
timeInterval = 60
|
||||
break
|
||||
case "fivemin":
|
||||
timeInterval = 300
|
||||
break
|
||||
case "tenmin":
|
||||
timeInterval = 600
|
||||
break
|
||||
case "thirtymin":
|
||||
timeInterval = 1800
|
||||
break
|
||||
case "onehour":
|
||||
timeInterval = 3600
|
||||
break
|
||||
default:
|
||||
timeInterval = 3600
|
||||
};
|
||||
debugger;
|
||||
//showLoading();
|
||||
var datapa = {
|
||||
"StartTime": Date.parse(new Date(datetimestart)), "EndTime": Date.parse(new Date(datetimeend)), "Interval": timeInterval
|
||||
};
|
||||
DownLaodPara = datapa;
|
||||
//var datapa = { "StartTime": datetimestart, "EndTime": datetimeend, "Interval": timeInterval };
|
||||
debugger;
|
||||
let rescounts = 0;
|
||||
let first = "";
|
||||
let second = "";
|
||||
var start1 = Date.now();
|
||||
await $.ajax({
|
||||
url: "/ReportManage/HistoryReport/GetReportNewInitPara",
|
||||
type: "POST",
|
||||
//dataType: "json",
|
||||
//async: false,
|
||||
data: datapa,
|
||||
|
||||
success: function (redata) {
|
||||
debugger;
|
||||
var start = Date.now();
|
||||
rescounts = parseInt(redata);
|
||||
debugger;
|
||||
}
|
||||
});
|
||||
var end1 = Date.now();
|
||||
console.log(end1 - start1);
|
||||
await $.ajax({
|
||||
url: "/ReportManage/HistoryReport/GetReportFirstHead",
|
||||
type: "GET",
|
||||
//dataType: "json",
|
||||
//async: false,
|
||||
//data: datapa,
|
||||
success: function (refirst) {
|
||||
first = JSON.parse(refirst);
|
||||
debugger;
|
||||
}
|
||||
});
|
||||
|
||||
await $.ajax({
|
||||
url: "/ReportManage/HistoryReport/GetReportSecondHead",
|
||||
type: "GET",
|
||||
//dataType: "json",
|
||||
//async: false,
|
||||
//data: datapa,
|
||||
success: function (resecond) {
|
||||
second = JSON.parse(resecond);
|
||||
debugger;
|
||||
}
|
||||
});
|
||||
|
||||
let firstHead = new Array();
|
||||
let secondHead = new Array();
|
||||
let timeHead = {
|
||||
field: 'HDATETIME',
|
||||
title: '时间',
|
||||
align: 'center',
|
||||
width: 200,
|
||||
rowspan: 2,
|
||||
|
||||
|
||||
}
|
||||
firstHead.push(timeHead);
|
||||
for (var si = 0; si < second.length; si++) {
|
||||
let head = {
|
||||
align: 'center',
|
||||
title: second[si].HSYS,
|
||||
colspan: second[si].Head.length,
|
||||
}
|
||||
|
||||
|
||||
firstHead.push(head);
|
||||
|
||||
|
||||
for (var hi = 0; hi < second[si].Head.length; hi++) {
|
||||
let shead = {
|
||||
field: second[si].Title[hi],
|
||||
title: second[si].Head[hi],
|
||||
align: 'center',
|
||||
width: 90,
|
||||
}
|
||||
|
||||
secondHead.push(shead);
|
||||
}
|
||||
}
|
||||
var autoCounts = firstHead.length + secondHead.length;
|
||||
debugger;
|
||||
var ingd = 0;
|
||||
var table = layui.table;
|
||||
table.render({
|
||||
elem: '#result',
|
||||
id: 'result',
|
||||
height: 'full-140',
|
||||
url: '/ReportManage/HistoryReport/GetReportNewPage',
|
||||
where: { "StartTime": Date.parse(new Date(datetimestart)), "EndTime": Date.parse(new Date(datetimeend)), "Interval": timeInterval, "GroupName": groupname },
|
||||
page: true,
|
||||
limit: 13,
|
||||
//even: true,
|
||||
|
||||
//data: result,
|
||||
//editTrigger:'dblclick',
|
||||
cols: [
|
||||
firstHead,
|
||||
secondHead,
|
||||
],
|
||||
parseData: function (res) { //res 即为原始返回的数据
|
||||
return {
|
||||
"code": res.code, //解析接口状态
|
||||
"msg": res.mag, //解析提示文本
|
||||
"count": rescounts, //解析数据长度
|
||||
"data": JSON.parse(res.data) //解析数据列表
|
||||
};
|
||||
},
|
||||
//toolbar: 'default',
|
||||
//defaultToolbar: ['filter', 'print', 'exports'],
|
||||
done: function (res, curr, count) {
|
||||
debugger;
|
||||
//console.log(res);
|
||||
////得到当前页码
|
||||
//console.log(curr);
|
||||
////得到数据总量
|
||||
//console.log(count);
|
||||
// console.log(res)
|
||||
//var donestyle = "<style>.layui - table - cell { height: auto;overflow: visible;text - overflow: inherit;white - space: normal;word -break: break-all;}.layui - table - cell a {text- decoration: underline;}.layui - table - cell div {white - space: nowrap;overflow: hidden;text - overflow: ellipsis;min - height: 30px;line - height: 30px;}</style>"
|
||||
//var oDiv = document.querySelector("#tdemo");
|
||||
//oDiv.style.cssText = donestyle;
|
||||
//layui-table-cell laytable-cell-group
|
||||
//layui-table-cell laytable-cell-1-1-0
|
||||
//$(".layui-table-cell"). [800].style
|
||||
//解决表头宽度不够自动换行问题
|
||||
$(".layui-table-cell").each(function (index, val) {
|
||||
if (index > autoCounts) {
|
||||
return false;
|
||||
}
|
||||
debugger;
|
||||
$(".layui-table-cell")[index].style.lineHeight = "20px !importanr";
|
||||
$(".layui-table-cell")[index].style.verticalAlign = "middle";
|
||||
$(".layui-table-cell")[index].style.height = "auto";
|
||||
$(".layui-table-cell")[index].style.overflow = "visible";
|
||||
$(".layui-table-cell")[index].style.textOverflow = "inherit";
|
||||
$(".layui-table-cell")[index].style.whiteSpace = "normal";
|
||||
|
||||
});
|
||||
////test
|
||||
//$(".layui-table-cell")[3].style.lineHeight = "20px !importanr";
|
||||
//$(".layui-table-cell")[3].style.verticalAlign = "middle";
|
||||
//$(".layui-table-cell")[3].style.height = "auto";
|
||||
//$(".layui-table-cell")[3].style.overflow = "visible";
|
||||
//$(".layui-table-cell")[3].style.textOverflow = "inherit";
|
||||
//$(".layui-table-cell")[3].style.whiteSpace = "normal";
|
||||
////解决操作栏因为内容过多换行问题
|
||||
//$(".layui-table-main tr").each(function (index, val) {
|
||||
// $($(".layui-table-fixed-l .layui-table-body tbody tr")[index]).height($(val).height());
|
||||
// $($(".layui-table-fixed-r .layui-table-body tbody tr")[index]).height($(val).height());
|
||||
//});
|
||||
////解决fixed固定,而导致的th高度不一致
|
||||
//$(".layui-table-header tr").each(function (index, val) {
|
||||
// $(".layui-table-fixed").each(function () {
|
||||
// $($(this).find(".layui-table-header thead th")[index]).height($(val).height());
|
||||
// });
|
||||
//});
|
||||
//$(".layui-table-header tr").each(function (index, val) {
|
||||
// $(".layui-table-fixed").each(function () {
|
||||
// $($(this).find(".layui-table-header thead tr")[index]).height($(val).height());
|
||||
// });
|
||||
//});
|
||||
//$(".layui-table-main tr").each(function (index, val) {
|
||||
// $(".layui-table-fixed").each(function () {
|
||||
// $($(this).find(".layui-table-body tbody tr")[index]).height($(val).height());
|
||||
// });
|
||||
//});
|
||||
//$(".layui-table-main tr").each(function (index, val) {
|
||||
// $(".layui-table-fixed").each(function () {
|
||||
// $($(this).find(".layui-table-body tbody th")[index]).height($(val).height());
|
||||
// });
|
||||
//});
|
||||
|
||||
$('.layui-laypage-limits').hide();
|
||||
}
|
||||
});
|
||||
debugger;
|
||||
completeLoading();
|
||||
|
||||
};
|
||||
|
||||
async function exports() {
|
||||
notify.info("服务器导出数据,稍后弹出下载文件,可先浏览报表", "vcenter");
|
||||
await $.ajax({
|
||||
url: "/ReportManage/HistoryReport/GetReportDownLoad",
|
||||
type: "POST",
|
||||
//dataType: "json",
|
||||
//async: false,
|
||||
data: DownLaodPara,
|
||||
success:function (downRes) {
|
||||
var ddfileName = JSON.parse(downRes);
|
||||
|
||||
var fileNewDownloadUrl = "/report/" + ddfileName;
|
||||
//location.origin = fileNewDownloadUrl;
|
||||
//filepath = location.origin + fileNewDownloadUrl;
|
||||
|
||||
window.open(location.origin + fileNewDownloadUrl);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
async function GetReportView() {
|
||||
debugger;
|
||||
showLoading();
|
||||
|
Reference in New Issue
Block a user