Files
HTCloud/HT.Cloud.Web/Areas/PenMeiReportManage/Views/PenMeiHistoryAlarm/Index.cshtml

1506 lines
49 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

@{
ViewBag.Title = "Index";
Layout = "~/Views/Shared/_Index.cshtml";
}
<style>
.layui-table-tool > .layui-table-tool-temp {
padding-right: 0px;
}
</style>
<script>
debugger;
var firstInit = true;
layui.use(['jquery', 'form', 'table', 'element', 'common', 'dtree', 'commonTable', 'optimizeSelectOption'], function () {
var $ = layui.jquery,
form = layui.form,
element = layui.element,
commonTable = layui.commonTable,
table = layui.table,
dtree = layui.dtree,
//echarts = layui.echarts,
common = layui.common;
//加载数据
wcLoading.close();
//权限控制(js是值传递)
//toolbarDemo.innerHTML = common.authorizeButtonNew(toolbarDemo.innerHTML);
element.render();
element.on('tab(Chang)',function(data){
if(firstInit){
debugger;
$.parser.parse('#toolbarDiv');
firstInit = false;
}
//debugger;
//console.log(data);
//$.parser.parse('#toolbarDiv');
//$('#subsystemselect').combobox('resize');
//$('#subsystemTagList').datalist('resize', {
// height: ($('#aright').height() - 75)
//});
});
//var argumentFormSiemens = document.getElementById('recentMd');
//argumentFormSiemens.style.display = 'block';
//var argumentFormSiemens = document.getElementById('classifyMd');
//argumentFormSiemens.style.display = 'none';
form.on('select(quickTime)', function (data) {
var selectValue = data.value;
function getFormatDate(date) {
let year = date.getFullYear();
let month = date.getMonth() + 1;
let day = date.getDate();
let hour = date.getHours();
let minutes = date.getMinutes();
let seconds = date.getSeconds();
month = (month < 10) ? '0' + month : month;
day = (day < 10) ? '0' + day : day;
hour = (hour < 10) ? '0' + hour : hour;
minutes = (minutes < 10) ? '0' + minutes : minutes;
seconds = (seconds < 10) ? '0' + seconds : seconds;
let currentDate = year + "-" + month + "-" + day
+ " " + hour + ":" + minutes + ":" + seconds;
return currentDate;
}
/**
* 获取今日零点时间戳
* returns {number}
*/
function todayStartTimestamp() {
const timestamp = Math.floor(new Date(new Date().setHours(0, 0, 0, 0)).getTime() / 1000)
return timestamp
}
/**
* 获取昨日开始、结束时间戳
* param num
* returns {number[昨日开始时间戳, 昨日结束时间戳]}
*/
function yesterdayTimestamp(num = 1) {
const MillisecondsADay = 24 * 60 * 60 * num
// 今日零点时间戳
const timestamp = Math.floor(new Date(new Date().setHours(0, 0, 0, 0)).getTime() / 1000)
// 昨日开始时间戳
const yesterdayStartTime = timestamp - MillisecondsADay
// 昨日结束时间戳
const yesterdayEndTime = timestamp - 1
return [yesterdayStartTime, yesterdayEndTime]
}
/**
* 本周开始时间戳
* returns {number}
*/
function weekStartTimestamp() {
// 一天的秒数
const MillisecondsADay = 24 * 60 * 60
// 今日零点时间戳
const timestamp = Math.floor(new Date(new Date().setHours(0, 0, 0, 0)).getTime() / 1000)
const weekDay = new Date().getDay() === 0 ? (7 - 1) : (new Date().getDay() - 1)
const weekTimeStamp = timestamp - MillisecondsADay * weekDay
return weekTimeStamp
}
/**
* 上周开始、结束时间戳
* returns {number[上周开始时间戳, 上周结束时间戳]}
*/
function lastWeekTimetamp() {
// 一天的秒数
const MillisecondsADay = 24 * 60 * 60
// 今日零点时间戳
const timestamp = Math.floor(new Date(new Date().setHours(0, 0, 0, 0)).getTime() / 1000)
const weekDay = new Date().getDay() === 0 ? (7 - 1) : (new Date().getDay() - 1)
// 本周开始时间戳
const weekTimeStamp = timestamp - MillisecondsADay * weekDay
// 上周开始时间戳
const lastWeekStart = weekTimeStamp - MillisecondsADay * 7
// 上周结束时间戳
const lastWeekEnd = weekTimeStamp - 1
return [lastWeekStart, lastWeekEnd]
}
/**
* 当月开始时间戳
* returns {number}
*/
function monthStartTimestamp() {
const date = new Date()
date.setDate(1)
date.setHours(0, 0, 0, 0)
const timeStamp = date.getTime() / 1000
return timeStamp
}
/**
* 获取上月开始、结束时间戳
* returns {number[上月开始时间戳,上月结束时间戳]}
*/
function lastMonthTimetamp() {
// 一天的秒数
const MillisecondsADay = 24 * 60 * 60
const date = new Date()
date.setDate(1)
date.setHours(0, 0, 0, 0)
// 当月开始时间戳
const timeStamp = date.getTime() / 1000
// 上个月的天数
const days = lastMonthDats()
// 上月开始时间戳
const lastMonthStart = timeStamp - (MillisecondsADay * days)
// 上月结束时间戳
const lastMonthEnd = timeStamp - 1
return [lastMonthStart, lastMonthEnd]
}
/**
* 上月天数
* returns {number}
*/
function lastMonthDats() {
const date = new Date()
const year = date.getFullYear()
// 上个月月份
let month = (date.getMonth() + 1) - 1 // 0-11 表示 1月-12月
// 0 表示12月
month = month || 12
// 30天的月份
const arr30 = [4, 6, 9, 11]
// 31天的月份
const arr31 = [1, 3, 5, 7, 8, 10, 12]
if (arr30.indexOf(month) !== -1) {
// 上个月是 30 天
return 30
} else if (arr31.indexOf(month) !== -1) {
// 上个月是 31 天
return 31
} else {
// 2月
if (isRunYear(year)) {
return 29
} else {
return 28
}
}
}
/**
* 是否为闰年
* param year
* returns {boolean}
*/
function isRunYear(year) {
// 条件:能被4整除并且不能被100整除或者被400整除的
let flag = false
if (year % 4 === 0 && year % 100 !== 0 || year % 400 === 0) {
flag = true
}
return flag
}
var laydate = layui.laydate;
if (selectValue == "toDay") {
var toDayStartDate = todayStartTimestamp();
var timef1 = getFormatDate(new Date(toDayStartDate * 1000));
lay('#dateReStartTime').each(function () {
laydate.render({
elem: this,
trigger: 'click',
format: "yyyy-MM-dd HH:mm:ss",
//value: "2023-02-23 13:56:25",
value: timef1,
});
});
var timef2 = getFormatDate(new Date(Date.now()));
lay('#dateReEndTime').each(function () {
laydate.render({
elem: this,
trigger: 'click',
format: "yyyy-MM-dd HH:mm:ss",
//value: "2023-02-23 13:56:25",
value: timef2,
});
});
} else if (selectValue == "yesterDay") {
var yesterDayDate = yesterdayTimestamp(1);
var timef1 = getFormatDate(new Date(yesterDayDate[0] * 1000));
lay('#dateReStartTime').each(function () {
laydate.render({
elem: this,
trigger: 'click',
format: "yyyy-MM-dd HH:mm:ss",
//value: "2023-02-23 13:56:25",
value: timef1,
});
});
var timef2 = getFormatDate(new Date(yesterDayDate[1] * 1000));
lay('#dateReEndTime').each(function () {
laydate.render({
elem: this,
trigger: 'click',
format: "yyyy-MM-dd HH:mm:ss",
//value: "2023-02-23 13:56:25",
value: timef2,
});
});
} else if (selectValue == "thisWeek") {
var weekStartDate = weekStartTimestamp();
var timef1 = getFormatDate(new Date(weekStartDate * 1000));
lay('#dateReStartTime').each(function () {
laydate.render({
elem: this,
trigger: 'click',
format: "yyyy-MM-dd HH:mm:ss",
//value: "2023-02-23 13:56:25",
value: timef1,
});
});
var timef2 = getFormatDate(new Date(Date.now()));
lay('#dateReEndTime').each(function () {
laydate.render({
elem: this,
trigger: 'click',
format: "yyyy-MM-dd HH:mm:ss",
//value: "2023-02-23 13:56:25",
value: timef2,
});
});
} else if (selectValue == "lastWeek") {
var lastWeekDate = lastWeekTimetamp();
var timef1 = getFormatDate(new Date(lastWeekDate[0] * 1000));
lay('#dateReStartTime').each(function () {
laydate.render({
elem: this,
trigger: 'click',
format: "yyyy-MM-dd HH:mm:ss",
//value: "2023-02-23 13:56:25",
value: timef1,
});
});
var timef2 = getFormatDate(new Date(lastWeekDate[1] * 1000));
lay('#dateReEndTime').each(function () {
laydate.render({
elem: this,
trigger: 'click',
format: "yyyy-MM-dd HH:mm:ss",
//value: "2023-02-23 13:56:25",
value: timef2,
});
});
} else if (selectValue == "thisMonth") {
var monthStartDate = monthStartTimestamp();
var timef = getFormatDate(new Date(monthStartDate * 1000));
lay('#dateReStartTime').each(function () {
laydate.render({
elem: this,
trigger: 'click',
format: "yyyy-MM-dd HH:mm:ss",
//value: "2023-02-23 13:56:25",
value: timef,
});
});
var timef2 = getFormatDate(new Date(Date.now()));
lay('#dateReEndTime').each(function () {
laydate.render({
elem: this,
trigger: 'click',
format: "yyyy-MM-dd HH:mm:ss",
//value: "2023-02-23 13:56:25",
value: timef2,
});
});
} else if (selectValue == "lastMonth") {
//lastMonthTimetamp()
var lastMonthDate = lastMonthTimetamp();
var timef1 = getFormatDate(new Date(lastMonthDate[0] * 1000));
lay('#dateReStartTime').each(function () {
laydate.render({
elem: this,
trigger: 'click',
format: "yyyy-MM-dd HH:mm:ss",
//value: "2023-02-23 13:56:25",
value: timef1,
});
});
var timef2 = getFormatDate(new Date(lastMonthDate[1] * 1000));
lay('#dateReEndTime').each(function () {
laydate.render({
elem: this,
trigger: 'click',
format: "yyyy-MM-dd HH:mm:ss",
//value: "2023-02-23 13:56:25",
value: timef2,
});
});
} else { }
});
//form.on('select(quickType)', function (data) {
// var selectValue = data.value;
// if (selectValue == 'recent'){
// var argumentFormSiemens = document.getElementById('recentMd');
// argumentFormSiemens.style.display = 'block';
// var argumentFormSiemens = document.getElementById('classifyMd');
// argumentFormSiemens.style.display = 'none';
// }else{
// var argumentFormSiemens = document.getElementById('recentMd');
// argumentFormSiemens.style.display = 'none';
// var argumentFormSiemens = document.getElementById('classifyMd');
// argumentFormSiemens.style.display = 'block';
// }
// function getFormatDate(date) {
// let year = date.getFullYear();
// let month = date.getMonth() + 1;
// let day = date.getDate();
// let hour = date.getHours();
// let minutes = date.getMinutes();
// let seconds = date.getSeconds();
// month = (month < 10) ? '0' + month : month;
// day = (day < 10) ? '0' + day : day;
// hour = (hour < 10) ? '0' + hour : hour;
// minutes = (minutes < 10) ? '0' + minutes : minutes;
// seconds = (seconds < 10) ? '0' + seconds : seconds;
// let currentDate = year + "-" + month + "-" + day
// + " " + hour + ":" + minutes + ":" + seconds;
// return currentDate;
// }
// /**
// * 获取今日零点时间戳
// * returns {number}
// */
// function todayStartTimestamp() {
// const timestamp = Math.floor(new Date(new Date().setHours(0, 0, 0, 0)).getTime() / 1000)
// return timestamp
// }
// /**
// * 获取昨日开始、结束时间戳
// * param num
// * returns {number[昨日开始时间戳, 昨日结束时间戳]}
// */
// function yesterdayTimestamp(num = 1) {
// const MillisecondsADay = 24 * 60 * 60 * num
// // 今日零点时间戳
// const timestamp = Math.floor(new Date(new Date().setHours(0, 0, 0, 0)).getTime() / 1000)
// // 昨日开始时间戳
// const yesterdayStartTime = timestamp - MillisecondsADay
// // 昨日结束时间戳
// const yesterdayEndTime = timestamp - 1
// return [yesterdayStartTime, yesterdayEndTime]
// }
// /**
// * 本周开始时间戳
// * returns {number}
// */
// function weekStartTimestamp() {
// // 一天的秒数
// const MillisecondsADay = 24 * 60 * 60
// // 今日零点时间戳
// const timestamp = Math.floor(new Date(new Date().setHours(0, 0, 0, 0)).getTime() / 1000)
// const weekDay = new Date().getDay() === 0 ? (7 - 1) : (new Date().getDay() - 1)
// const weekTimeStamp = timestamp - MillisecondsADay * weekDay
// return weekTimeStamp
// }
// /**
// * 上周开始、结束时间戳
// * returns {number[上周开始时间戳, 上周结束时间戳]}
// */
// function lastWeekTimetamp() {
// // 一天的秒数
// const MillisecondsADay = 24 * 60 * 60
// // 今日零点时间戳
// const timestamp = Math.floor(new Date(new Date().setHours(0, 0, 0, 0)).getTime() / 1000)
// const weekDay = new Date().getDay() === 0 ? (7 - 1) : (new Date().getDay() - 1)
// // 本周开始时间戳
// const weekTimeStamp = timestamp - MillisecondsADay * weekDay
// // 上周开始时间戳
// const lastWeekStart = weekTimeStamp - MillisecondsADay * 7
// // 上周结束时间戳
// const lastWeekEnd = weekTimeStamp - 1
// return [lastWeekStart, lastWeekEnd]
// }
// /**
// * 当月开始时间戳
// * returns {number}
// */
// function monthStartTimestamp() {
// const date = new Date()
// date.setDate(1)
// date.setHours(0, 0, 0, 0)
// const timeStamp = date.getTime() / 1000
// return timeStamp
// }
// /**
// * 获取上月开始、结束时间戳
// * returns {number[上月开始时间戳,上月结束时间戳]}
// */
// function lastMonthTimetamp() {
// // 一天的秒数
// const MillisecondsADay = 24 * 60 * 60
// const date = new Date()
// date.setDate(1)
// date.setHours(0, 0, 0, 0)
// // 当月开始时间戳
// const timeStamp = date.getTime() / 1000
// // 上个月的天数
// const days = lastMonthDats()
// // 上月开始时间戳
// const lastMonthStart = timeStamp - (MillisecondsADay * days)
// // 上月结束时间戳
// const lastMonthEnd = timeStamp - 1
// return [lastMonthStart, lastMonthEnd]
// }
// /**
// * 上月天数
// * returns {number}
// */
// function lastMonthDats() {
// const date = new Date()
// const year = date.getFullYear()
// // 上个月月份
// let month = (date.getMonth() + 1) - 1 // 0-11 表示 1月-12月
// // 0 表示12月
// month = month || 12
// // 30天的月份
// const arr30 = [4, 6, 9, 11]
// // 31天的月份
// const arr31 = [1, 3, 5, 7, 8, 10, 12]
// if (arr30.indexOf(month) !== -1) {
// // 上个月是 30 天
// return 30
// } else if (arr31.indexOf(month) !== -1) {
// // 上个月是 31 天
// return 31
// } else {
// // 2月
// if (isRunYear(year)) {
// return 29
// } else {
// return 28
// }
// }
// }
// /**
// * 是否为闰年
// * param year
// * returns {boolean}
// */
// function isRunYear(year) {
// // 条件:能被4整除并且不能被100整除或者被400整除的
// let flag = false
// if (year % 4 === 0 && year % 100 !== 0 || year % 400 === 0) {
// flag = true
// }
// return flag
// }
// var laydate = layui.laydate;
// if (selectValue == "toDay") {
// var toDayStartDate = todayStartTimestamp();
// var timef1 = getFormatDate(new Date(toDayStartDate * 1000));
// lay('#dateReStartTime1').each(function () {
// laydate.render({
// elem: this,
// trigger: 'click',
// format: "yyyy-MM-dd HH:mm:ss",
// //value: "2023-02-23 13:56:25",
// value: timef1,
// });
// });
// var timef2 = getFormatDate(new Date(Date.now()));
// lay('#dateReEndTime1').each(function () {
// laydate.render({
// elem: this,
// trigger: 'click',
// format: "yyyy-MM-dd HH:mm:ss",
// //value: "2023-02-23 13:56:25",
// value: timef2,
// });
// });
// } else if (selectValue == "yesterDay") {
// var yesterDayDate = yesterdayTimestamp(1);
// var timef1 = getFormatDate(new Date(yesterDayDate[0] * 1000));
// lay('#dateReStartTime1').each(function () {
// laydate.render({
// elem: this,
// trigger: 'click',
// format: "yyyy-MM-dd HH:mm:ss",
// //value: "2023-02-23 13:56:25",
// value: timef1,
// });
// });
// var timef2 = getFormatDate(new Date(yesterDayDate[1] * 1000));
// lay('#dateReEndTime1').each(function () {
// laydate.render({
// elem: this,
// trigger: 'click',
// format: "yyyy-MM-dd HH:mm:ss",
// //value: "2023-02-23 13:56:25",
// value: timef2,
// });
// });
// } else if (selectValue == "thisWeek") {
// var weekStartDate = weekStartTimestamp();
// var timef1 = getFormatDate(new Date(weekStartDate * 1000));
// lay('#dateReStartTime1').each(function () {
// laydate.render({
// elem: this,
// trigger: 'click',
// format: "yyyy-MM-dd HH:mm:ss",
// //value: "2023-02-23 13:56:25",
// value: timef1,
// });
// });
// var timef2 = getFormatDate(new Date(Date.now()));
// lay('#dateReEndTime1').each(function () {
// laydate.render({
// elem: this,
// trigger: 'click',
// format: "yyyy-MM-dd HH:mm:ss",
// //value: "2023-02-23 13:56:25",
// value: timef2,
// });
// });
// } else if (selectValue == "lastWeek") {
// var lastWeekDate = lastWeekTimetamp();
// var timef1 = getFormatDate(new Date(lastWeekDate[0] * 1000));
// lay('#dateReStartTime1').each(function () {
// laydate.render({
// elem: this,
// trigger: 'click',
// format: "yyyy-MM-dd HH:mm:ss",
// //value: "2023-02-23 13:56:25",
// value: timef1,
// });
// });
// var timef2 = getFormatDate(new Date(lastWeekDate[1] * 1000));
// lay('#dateReEndTime1').each(function () {
// laydate.render({
// elem: this,
// trigger: 'click',
// format: "yyyy-MM-dd HH:mm:ss",
// //value: "2023-02-23 13:56:25",
// value: timef2,
// });
// });
// } else if (selectValue == "thisMonth") {
// var monthStartDate = monthStartTimestamp();
// var timef = getFormatDate(new Date(monthStartDate * 1000));
// lay('#dateReStartTime1').each(function () {
// laydate.render({
// elem: this,
// trigger: 'click',
// format: "yyyy-MM-dd HH:mm:ss",
// //value: "2023-02-23 13:56:25",
// value: timef,
// });
// });
// var timef2 = getFormatDate(new Date(Date.now()));
// lay('#dateReEndTime1').each(function () {
// laydate.render({
// elem: this,
// trigger: 'click',
// format: "yyyy-MM-dd HH:mm:ss",
// //value: "2023-02-23 13:56:25",
// value: timef2,
// });
// });
// } else if (selectValue == "lastMonth") {
// //lastMonthTimetamp()
// var lastMonthDate = lastMonthTimetamp();
// var timef1 = getFormatDate(new Date(lastMonthDate[0] * 1000));
// lay('#dateReStartTime1').each(function () {
// laydate.render({
// elem: this,
// trigger: 'click',
// format: "yyyy-MM-dd HH:mm:ss",
// //value: "2023-02-23 13:56:25",
// value: timef1,
// });
// });
// var timef2 = getFormatDate(new Date(lastMonthDate[1] * 1000));
// lay('#dateReEndTime1').each(function () {
// laydate.render({
// elem: this,
// trigger: 'click',
// format: "yyyy-MM-dd HH:mm:ss",
// //value: "2023-02-23 13:56:25",
// value: timef2,
// });
// });
// } else { }
//});
GetAllSubsystemTag();
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();
var endtime = new Date();
endtime.setDate(endtime.getDate())
var endtimeString = endtime.getFullYear() + "-" + parseInt(endtime.getMonth() + 1) + "-" + endtime.getDate() + " " + (endtime.getHours()) + ":" + endtime.getMinutes() + ":" + endtime.getSeconds();
function getFormatDateone(date) {
let year = date.getFullYear();
let month = date.getMonth() + 1;
let day = date.getDate();
let hour = date.getHours();
let minutes = date.getMinutes();
let seconds = date.getSeconds();
month = (month < 10) ? '0' + month : month;
day = (day < 10) ? '0' + day : day;
hour = (hour < 10) ? '0' + hour : hour;
minutes = (minutes < 10) ? '0' + minutes : minutes;
seconds = (seconds < 10) ? '0' + seconds : seconds;
let currentDate = year + "-" + month + "-" + day
+ " " + hour + ":" + minutes + ":" + seconds;
return currentDate;
}
layui.use('laydate', function () {
var laydate = layui.laydate;
lay('#dateReStartTime').each(function () {
laydate.render({
elem: this,
trigger: 'click',
format: "yyyy-MM-dd HH:mm:ss",
//value: "2023-02-23 13:56:25",
value: getFormatDateone(starttime),
});
});
lay('#dateReEndTime').each(function () {
laydate.render({
elem: this,
trigger: 'click',
format: "yyyy-MM-dd HH:mm:ss",
//value: "2023-02-23 13:56:25",
value: getFormatDateone(endtime),
});
});
lay('#dateReStartTime1').each(function () {
laydate.render({
elem: this,
trigger: 'click',
format: "yyyy-MM-dd HH:mm:ss",
//value: "2023-02-23 13:56:25",
value: getFormatDateone(starttime),
});
});
lay('#dateReEndTime1').each(function () {
laydate.render({
elem: this,
trigger: 'click',
format: "yyyy-MM-dd HH:mm:ss",
//value: "2023-02-23 13:56:25",
value: getFormatDateone(endtime),
});
});
});
function getFormatDate(date) {
let year = date.getFullYear();
let month = date.getMonth() + 1;
let day = date.getDate();
let hour = date.getHours();
let minutes = date.getMinutes();
let seconds = date.getSeconds();
month = (month < 10) ? '0' + month : month;
day = (day < 10) ? '0' + day : day;
hour = (hour < 10) ? '0' + hour : hour;
minutes = (minutes < 10) ? '0' + minutes : minutes;
seconds = (seconds < 10) ? '0' + seconds : seconds;
let currentDate = year + "-" + month + "-" + day
+ " " + hour + ":" + minutes + ":" + seconds;
return currentDate;
}
//right_content
var rootpath = window.location.host;
//在页面未加载完毕之前显示的loading Html自定义内容
var _LoadingHtml = '<div id="loadingDiv" style="display: none; "><div id="over" style=" position: absolute;top: 0;left: 0; width: 100%;height: 100%; background-color: #f5f5f5;opacity:0.5;z-index: 1000;"></div><div id="layout" style="position: absolute;top: 40%; left: 40%;width: 20%; height: 20%; z-index: 1001;text-align:center;"><img src="//' + rootpath + '/images/loading.gif" /></div></div>';
//呈现loading效果
document.getElementById("gridpanel").innerHTML += _LoadingHtml;
//移除loading效果
function completeLoading() {
document.getElementById("loadingDiv").style.display = "none";
}
//展示loading效果
function showLoading() {
document.getElementById("loadingDiv").style.display = "block";
}
//在页面未加载完毕之前显示的loading Html自定义内容
var _LoadingHtml1 = '<div id="loadingDiv1" style="display: none; "><div id="over" style=" position: absolute;top: 0;left: 0; width: 100%;height: 100%; background-color: #f5f5f5;opacity:0.5;z-index: 1000;"></div><div id="layout" style="position: absolute;top: 40%; left: 40%;width: 20%; height: 20%; z-index: 1001;text-align:center;"><img src="//' + rootpath + '/images/loading.gif" /></div></div>';
//呈现loading效果
document.getElementById("gridpanel1").innerHTML += _LoadingHtml1;
//移除loading效果
function completeLoading1() {
document.getElementById("loadingDiv1").style.display = "none";
}
//展示loading效果
function showLoading1() {
document.getElementById("loadingDiv1").style.display = "block";
}
function json_array(data) {
var len = eval(data).length;
var arr = [];
for (var i = 0; i < len; i++) {
arr[i] = []; //js中二维数组必须进行重复的声明否则会undefind
arr[i]['url'] = data[i].url;
arr[i]['oldname'] = data[i].oldname;
}
return arr;
}
//var StaticSelectTagList = new Array();
//获取所有子系统列表ok
async function GetAllSubsystemTag() {
debugger;
$.ajax({
url: "/PenMeiReportManage/PenMeiHistoryAlarm/GetAllSubsystemTag",
type: "Get",
//dataType: "json",
//async: false,
//data: datapa,
success: function (redata) {
debugger;
var listsubsysname = JSON.parse(redata);
$('#subsystemselect').combobox({
data: listsubsysname,
valueField: 'Lable',
textField: 'Value',
checkOnSelect: true,
selectOnCheck: true
});
}
});
}
//获取选中子系统tag
updateSelect = async function (data) {
var para = { "SubsysytemName": data.Value }
//var subsystemAllTag = await Call(api.DataHistoryCharts.GetSubsystemAllTag, para);
debugger;
myajax = $.ajax({
url: "/PenMeiReportManage/PenMeiHistoryAlarm/GetSubsystemAllTag",
type: "Post",
//dataType: "json",
data: para,
success: function (redata){}
});
debugger;
$.when(myajax).done(function (redata){
var subsystemAllTag = JSON.parse(redata);
$('#subsystemTagList').datalist({
data: subsystemAllTag,
valueField: 'TagID',
textField: 'Description',
idField: 'TagID',
});
//var datalistArr = $('#subsystemTagList').datalist("getData").rows;
//if (datalistArr.length > 0 && StaticSelectTagList.length > 0) {
// for (var ni = 0; ni < datalistArr.length; ni++) {
// if (StaticSelectTagList.indexOf(datalistArr[i]) != -1) {
// $('#subsystemTagList').datalist("selectRecord", datalistArr[i].TagID);
// }
// }
//}
$('#subsystemTagList').datalist('resize', {
height: ($('#aright').height() - 75)
});
});
}
updateSelect_Value = async function (value, description) {
var para = { "SubsysytemName": value }
//var subsystemAllTag = await Call(api.DataHistoryCharts.GetSubsystemAllTag, para);
debugger;
myajax = $.ajax({
url: "/PenMeiReportManage/PenMeiHistoryAlarm/GetSubsystemAllTag",
type: "Post",
//dataType: "json",
data: para,
success: function (redata) { }
});
debugger;
$.when(myajax).done(function (redata) {
var subsystemAllTag = JSON.parse(redata);
$('#subsystemTagList').datalist({
data: subsystemAllTag,
valueField: 'TagID',
textField: 'Description',
idField: 'TagID',
});
//var datalistArr = $('#subsystemTagList').datalist("getData").rows;
//if (datalistArr.length > 0 && StaticSelectTagList.length > 0) {
// for (var ni = 0; ni < datalistArr.length; ni++) {
// if (StaticSelectTagList.indexOf(datalistArr[i]) != -1) {
// $('#subsystemTagList').datalist("selectRecord", datalistArr[i].TagID);
// }
// }
//}
for (var i = 0; i < subsystemAllTag.length; i++) {
var tag = subsystemAllTag[i];
var id = tag.TagID;
if (tag.Description == description) {
$('#subsystemTagList').datalist("selectRecord",id);
break;
}
}
showTable();
$('#subsystemTagList').datalist('resize', {
height: ($('#aright').height() - 75)
});
});
}
//checkTagAdd = function (rowIndex, rowData) {
// checkAddTaglist(rowData);
//}
//function checkAddTaglist(rowData) {
// if (StaticSelectTagList.indexOf(rowData) == -1) {
// StaticSelectTagList.push(rowData);
// }
//}
//checkTagDec = function (rowIndex, rowData) {
// checkDecTaglist(rowData);
//}
//function checkDecTaglist(rowData) {
// if (StaticSelectTagList.indexOf(rowData) != -1) {
// StaticSelectTagList.splice(StaticSelectTagList.indexOf(rowData), 1);
// }
//}
showTableQuick = async function () {
debugger;
//if (selectType.value == "recent") {
showLoading1();
var showdata = await GetAlarmRecordQuickDesc();
table.render({
elem: '#result1',
height: 'full-150',
data: showdata,
//editTrigger:'dblclick',
cols: [[
//{ type: 'checkbox' },
//{ field: 'Subsystem', title: '子系统', edit: 'text'},
{ field: 'Description', title: '报警名称' },
//{ field: 'TagName' , title:'变量编码' , edit:'text'},
//{ field: 'Address', title: '起始地址', edit: 'text' },
//{ field: 'DataType' , title:'数值类型' , edit:'text'},
{ field: 'Typename', title: '报警类型' },
{ field: 'Startdt', title: '开始时间' },
{ field: 'Enddt', title: '结束时间' },
//{ field: 'RtValue' , title:'当前值' , edit:'text'},
//{ field: 'hcount', title: '报警次数' },
{ field: 'Hztime', title: '报警总时长(秒)' },
//{ title: '操作', width: 120, toolbar: '#currentTableBar', align: "center", fixed: 'right' },
]],
page: true,
limit: 16,
});
completeLoading1();
//}
//else{
// showLoading1();
// var showdata = await GetAlarmRecordQuick();
// table.render({
// elem: '#result1',
// height: 'full-150',
// data: showdata,
// //editTrigger:'dblclick',
// cols: [[
// //{ type: 'checkbox' },
// //{ field: 'Subsystem', title: '子系统', edit: 'text'},
// { field: 'Description', title: '报警名称' },
// //{ field: 'TagName' , title:'变量编码' , edit:'text'},
// //{ field: 'Address', title: '起始地址', edit: 'text' },
// //{ field: 'DataType' , title:'数值类型' , edit:'text'},
// //{ field: 'RtValue' , title:'当前值' , edit:'text'},
// { field: 'hcount', title: '报警次数' },
// { field: 'hztime', title: '报警总时长(秒)' },
// { title: '操作', width: 120, toolbar: '#currentTableBar', align: "center", fixed: 'right' },
// ]],
// page: true,
// limit: 16,
// });
// completeLoading1();
//}
}
table.on('tool(currentTableFilter)', async function (obj) {
debugger;
if (obj.event === 'download') {
//window.open('/FileManage/Uploadfile/Download?keyValue=' + obj.data.F_Id);
}
else if (obj.event === 'details') {
debugger;
let description = obj.data.Description;
let datetimestart = $('#dateReStartTime1')[0].value;
let datetimeend = $('#dateReEndTime1')[0].value;
var laydate = layui.laydate;
lay('#dateReStartTime').each(function () {
laydate.render({
elem: this,
trigger: 'click',
format: "yyyy-MM-dd HH:mm:ss",
//value: "2023-02-23 13:56:25",
value: datetimestart,
});
});
lay('#dateReEndTime').each(function () {
laydate.render({
elem: this,
trigger: 'click',
format: "yyyy-MM-dd HH:mm:ss",
//value: "2023-02-23 13:56:25",
value: datetimeend,
});
});
let alarmSub = "";
element.tabChange('Chang', "22");
let datapa = { "AlarmName": description };
myajax = await $.ajax({
url: "/PenMeiReportManage/PenMeiHistoryAlarm/GetAlarmSubSystem",
type: "Post",
//dataType: "json",
data: datapa,
success: function (redata) {
alarmSub = JSON.parse(redata);
}
});
var comdatas = $('#subsystemselect').combobox('getData');
for(var i = 0; i < comdatas.length; i++){
var comdata = comdatas[i];
if (comdata.Value == alarmSub) {
$('#subsystemselect').combobox("select", comdata.Value);
updateSelect_Value(comdata.Value, description);
break;
}
}
//updateSelect(alarmSub);
//var rows = $('#subsystemTagList').datalist('getRows');
//for (var i = 0; i < rows.length; i++) {
// var row = rows[i];
// var id = row.id;
// if (row.text == description){
// $('#subsystemTagList').datalist("selectRecord",id);
// }
//}
}
//return false;
});
//获取tagvalue
async function GetAlarmRecordQuick() {
var alarmlist = new Array();
debugger;
let alarmtype = $('#selectType')[0].value;
let datetimestart = $('#dateReStartTime1')[0].value;
let datetimeend = $('#dateReEndTime1')[0].value;
//getChecked
//var checkRow = $('#subsystemTagList').datalist("getChecked");
let datapa = { "Alarmtype": alarmtype, "StartTime": Date.parse(new Date(datetimestart)), "EndTime": Date.parse(new Date(datetimeend)) };
let result;
debugger;
myajax = await $.ajax({
url: "/PenMeiReportManage/PenMeiHistoryAlarm/GetAlarmRecordQuick",
type: "Post",
//dataType: "json",
data: datapa,
success: function (redata) { }
});
debugger;
$.when(myajax).done(function (redata) {
result = JSON.parse(redata);
});
return result;
}
//获取tagvalue
async function GetAlarmRecordQuickDesc() {
debugger;
let alarmTimeHorizon = $('#selectRecentQuick')[0].value;
let Hhour = 1;
if (alarmTimeHorizon == "onlyOneHour") {
Hhour = 1;
} else if (alarmTimeHorizon == "onlyThreeHour") {
Hhour = 3;
}else if (alarmTimeHorizon == "onlyEightHour") {
Hhour = 8;
} else if (alarmTimeHorizon == "onlyTwelveHour") {
Hhour = 12;
} else if (alarmTimeHorizon == "onlyOneDay") {
Hhour = 24;
} else {
Hhour = 1;
}
//getChecked
//var checkRow = $('#subsystemTagList').datalist("getChecked");
let datapa = { "Hhour": Hhour };
let result;
debugger;
myajax = await $.ajax({
url: "/PenMeiReportManage/PenMeiHistoryAlarm/GetAlarmRecordQuickDesc",
type: "Post",
//dataType: "json",
data: datapa,
success: function (redata) { }
});
debugger;
$.when(myajax).done(function (redata) {
result = JSON.parse(redata);
});
return result;
}
showTable = async function(){
showLoading();
var showdata = await GetAlarmRecordValue();
table.render({
elem: '#result',
height:'full-150',
data: showdata,
//editTrigger:'dblclick',
cols:[[
//{ type: 'checkbox' },
//{ field: 'Subsystem', title: '子系统', edit: 'text'},
{ field: 'Description' , title:'报警名称' },
//{ field: 'TagName' , title:'变量编码' , edit:'text'},
//{ field: 'Address', title: '起始地址', edit: 'text' },
//{ field: 'DataType' , title:'数值类型' , edit:'text'},
//{ field: 'RtValue' , title:'当前值' , edit:'text'},
{ field: 'startdt', title: '开始时间'},
{ field: 'enddt', title: '结束时间' },
{ field: 'Hztime', title: '持续时间' },
]],
page:true,
limit:16,
});
completeLoading();
}
//获取tagvalue
async function GetAlarmRecordValue() {
var alarmlist = new Array();
let datetimestart = $('#dateReStartTime')[0].value;
let datetimeend = $('#dateReEndTime')[0].value;
//getChecked
var checkRow = $('#subsystemTagList').datalist("getChecked");
let datapa = { "TagID": checkRow[0].TagID, "StartTime": Date.parse(new Date(datetimestart)), "EndTime": Date.parse(new Date(datetimeend)) };
let result;
debugger;
myajax = await $.ajax({
url: "/PenMeiReportManage/PenMeiHistoryAlarm/GetAlarmRecord",
type: "Post",
//dataType: "json",
data: datapa,
success: function (redata) { }
});
debugger;
$.when(myajax).done(function (redata){
result = JSON.parse(redata);
});
return result;
}
});
</script>
<html style="height:100%">
<body style="height:100%">
<div class="layui-tab layui-tab-card" lay-filter="Chang" style="height:100%" id="tab1">
@*<script type="text/javascript" src="~/lib/echarts-5.3.0/dist/echarts.js"></script>*@
<ul class="layui-tab-title">
<li class="layui-this" lay-id ="11">报警汇总</li>
<li lay-id ="22">报警查询</li>
</ul>
<div class="layui-tab-content" style="height:90%">
<div class="layui-tab-item layui-show" style="height:100%">
<div class="layui-fluid" style="padding:0 0px;height:100%">
<div class="layui-row layui-col-space5" style="height:100%">
@*<div class="layui-col-md2 layui-col-xs3" style="height:100%;padding-right:12px;">
<div class="layui-card" style="text-align:left;overflow: auto;height:100%" id="toolbarDiv">
<div id="aleft" style="float:left;width:100%;height:100%">
<div class="easyui-panel" title="选择设备信息" style="width:100%;height:100%">
<div class="easyui-combobox" id="subsystemselect" name="state" data-options="onSelect:function(rec){updateSelect(rec)}" style="width:100%;height:40px">
</div>
<div class="easyui-datalist" id="subsystemTagList" title="变量列表" style="position: relative;width:100%;height:auto;overflow:auto;" data-options="
checkbox: true,
selectOnCheck:true,
checkOnSelect:true,
sigleselect:true,
">
</div>
</div>
</div>
</div>
</div>*@
<div class="layui-col-md12 layui-col-xs12" style="height:100%">
@*<div class="layui-card" style="padding: 5px;">
<div id="echartdiv" style="width:100%;height: 100%;margin-bottom: 10px;">
<div id="result" class="echart" style="width: 100%; height: 100% "></div>
</div>
</div>*@
<form class="layui-form" style="height:auto;" id="formPreviewForm1">
<div id="grid_21" class="layui-form-item layui-row grid active" data-id="grid_21"
data-tag="grid" data-index="0">
@*<div class="layui-col-md2 widget-col-list column0" data-index="0" data-parentindex="0">
<div id="select_1011" class="layui-form-item active" data-id="select_411" data-tag="select"
data-index="0">
<label class="layui-form-label layui-form-required" style="width: 60px;">
报警类型:
</label>
<div class="layui-input-block layui-form" lay-filter="select_4" style="margin-left: 90px;">
<select name="selectType" lay-filter="quickType" lay-verify="required" id="selectType">
<option value="recent" selected="">
近期报警速查
</option>
<option value="A1">
一级报警
</option>
<option value="A2">
二级报警
</option>
<option value="A3">
三级报警
</option>
<option value="F1">
一级故障
</option>
<option value="F2">
二级故障
</option>
<option value="F3">
三级故障
</option>
<option value="H1">
高一级报警
</option>
<option value="H2">
高二级报警
</option>
<option value="H3">
高三级报警
</option>
<option value="L1">
低一级报警
</option>
<option value="L2">
低二级报警
</option>
<option value="L3">
低三级报警
</option>
</select>
</div>
</div>
</div>*@
<div class="layui-col-md3 widget-col-list column1" data-index="1" data-parentindex="0">
<div id="ReStartTime1" class="layui-form-item active" data-id="ReStartTime1"
data-tag="date" data-index="0">
<label class="layui-form-label layui-form-required" style="width: 80px;">
开始时间:
</label>
<div class="layui-input-block" style="width:calc(100% - 110px);margin-left: 110px;">
<input id="dateReStartTime1" 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 column2" data-index="2" data-parentindex="0">
<div id="ReEndTime1" class="layui-form-item active" data-id="ReEndTime1"
data-tag="date" data-index="0">
<label class="layui-form-label layui-form-required" style="width: 80px;">
结束世间:
</label>
<div class="layui-input-block" style="width:calc(100% - 110px);margin-left: 110px;">
<input id="dateReEndTime1" name="ndateReEndTime" lay-verify="required" class="layui-input icon-date widget-date "
style="line-height: 40px;">
</div>
</div>
</div>
@*<div class="layui-col-md2 widget-col-list column3" data-index="3" data-parentindex="0" id="classifyMd">
<div id="select_101" class="layui-form-item active" data-id="select_41" data-tag="select"
data-index="0">
<label class="layui-form-label layui-form-required" style="width: 110px;">
快捷节点:
</label>
<div class="layui-input-block layui-form" lay-filter="select_4" style="margin-left: 140px;">
<select name="selectquick" lay-filter="quickTime1" lay-verify="required" id="selectQuick1">
<option value="def" selected="">
快速选择周期
</option>
<option value="toDay">
今日
</option>
<option value="yesterDay">
昨日
</option>
<option value="thisWeek">
本周
</option>
<option value="lastWeek">
上周
</option>
<option value="thisMonth">
本月
</option>
<option value="lastMonth">
上月
</option>
</select>
</div>
</div>
</div>*@
<div class="layui-col-md2 widget-col-list column4" data-index="2" data-parentindex="0" id="recentMd">
<div id="select_11" class="layui-form-item active" data-id="select_5" data-tag="select"
data-index="0">
<label class="layui-form-label layui-form-required" style="width: 110px;">
速查范围:
</label>
<div class="layui-input-block layui-form" lay-filter="select_4" style="margin-left: 140px;">
<select name="selectquick" lay-filter="quickTime" lay-verify="required" id="selectRecentQuick">
<option value="onlyOneHour" selected="">
一小时内
</option>
<option value="onlyThreeHour">
三小时内
</option>
<option value="onlyEightHour">
八小时内
</option>
<option value="onlyTwelveHour">
十二小时内
</option>
<option value="onlyOneDay">
一天内
</option>
</select>
</div>
</div>
</div>
<div class="layui-col-md2 widget-col-list column4" data-index="4" data-parentindex="0">
<div id="bottom_51" class="layui-form-item active" data-id="bottom_51" data-tag="bottom"
data-index="0">
<div class="layui-input-block" style="margin-left: 30px;">
<button id="btn_search1" type="button" class="layui-btn custom-zc" ; onclick="showTableQuick()">
<i class="layui-icon ">
</i>
确定
</button>
</div>
</div>
</div>
</div>
</form>
<form class="layui-form" style="height:calc(100% - 55px);width:100%" id="tablepanel1">
<div class="layui-panel" id="gridpanel1" style="width:100%;height: 100%;margin-bottom: 10px; ">
<table id="result1" lay-filter="currentTableFilter"></table> @*style="width: 100%; height: 100% "*@
<script type="text/html" id="currentTableBar">
<a id="NF-details" authorize class="layui-btn layui-btn-xs layui-btn-normal" lay-event="details">查看</a>
</script>
</div>
</form>
</div>
</div>
</div>
</div>
<div class="layui-tab-item" style="height:100%">
<div class="layui-fluid" style="padding:0 0px;height:100%">
<div class="layui-row layui-col-space5" style="height:100%">
<div class="layui-col-md2 layui-col-xs3" style="height:100%;padding-right:12px;">
<div class="layui-card" style="text-align:left;overflow: auto;height:100%" id="toolbarDiv">
@*<ul id="dataTree" class="dtree" data-id="0"></ul>*@
<div id="aleft" style="float:left;width:100%;height:100%">
<div class="easyui-panel" title="选择设备信息" style="width:100%;height:100%">
<div class="easyui-combobox" id="subsystemselect" name="state" data-options="onSelect:function(rec){updateSelect(rec)}" style="width:100%;height:40px">
</div>
<div class="easyui-datalist" id="subsystemTagList" title="变量列表" style="position: relative;width:100%;height:auto;overflow:auto;" data-options="
checkbox: true,
selectOnCheck:true,
checkOnSelect:true,
sigleselect:true,
@*onCheck:function(rowIndex,rowData){checkTagAdd(rowIndex,rowData)},
onUncheck:function(rowIndex,rowData){checkTagDec(rowIndex,rowData)}*@
">
</div>
</div>
</div>
</div>
</div>
<div class="layui-col-md10 layui-col-xs9" style="height:100%">
@*<div class="layui-card" style="padding: 5px;">
<div id="echartdiv" style="width:100%;height: 100%;margin-bottom: 10px;">
<div id="result" class="echart" style="width: 100%; height: 100% "></div>
</div>
</div>*@
<form class="layui-form" style="height:auto;" id="formPreviewForm">
<div id="grid_2" class="layui-form-item layui-row grid active" data-id="grid_2"
data-tag="grid" data-index="0">
<div class="layui-col-md3 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: 80px;">
开始时间:
</label>
<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 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: 80px;">
结束世间:
</label>
<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>
</div>
</div>
<div class="layui-col-md3 widget-col-list column2" data-index="2" data-parentindex="0">
<div id="select_10" 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: 110px;">
快捷节点:
</label>
<div class="layui-input-block layui-form" lay-filter="select_4" style="margin-left: 140px;">
<select name="selectquick" lay-filter="quickTime" lay-verify="required" id="selectQuick">
<option value="def" selected="">
快速选择周期
</option>
<option value="toDay">
今日
</option>
<option value="yesterDay">
昨日
</option>
<option value="thisWeek">
本周
</option>
<option value="lastWeek">
上周
</option>
<option value="thisMonth">
本月
</option>
<option value="lastMonth">
上月
</option>
</select>
</div>
</div>
</div>
<div class="layui-col-md3 widget-col-list column3" data-index="3" data-parentindex="0">
<div id="bottom_5" class="layui-form-item active" data-id="bottom_5" data-tag="bottom"
data-index="0">
<div class="layui-input-block" style="margin-left: 30px;">
<button id="btn_search" type="button" class="layui-btn custom-zc" ; onclick="showTable()">
<i class="layui-icon ">
</i>
确定
</button>
</div>
</div>
</div>
</div>
</form>
<form class="layui-form" style="height:calc(100% - 55px);width:100%" id="tablepanel">
<div class="layui-panel" id="gridpanel" style="width:100%;height: 100%;margin-bottom: 10px; ">
<table id="result" lay-filter="metafilter"></table> @*style="width: 100%; height: 100% "*@
</div>
</form>
</div>
</div>
</div>
</div>
</div>
</div>
</body>
</html>