var i18nData = {}; $.i18n({ finish: function (res) { i18nData = res.event; var cols = [{ key: "time", name: i18nData.timeStamp, //language.time(), sortId: 0, sort: "desc" }, { key: "priorityName", name: i18nData.priority, //language.priorityName(), sortId: 1, sort: "" }, { key: "locationName", name: i18nData.location, //language.locationName(), sortId: 2, sort: "" }, { key: "typeName", name: i18nData.almType, //language.typeName(), sortId: 4, sort: "" }, { key: "content", name: i18nData.content, //language.content(), sort: false } ]; crateTableHead(cols); } }); var language = { time: function () { return $("input:hidden[name=h-timeStamp]").val(); }, priorityName: function () { // '优先级' return $("input:hidden[name=h-priority]").val(); }, locationName: function () { //'位置' return $("input:hidden[name=h-location]").val(); }, typeName: function () { //'事件类型' return $("input:hidden[name=h-almType]").val(); }, content: function () { //'告警事件描述' return $("input:hidden[name=h-content]").val(); } }; function query(page, cols) { var pagesize = 100, param = { content: "", priority: "", location: "", devType: "", type: "", regionId: "", startTime: $(".Wdate:eq(0)").val(), endTime: $(".Wdate:eq(1)").val(), orderType: 0, orderFlag: "desc" }; //处理排序 var el = $("#table thead").find(".desc"); if (!el[0]) { el = $("#table thead").find(".asc"); param.orderFlag = "asc"; } else { param.orderFlag = "desc"; } param.orderType = el.attr("sort-id"); //处理时间 if (!param.startTime) { param.startTime = dayjs() .subtract(1, "day") .format("YYYY-MM-DD HH:mm"); } if (!param.endTime) { param.endTime = dayjs().format("YYYY-MM-DD HH:mm"); } //处理筛选 if ($("input[name=priority]").is(":checked")) { param.priority = $("select[name=priority-item]") .val() .join(";"); } if ($("input[name=location]").is(":checked")) { param.location = $("select[name=location-item]") .val() .join(";"); } if ($("input[name=region]").is(":checked")) { param.regionId = $("select[name=region-item]") .val() .join(";"); } if ($("input[name=typename]").is(":checked")) { param.type = $("select[name=typename-item]") .val() .join(";"); } if ($("input[name=devtype]").is(":checked")) { param.devType = $("select[name=devtype-item]").val(); } if ($("input[name=content]").is(":checked")) { param.content = $("input[name=content-item]").val(); } $("#page").initPage({ ajax: { url: "/ems/monitorBusiness/queryEventMsFromMySql", type: "get", data: param, dataType: "json", success: function (res) { $("#table").css("counter-reset", "c " + (res.page - 1) * pagesize); for (var i = 0, str = ""; i < res.rows.length; i++) { var d = res.rows[i]; var vals = cols.reduce(function (o, v, i) { o.push(d[v.key]); return o; }, []); str += "" + vals.join("") + ""; } if (!str) { $("#table tbody tr td").text(""); } else { $("#table tbody").html(str); } } }, resKey: { pageSize: "pageSize", curPage: "page", sumPage: "records" }, pageSize: pagesize, curPage: page }); } $(function () { var cols = [{ key: "time", name: i18nData.timeStamp, //language.time(), sortId: 0, sort: "desc" }, { key: "priorityName", name: i18nData.priority, //language.priorityName(), sortId: 1, sort: "" }, { key: "locationName", name: i18nData.location, //language.locationName(), sortId: 2, sort: "" }, { key: "typeName", name: i18nData.almType, //language.typeName(), sortId: 4, sort: "" }, { key: "content", name: i18nData.content, //language.content(), sort: false } ]; crateTableHead(cols); var today = dayjs().startOf("day"); $(".Wdate:eq(0)").val( dayjs() .subtract(1, "day") .format("YYYY-MM-DD HH:mm") ); $(".Wdate:eq(1)").val(dayjs().format("YYYY-MM-DD HH:mm")); query(1, cols); getFilterData("", function (data) { createHtml(data.alarmLevel, "select[name=priority-item]"); createHtml(data.location, "select[name=location-item]"); createHtml(data.regionInfo, "select[name=region-item]"); createHtml(data.alarmType, "select[name=typename-item]"); createHtml(data.subSystem, "select[name=subsystem-item]"); $("select[name=subsystem-item]").val(4); }); getFilterData(4, function (data) { createHtml(data.devType, "select[name=devtype-item]"); }); //点击表头排序 $("#table").on("click", 'th', function () { if (!$(this).hasClass("sort")) { return false; } var isAsc = $(this).hasClass("asc"); var isDesc = $(this).hasClass("desc"); if (isAsc || isDesc) { $(this) .removeClass(isAsc ? "asc" : "desc") .addClass(!isAsc ? "asc" : "desc"); } else { $("#table th") .removeClass("asc") .removeClass("desc"); $(this).addClass("asc"); } $('#search').trigger('click') }); $("#filter").on("click", function () { $(".shadow").show(); }); $("#query").on("click", function () { query(1, cols); $(".shadow").hide(); }); $("#search").on("click", function () { query(1, cols); }); $("#export").on("click", function () { $('#table').table2excel({ exclude:'.no-export', name:'sheet1', filename:'历史事件.xls', // preserveColors:true }) }); $("#define").on("click", function () { $(".shadow").hide(); }); $("#dialog").on("click", "p.close em", function () { $(".shadow").hide(); }); $("#realtime").on("click", function () { location.href = "/page/rtevent.html"; }); //点击时间 $(".Wdate").on("click", function () { var option = { el: this, isShowClear: false, firstDayOfWeek: 1, dateFmt: "yyyy-MM-dd HH:mm", onpicked: function () {} }; WdatePicker(option); }); //点击查询 //筛选 $("#dialog .content li label:first-child input:checkbox").on( "click", function () { var ckd = $(this).is(":checked"); var parent = $(this).closest("li"); parent.toggleClass("dis"); if (ckd) { parent.find("select").removeAttr("disabled"); parent.find("label:last-child input").removeAttr("disabled"); } else { parent .find("select") .attr("disabled", true) .val(""); parent.find("label:last-child input").attr("disabled", true); } } ); //全选 $("#dialog .content li label:last-child input:checkbox").on( "click", function () { var ckd = $(this).is(":checked"); var parent = $(this).closest("li"); if ( $(this) .attr("name") .indexOf("-all") == -1 ) { return false; } if (ckd) { var values = []; parent.find("select option").each(function (i, e) { values.push($(e).attr("value")); }); parent.find("select").val(values); } else { parent.find("select").val(""); } } ); }); function crateTableHead(cols) { var head = cols.reduce(function (o, v, i) { var cls = v.sort === false ? "" : "sort " + v.sort; o += '' + v.name + ""; return o; }, ""); $("#table thead").html("" + head + ""); } function getFilterData(id, fn) { $.ajax({ url: "/ems/monitorBusiness/queryEventConditionMs", type: "get", data: { type: isNaN(id) || id === "" || id === null ? 1 : 2, id: id }, dataType: "json", success: function (res) { if (typeof fn === "function") { fn(res.mapData); } } }); } function createHtml(rows, selected) { for (var i = 0, options = ""; i < rows.length; i++) { options += '"; } $(selected).html(options); }