Files
system-jibei/pqs9000/src/main/webapp/WEB-INF/views/business/area/deviceStatus.jsp

1882 lines
73 KiB
Plaintext
Raw Normal View History

2024-04-01 09:20:31 +08:00
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ taglib prefix="shiro" uri="http://shiro.apache.org/tags" %>
<c:set var="ctx" value="${pageContext.request.contextPath}"/>
<html lang="zh-CN">
<head>
<title>终端状态</title>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport"
content="width=device-width,initial-scale=1.0,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no"/>
<link rel="stylesheet" href="${ctx}/css/plugin/slide/reset.css">
<link rel="stylesheet" href="${ctx}/css/plugin/bootstrap/bootstrap.min.css">
<link rel="stylesheet" href="${ctx}/css/plugin/datatimepicker/bootstrap-datetimepicker.css">
<link rel="stylesheet" href="${ctx}/css/plugin/datatables/datatables.bootstrap.css">
<link rel="stylesheet" href="${ctx}/css/plugin/bootstrapSwitch/bootstrap-switch.min.css">
<link rel="stylesheet" href="${ctx}/css/plugin/ztree/zTreeStyle.css">
<link rel="stylesheet" href="${ctx}/css/plugin/fontawesome/font-awesome.min.css">
<link rel="stylesheet" href="${ctx}/css/basic.css">
<link rel="stylesheet" href="${ctx}/css/plugin/basicButton.css">
<style>
html, body {
background-color: #F9F9F9 !important;
}
table {
font-size: 12px !important;
}
#before,#next,#query{
height: 20px !important;
}
.wanzhengdiv {
position: absolute;
z-index: 100;
top:70px;
}
</style>
</head>
<body>
<div class="container-fluid">
<div class="form-inline mt5 wanzhengdiv">
<div class="form-group has-feedback mr10">
<span class=' font12 fontBold'>终端状态(左柱) <span class='run'><span class='inB bg-run smallBlock'></span> 投运 </span><span class='breaks'><span class='inB bg-breaks smallBlock'></span> 热备用 </span><span class='grey'><span class='inB bg-grey smallBlock'></span> 停运 &nbsp;</span></span>
<span class=' font12 fontBold' > 终端在线率(右柱) <span class='info'><span class='inB bg-info smallBlock'></span> 在线率≥90%</span><span class='warn'> <span class='inB bg-warn smallBlock'></span> 60%≤在线率<90% </span><span class='error'> <span class='inB bg-error smallBlock'></span> 在线率<60%</span> </span>
</div>
</div>
<div class="form-inline mt10">
<div class="form-group has-feedback mr10" >
<label >分类方式:</label>
<select class="width3 form-control" id="datatype">
<option selected value="0">区域</option>
<option value="1">电压等级</option>
<option value="2">终端厂家</option>
<option value="3">干扰源类型</option>
</select>
</div>
<div class="form-group has-feedback mr10" >
<label >统计类型:</label>
<input type="checkbox" checked class="checkbox" />
</div>
<div class="form-group">
<%@include file="../../include/time.jsp"%>
<button type="button" class="btn btn-primary " id="query">
<i class="glyphicon glyphicon-search"></i>
</button>
</div>
</div>
<div class="form-inline mt10">
<div class="form-group has-feedback" >
<label >区域:</label>
<div class="disinlineb">
<input id="area" class="form-control" style="width: 140px" readonly>
<i class="fa fa-caret-down areaicon"></i>
<i class="fa fa-caret-up treeUpIcon disnone"
style="color: #C9CBCE;position: absolute;left: 60px;font-size: 18px;z-index: 9999;top: 20px"></i>
<div class=" ztree treeUpDiv disnone " id="areaTree"
style="position: absolute;width: 140px;height: 147px;border: 2px solid #C9CBCE;overflow: auto;top: 32px;background: #fff;z-index: 100;border-radius: 2px">
</div>
</div>
</div>
<div class="form-group has-feedback mr10" >
<label >电压等级:</label>
<select class="width3 form-control" id="scale"></select>
</div>
<div class="form-group has-feedback mr10" >
<label >终端厂家:</label>
<select class="width3 form-control" id="manc"></select>
</div>
<div class="form-group has-feedback mr10" >
<label >干扰源类型:</label>
<select class="width3 form-control" id="loadtype"></select>
</div>
</div>
<div class="row mt5">
<%--区域模块--%>
<div class="col-sm-7" id="areaDepts"></div>
<div class="col-sm-5" id="areaT">
<table id="areaTable" class="table table-striped table-bordered dataTable no-footer">
<thead>
<tr>
<th>区域</th>
<th>终端个数</th>
<th>投运</th>
<th>热备用</th>
<th>停运</th>
<th>在线率(%)</th>
</tr>
</thead>
</table>
</div>
<%-- 终端厂家模块 --%>
<div class="col-sm-7" id="company" style="display: none;"></div>
<div class="col-sm-5" id="companyT" style="display: none;">
<table id="companyTable" class="table table-striped table-bordered dataTable no-footer">
<thead>
<tr>
<th>厂家</th>
<th>终端个数</th>
<th>投运</th>
<th>热备用</th>
<th>停运</th>
<th>在线率(%)</th>
</tr>
</thead>
</table>
</div>
<%-- 电压等级模块 --%>
<div class="col-sm-7" id="vol" style="display: none;"></div>
<div class="col-sm-5" id="volT" style="display: none;">
<table id="volTable" class="table table-striped table-bordered dataTable no-footer">
<thead>
<tr>
<th>电压等级</th>
<th>终端个数</th>
<th>投运</th>
<th>热备用</th>
<th>停运</th>
<th>在线率(%)</th>
</tr>
</thead>
</table>
</div>
<%-- 干扰源模块 --%>
<div class="col-sm-7" id="loadtypep" style="display: none;"></div>
<div class="col-sm-5" id="loadtypeT" style="display: none;">
<table id="loadtypeTable" class="table table-striped table-bordered dataTable no-footer">
<thead>
<tr>
<th>干扰源类型</th>
<th>终端个数</th>
<th>投运</th>
<th>热备用</th>
<th>停运</th>
<th>在线率(%)</th>
</tr>
</thead>
</table>
</div>
</div>
</div>
<script src="${ctx}/js/plugin/jquery/jquery.min.js"></script>
<script src="${ctx}/js/plugin/echarts/echarts.js"></script>
<script src="${ctx}/js/plugin/layui/layer.js"></script>
<script src="${ctx}/js/plugin/jquery/jquery.contextMenu.js"></script>
<script src="${ctx}/js/plugin/jquery/jquery.cleverTabs.js"></script>
<script src="${ctx}/js/plugin/datatables/datatables.jquery.js"></script>
<script src="${ctx}/js/plugin/datatables/datatables.bootstrap.js"></script>
<script src="${ctx}/jspJS/utils/loading.js"></script>
<script src="${ctx}/js/color.js"></script>
<script src="${ctx}/js/plugin/bootstrap/bootstrap-datetimepicker.js"></script>
<script src="${ctx}/js/plugin/bootstrap/bootstrap-datetimepicker.zh-CN.js"></script>
<script src="${ctx}/jspJS/utils/judgeAjaxStatus.js"></script>
<script src="${ctx}/js/plugin/bootstrap/bootstrap-datetimepicker.js"></script>
<script src="${ctx}/js/plugin/bootstrap/bootstrap-datetimepicker.zh-CN.js"></script>
<script src="${ctx}/js/plugin/bootstrapSwitch/bootstrap-switch.min.js"></script>
<script src="${ctx}/js/plugin/ztree/jquery.ztree.core.js"></script>
<script src="${ctx}/js/area.js"></script>
<script src="${ctx}/js/basic.js"></script>
<script src="${ctx}/jspJS/utils/timeControl.js"></script>
<script src="${ctx}/jspJS/utils/barUtil.js"></script>
<script>
var picHeight;
var tabs;
var $area = $("#area");
var $startTime = $("#startTime");
var $endTime = $("#endTime");
var areaResult = null;
var volResult = null;
var companyResult = null;
var loadtypeResult = null;
var tiggleValue = "";
var areLength;//区域的个数
var volLength;
var companyLength;//厂家个数
var loadtypeLength;
$("#interval").val("月份");
var showtype = 0;
var buttonname;
var companyname;
// 新增tab页
function addTab(url, label) {
tabs.add({url: url, label: label});
}
$("#datatype").on("change",function() {
var startTime = $startTime.eq(0).val();
var endTime = $endTime.eq(0).val();
var area = $area.eq(0).attr("index");
if($("option:selected",this).val() == 0){
$.ajax({
type: "POST",
url: "/pqs9000/user/getAreasInfo",
dataType: 'json',
async:false,
success: function (data) {
$("#area").val(data[0].name);
$("#area").attr("index", data[0].id);
areaTree = $.fn.zTree.init($("#areaTree"), settingAreaTree, data);
}
})
$("#area").attr("disabled",true);
$("#scale").attr("disabled",false);
$("#manc").attr("disabled",false);
$("#loadtype").attr("disabled",false);
showtype = 0;
var area = $area.eq(0).attr("index");
var scale = $("#scale").val();
var manc = $("#manc").val();
var loadtype = $("#loadtype").val();
refresh(startTime, endTime, area,scale,manc,loadtype)
}else if($("option:selected",this).val() == 1){
loadselect("电压等级","scale");
$("#area").attr("disabled",false);
$("#scale").attr("disabled",true);
$("#manc").attr("disabled",false);
$("#loadtype").attr("disabled",false);
$("#area").css("background-color","#fff");
showtype = 1;
var area = $area.eq(0).attr("index");
var scale = $("#scale").val();
var manc = $("#manc").val();
var loadtype = $("#loadtype").val();
refresh(startTime, endTime, area,scale,manc,loadtype);
}else if($("option:selected",this).val() == 2){
loadselect("制造厂商","manc");
$("#area").attr("disabled",false);
$("#scale").attr("disabled",false);
$("#manc").attr("disabled",true);
$("#loadtype").attr("disabled",false);
$("#area").css("background-color","#fff");
showtype = 2;
var scale = $("#scale").val();
var manc = $("#manc").val();
var loadtype = $("#loadtype").val();
refresh(startTime, endTime, area,scale,manc,loadtype);
}else if($("option:selected",this).val() == 3){
loadselect("干扰源类型","loadtype");
$("#area").attr("disabled",false);
$("#scale").attr("disabled",false);
$("#manc").attr("disabled",false);
$("#loadtype").attr("disabled",true);
$("#area").css("background-color","#fff");
showtype = 3;
var area = $area.eq(0).attr("index");
var scale = $("#scale").val();
var manc = $("#manc").val();
var loadtype = $("#loadtype").val();
refresh(startTime, endTime, area,scale,manc,loadtype);
}
})
$(function () {
var start = $startTime.eq(0).val();
var end = $endTime.eq(0).val();
$.ajax({
type: "POST",
data:{
start: start,
end: end
},
async:false,
url: "/pqs9000/device/getMsgInfo",
dataType: 'json',
success: function (data) {
buttonname = data.body.name;
tiggleValue = data.body.name;
}
})
$.ajax({
type: "POST",
url: "/pqs9000/theme/getThemeInfo",
async: false,
dataType: 'json',
success: function (data) {
companyname = data.body.name;
}
})
loadselect("电压等级","scale");
loadselect("制造厂商","manc");
loadselect("干扰源类型","loadtype");
$(".checkbox").bootstrapSwitch({
onText: buttonname, // 设置ON文本
offText: companyname, // 设置OFF文本
onColor: "primary",// 设置ON文本颜色 (info/success/warning/danger/primary)
offColor: "primary", // 设置OFF文本颜色 (info/success/warning/danger/primary)
size: "small", // 设置控件大小,从小到大 (mini/small/normal/large)
handleWidth: "60",//设置控件宽度
// 当开关状态改变时触发
onSwitchChange: function (event, state) {
if (state === true) {
tiggleValue = buttonname;
} else {
tiggleValue = companyname;
}
//重新画图
reDrawAllPic();
}
});
picHeight = ($(window).height() - 90);
tabs = $('#tabs').cleverTabs();
$.ajax({
type: "POST",
url: "/pqs9000/user/getAreasInfo",
dataType: 'json',
success: function (data) {
$("#area").val(data[0].name);
$("#area").attr("index", data[0].id);
areaTree = $.fn.zTree.init($("#areaTree"), settingAreaTree, data);
$("#area").attr("disabled",true);
$("#scale").attr("disabled",false);
$("#manc").attr("disabled",false);
$("#loadtype").attr("disabled",false);
//初始化页面内容
var area = $area.eq(0).attr("index");
var startTime = $startTime.eq(0).val();
var endTime = $endTime.eq(0).val();
refresh(startTime, endTime, area);
}
})
})
$("#query").click(function () {
var area = $area.eq(0).attr("index");
var startTime = $startTime.eq(0).val();
var endTime = $endTime.eq(0).val();
var scale = $("#scale").val();
var manc = $("#manc").val();
var loadtype = $("#loadtype").val();
refresh(startTime, endTime, area,scale,manc,loadtype);
});
function refresh(startTime, endTime,area,scale,manc,loadtype) {
var i;
$.ajax({
url: '/pqs9000/area/deviceStatus',
type: 'post',
data: {
startTime: startTime,
endTime: endTime,
area: area,
scale:scale,
manc:manc,
loadtype:loadtype
},
dataType: 'json',
beforeSend: function () {
i = ityzl_SHOW_LOAD_LAYER();
},
success: function (data) {
if (data.code === 500 | data.body === null) {
companyResult = null;
volResult = null;
areaResult = null;
loadtypeResult = null;
} else {
areLength = data.body.area === null ? 0 : data.body.area.length;
companyLength = data.body.interval === null ? 0 : data.body.interval.length;
volLength = data.body.vol === null ? 0 : data.body.vol.length;
loadtypeLength = data.body.loadtype === null ? 0 : data.body.loadtype.length;
companyResult = data.body.interval;
areaResult = data.body.area;
volResult = data.body.vol;
loadtypeResult = data.body.loadtype;
}
startQuery();
//***********关闭loading
ityzl_CLOSE_LOAD_LAYER(i);
}
})
}
//按区域进行统计
function drawAreaPic(area, lineFeed,route) {
//给div指定宽高
$("#areaDepts").css("height", picHeight);
var normal = [];
var breaks = [];
var shutdown = [];
var areas = [];
var rate=[];
if (null != area) {
for (var i = 0; i < area.length; i++) {
var monitors;
var onlineRate;
if (tiggleValue === buttonname) {
monitors=area[i].amounts;
areas[i] = area[i].name + lineFeed+"(" + area[i].amounts + ")";
onlineRate = Number(area[i].online);
var singleDataNormal = {};
var singleDatabreal = {};
var singleDatashutdown = {};
singleDataNormal.value = area[i].status.normal;
singleDataNormal.areaIndex = area[i].deptsIndex;
normal[i]= singleDataNormal;
singleDatabreal.value = area[i].status.breaks;
singleDatabreal.areaIndex = area[i].deptsIndex;
breaks[i] = singleDatabreal;
singleDatashutdown.value = area[i].status.shutdown;
singleDatashutdown.areaIndex = area[i].deptsIndex;
shutdown[i] = singleDatashutdown;
} else {
monitors=area[i].gwamounts;
areas[i] = area[i].name + lineFeed+"(" + area[i].gwamounts + ")";
onlineRate = Number(area[i].gwonline);
if(null!==area[i].gdStatus){
var singleDataNormal = {};
var singleDatabreal = {};
var singleDatashutdown = {};
singleDataNormal.value = area[i].status.normal;
singleDataNormal.areaIndex = area[i].deptsIndex;
normal[i]= singleDataNormal;
singleDatabreal.value = area[i].status.breaks;
singleDatabreal.areaIndex = area[i].deptsIndex;
breaks[i] = singleDatabreal;
singleDatashutdown.value = area[i].status.shutdown;
singleDatashutdown.areaIndex = area[i].deptsIndex;
shutdown[i] = singleDatashutdown;
}else{
var singleData = {};
var item = {};
singleData.value = 3.1415;
item.color = noMonitor;
singleData.itemStyle = item;
singleData.areaIndex = area[i].deptsIndex;
normal[i] = singleData;
breaks[i] = 0;
shutdown[i] = 0;
}
}
if (Number(monitors) === 0) {
var singleData = {};
var item = {};
singleData.value = 3.1415;
item.color = noMonitor;
singleData.itemStyle = item;
singleData.areaIndex = area[i].deptsIndex;
normal[i] = singleData;
rate[i]=singleData;
breaks[i] = 0;
shutdown[i] = 0;
} else {
var singleData = {};
var normalData = {};
var itemStyle = {};
normalData.color = getColor(onlineRate);
if (onlineRate < 3.1414) {
singleData.value = 3.1415;
normalData.actual = onlineRate;
} else {
singleData.value = onlineRate;
}
itemStyle.normal = normalData;
singleData.itemStyle = itemStyle;
singleData.areaIndex = area[i].deptsIndex;
rate[i] = singleData;
}
}
}
var option = {
backgroundColor: canvasBG,//背景色
title: {
text: '区域',
left: '50%',
padding: [
25, // 上
0, // 右
0, // 下
0, // 左
]
},
color: [runColor, breaksColor, grey],
tooltip: {
trigger: 'axis',
axisPointer: {
type: 'shadow'
},
position: function (point, params, dom, rect, size) {
// 鼠标坐标和提示框位置的参考坐标系是以外层div的左上角那一点为原点x轴向右y轴向下
// 提示框位置
var x = 0; // x坐标位置
var y = 0; // y坐标位置
// 当前鼠标位置
var pointX = point[0];
var pointY = point[1];
// 外层div大小
// var viewWidth = size.viewSize[0];
// var viewHeight = size.viewSize[1];
// 提示框大小
var boxWidth = size.contentSize[0];
var boxHeight = size.contentSize[1];
// boxWidth > pointX 说明鼠标左边放不下提示框
if (boxWidth > pointX) {
x = 5;
} else { // 左边放的下
x = pointX - boxWidth;
}
// boxHeight > pointY 说明鼠标上边放不下提示框
if (boxHeight > pointY) {
y = 5;
} else { // 上边放得下
y = pointY - boxHeight;
}
return [x, y];
},
formatter: function (params) {
var tips="";
tips+='<font style="font-size: 12px">'+params[0].name+'</font>';
var color = params[0].color;
tips +='<br/><font style="font-size: 12px">终端状态(%)</font>';
if (color === noMonitor) {
tips += '<br/><font style="font-size: 10px">投运 : /</font>';
tips += '<br/><font style="font-size: 10px">热备用 : /</font>';
tips += '<br/><font style="font-size: 10px">停运 : /</font>';
tips += '<br/><font style="font-size: 12px">终端在线率(%)</font>';
tips+='<br/><font style="font-size: 10px">/</font>';
}else{
for (var i = 0; i < 3; i++) {
tips+='<br/><font style="font-size: 10px">'+params[i].seriesName+' : '+params[i].value+'</font>';
}
tips += '<br/><font style="font-size: 12px">终端在线率(%)</font>';
var onlineRate;
if(Number(params[3].value)===3.14159){
onlineRate='暂无数据';
}else if(Number(params[3].value)===3.1415){
onlineRate='/';
}else{
onlineRate=params[3].value;
}
tips+='<br/><font style="font-size: 10px">'+onlineRate+'</font>';
}
return tips;
}
},
//控制图标在dataroom中的位置大小
grid: {
left: '1%',
right: '11%',
bottom: '3%',
containLabel: true
},
xAxis: [{
type: 'category',
data: areas,
name: '地区\n(终端个数)\n',
splitLine: {
show: false
},
axisLabel: {
show:true,
interval: 0,
rotate:route,
fontSize:10
}
}],
yAxis: [{
type: 'value',
name: '%',
max: 100
}],
series: [{
name: '投运',
type: 'bar',
stack: 'sum',
barMaxWidth: barMax,
data: normal
}, {
name: '热备用',
type: 'bar',
stack: 'sum',
barMaxWidth: barMax,
data: breaks
}, {
name: '停运',
type: 'bar',
stack: 'sum',
barMaxWidth: barMax,
data: shutdown
},{
name: '在线率',
type: 'bar',
barGap: 0,
barMaxWidth: barMax,
data: rate
}]
};
var district = echarts.init(document.getElementById('areaDepts'));
district.setOption(option);
district.on('click', function (params) {
if (getRole("/pqs9000/business/runtime") === 1) {
var city=params.data.areaIndex;
window.top.addTab('runtime?area='+city, '终端运行情况')
}
});
}
//填充区域表格
function initAreaTable(data) {
var height = picHeight - 50;
if (data == null) {
data = [];
}
$("#areaTable").DataTable({
data: data,
autoWidth: false,
order:[1,"desc"],
columnDefs : [
{ orderable: false, targets: [0,2,3,4] }
],
paging: false,
lengthChange: false,
searching: false,
destroy: true,
scrollY: height,
info: false,
language: {
url: '/pqs9000/json/chine.json',
},
columns: [
{data: 'name'},
{data: 'amounts', render: function (data, type, full, meta) {
if (tiggleValue === buttonname) {
if(full.amounts==0){
return "0";
}
return full.amounts;
} else {
if(full.gwamounts==0){
return "0";
}
return full.gwamounts;
}
}, type: "number-fate"},
{
data: 'status.normalData', render: function (data, type, full, meta) {
if (tiggleValue === buttonname) {
if(full.amounts==0){
return "/";
}
return full.status.normalData;
} else {
if(full.gwamounts==0){
return "/";
}
if(null===full.gdStatus){
return "0"
}
return full.gdStatus.normalData;
}
}, type: "number-fate"
},
{
data: 'status.breaksData', render: function (data, type, full, meta) {
if (tiggleValue === buttonname) {
if(full.amounts==0){
return "/";
}
return full.status.breaksData;
} else {
if(full.gwamounts==0){
return "/";
}
if(null===full.gdStatus){
return "0"
}
return full.gdStatus.breaksData;
}
}, type: "number-fate"
},
{
data: 'status.shutdownData', render: function (data, type, full, meta) {
if (tiggleValue === buttonname) {
if(full.amounts==0){
return "/";
}
return full.status.shutdownData;
} else {
if(full.gwamounts==0){
return "/";
}
if(null===full.gdStatus){
return "0"
}
return full.gdStatus.shutdownData;
}
}, type: "number-fate"
}, {data:'online', render:function (data, type, full, meta) {
if (tiggleValue === buttonname) {
data = full.online;
} else {
data = full.gwonline;
}
if (Number(data) === 3.1415) {
return "/";
} else if (Number(data) === 3.14159) {
return "(暂无数据)";
} else {
return data;
}
}, type: "number-fate"},
],
})
}
//按终端厂家进行统计
function drawCompanyPic(companys, lineFeed,route) {
$("#company").css("height", picHeight);
var run = [];
var breaks = [];
var shutdown = [];
var rate=[];
var areas = [];
if (null != companys) {
for(var i=0;i<companys.length;i++){
var monitors;
var onlineRate;
if (tiggleValue === buttonname) {
monitors=companys[i].amounts;
areas[i] = companys[i].name + lineFeed+"(" + companys[i].amounts + ")";
onlineRate = Number(companys[i].online);
run[i]=companys[i].status.normal;
breaks[i]=companys[i].status.breaks;
shutdown[i]=companys[i].status.shutdown;
} else {
monitors=companys[i].gwamounts;
areas[i] = companys[i].name + lineFeed+"(" + companys[i].gwamounts + ")";
onlineRate = Number(companys[i].gwonline);
if(null!==companys[i].gdStatus){
run[i] = companys[i].gdStatus.normal;
breaks[i] = companys[i].gdStatus.breaks;
shutdown[i] = companys[i].gdStatus.shutdown;
}else{
var singleData = {};
var item = {};
singleData.value = 3.1415;
item.color = noMonitor;
singleData.itemStyle = item;
run[i] = singleData;
breaks[i] = 0;
shutdown[i] = 0;
}
}
if(Number(monitors)===0){
var singleData={};
var normal={};
var itemStyle={};
singleData.value=3.1415;
normal.color=noMonitor;
itemStyle.normal=normal;
singleData.itemStyle=itemStyle;
run[i]=singleData;
rate[i]=singleData;
breaks[i]=0;
shutdown[i]=0;
}else{
var singleData={};
var normal={};
var itemStyle={};
normal.color = getColor(onlineRate);
if(onlineRate<3.1414){
singleData.value = 3.1415;
normal.actual = onlineRate;
}else{
singleData.value = onlineRate;
}
itemStyle.normal=normal;
singleData.itemStyle=itemStyle;
rate[i]=singleData;
}
}
}
var option = {
backgroundColor: canvasBG,//背景色
title: {
text: '终端厂家',
left: '50%',
padding: [
15, // 上
0, // 右
0, // 下
0, // 左
]
},
color: [runColor, breaksColor, grey],
tooltip: {
trigger: 'axis',
axisPointer: {
type: 'shadow'
},
position: function (point, params, dom, rect, size) {
// 鼠标坐标和提示框位置的参考坐标系是以外层div的左上角那一点为原点x轴向右y轴向下
// 提示框位置
var x = 0; // x坐标位置
var y = 0; // y坐标位置
// 当前鼠标位置
var pointX = point[0];
var pointY = point[1];
// 外层div大小
// var viewWidth = size.viewSize[0];
// var viewHeight = size.viewSize[1];
// 提示框大小
var boxWidth = size.contentSize[0];
var boxHeight = size.contentSize[1];
// boxWidth > pointX 说明鼠标左边放不下提示框
if (boxWidth > pointX) {
x = 5;
} else { // 左边放的下
x = pointX - boxWidth;
}
// boxHeight > pointY 说明鼠标上边放不下提示框
if (boxHeight > pointY) {
y = 5;
} else { // 上边放得下
y = pointY - boxHeight;
}
return [x, y];
},
formatter: function (params) {
var tips="";
tips+='<font style="font-size: 12px">'+params[0].name+'</font>';
var color = params[0].color;
tips +='<br/><font style="font-size: 12px">终端状态(%)</font>';
if (color === noMonitor) {
tips += '<br/><font style="font-size: 10px">投运 : /</font>';
tips += '<br/><font style="font-size: 10px">热备用 : /</font>';
tips += '<br/><font style="font-size: 10px">停运 : /</font>';
tips += '<br/><font style="font-size: 12px">终端在线率(%)</font>';
tips+='<br/><font style="font-size: 10px">/</font>';
}else{
for (var i = 0; i < 3; i++) {
tips+='<br/><font style="font-size: 10px">'+params[i].seriesName+' : '+params[i].value+'</font>';
}
tips += '<br/><font style="font-size: 12px">终端在线率(%)</font>';
var onlineRate;
if(Number(params[3].value)===3.14159){
onlineRate='暂无数据';
}else if(Number(params[3].value)===3.1415){
onlineRate='/';
}else{
onlineRate=params[3].value;
}
tips+='<br/><font style="font-size: 10px">'+onlineRate+'</font>';
}
return tips;
}
},
//控制图标在dataroom中的位置大小
grid: {
left: '1%',
right: '11%',
bottom: '3%',
containLabel: true
},
xAxis: [{
type: 'category',
data: areas,
name: '终端厂家\n(终端个数)\n',
splitLine: {
show: false
},
axisLabel: {
show:true,
interval: 0,
rotate:route,
fontSize:10
}
}],
yAxis: [{
type: 'value',
name: '%',
min: '0',
max: '100'
}],
series: [{
name: '投运',
type: 'bar',
stack: 'sum',
barMaxWidth: barMax,
data: run
}, {
name: '热备用',
type: 'bar',
stack: 'sum',
barMaxWidth: barMax,
data: breaks
}, {
name: '停运',
type: 'bar',
stack: 'sum',
barMaxWidth: barMax,
data: shutdown
},{
name: '在线率',
type: 'bar',
barGap: 0,
barMaxWidth: barMax,
data: rate
}]
};
var factory = echarts.init(document.getElementById('company'));
factory.setOption(option);
factory.on('click', function () {
if (getRole("/pqs9000/business/runtime") == 1) {
window.top.addTab('runtime', '终端运行情况')
}
});
}
//填充终端厂家表格
function initCompanyTable(data) {
var height = picHeight - 50;
if (data == null) {
data = [];
}
$("#companyTable").DataTable({
data: data,
autoWidth: false,
order:[1,"desc"],
columnDefs : [
{ orderable: false, targets: [0,2,3,4] }
],
paging: false,
lengthChange: false,
searching: false,
destroy: true,
scrollY: height,
info: false,
language: {
url: '/pqs9000/json/chine.json',
},
columns: [
{data: 'name'},
{data: 'amounts', render: function (data, type, full, meta) {
if (tiggleValue === buttonname) {
if(full.amounts==0){
return "0";
}
return full.amounts;
} else {
if(full.gwamounts==0){
return "0";
}
return full.gwamounts;
}
}, type: "number-fate"},
{
data: 'status.normalData', render: function (data, type, full, meta) {
if (tiggleValue === buttonname) {
if(full.amounts==0){
return "/";
}
return full.status.normalData;
} else {
if(full.gwamounts==0){
return "/";
}
if(null===full.gdStatus){
return "0"
}
return full.gdStatus.normalData;
}
}, type: "number-fate"
},
{
data: 'status.breaksData', render: function (data, type, full, meta) {
if (tiggleValue === buttonname) {
if(full.amounts==0){
return "/";
}
return full.status.breaksData;
} else {
if(full.gwamounts==0){
return "/";
}
if(null===full.gdStatus){
return "0"
}
return full.gdStatus.breaksData;
}
}, type: "number-fate"
},
{
data: 'status.shutdownData', render: function (data, type, full, meta) {
if (tiggleValue === buttonname) {
if(full.amounts==0){
return "/";
}
return full.status.shutdownData;
} else {
if(full.gwamounts==0){
return "/";
}
if(null===full.gdStatus){
return "0"
}
return full.gdStatus.shutdownData;
}
}, type: "number-fate"
},
{data:'online', render:function (data, type, full, meta) {
if (tiggleValue === buttonname) {
data = full.online;
} else {
data = full.gwonline;
}
if (Number(data) === 3.1415) {
return "/";
} else if (Number(data) === 3.14159) {
return "(暂无数据)";
} else {
return data;
}
}, type: "number-fate"},
],
})
}
//按电压等级进行统计
function drawVolPic(companys, lineFeed,route) {
$("#vol").css("height", picHeight);
var run = [];
var breaks = [];
var shutdown = [];
var rate=[];
var areas = [];
if (null != companys) {
for(var i=0;i<companys.length;i++){
var monitors;
var onlineRate;
if (tiggleValue === buttonname) {
monitors=companys[i].amounts;
areas[i] = companys[i].name + lineFeed+"(" + companys[i].amounts + ")";
onlineRate = Number(companys[i].online);
run[i]=companys[i].status.normal;
breaks[i]=companys[i].status.breaks;
shutdown[i]=companys[i].status.shutdown;
} else {
monitors=companys[i].gwamounts;
areas[i] = companys[i].name + lineFeed+"(" + companys[i].gwamounts + ")";
onlineRate = Number(companys[i].gwonline);
if(null!==companys[i].gdStatus){
run[i] = companys[i].gdStatus.normal;
breaks[i] = companys[i].gdStatus.breaks;
shutdown[i] = companys[i].gdStatus.shutdown;
}else{
var singleData = {};
var item = {};
singleData.value = 3.1415;
item.color = noMonitor;
singleData.itemStyle = item;
run[i] = singleData;
breaks[i] = 0;
shutdown[i] = 0;
}
}
if(Number(monitors)===0){
var singleData={};
var normal={};
var itemStyle={};
singleData.value=3.1415;
normal.color=noMonitor;
itemStyle.normal=normal;
singleData.itemStyle=itemStyle;
run[i]=singleData;
rate[i]=singleData;
breaks[i]=0;
shutdown[i]=0;
}else{
var singleData={};
var normal={};
var itemStyle={};
normal.color = getColor(onlineRate);
if(onlineRate<3.1414){
singleData.value = 3.1415;
normal.actual = onlineRate;
}else{
singleData.value = onlineRate;
}
itemStyle.normal=normal;
singleData.itemStyle=itemStyle;
rate[i]=singleData;
}
}
}
var option = {
backgroundColor: canvasBG,//背景色
title: {
text: '电压等级',
left: '50%',
padding: [
15, // 上
0, // 右
0, // 下
0, // 左
]
},
color: [runColor, breaksColor, grey],
tooltip: {
trigger: 'axis',
axisPointer: {
type: 'shadow'
},
position: function (point, params, dom, rect, size) {
// 鼠标坐标和提示框位置的参考坐标系是以外层div的左上角那一点为原点x轴向右y轴向下
// 提示框位置
var x = 0; // x坐标位置
var y = 0; // y坐标位置
// 当前鼠标位置
var pointX = point[0];
var pointY = point[1];
// 外层div大小
// var viewWidth = size.viewSize[0];
// var viewHeight = size.viewSize[1];
// 提示框大小
var boxWidth = size.contentSize[0];
var boxHeight = size.contentSize[1];
// boxWidth > pointX 说明鼠标左边放不下提示框
if (boxWidth > pointX) {
x = 5;
} else { // 左边放的下
x = pointX - boxWidth;
}
// boxHeight > pointY 说明鼠标上边放不下提示框
if (boxHeight > pointY) {
y = 5;
} else { // 上边放得下
y = pointY - boxHeight;
}
return [x, y];
},
formatter: function (params) {
var tips="";
tips+='<font style="font-size: 12px">'+params[0].name+'</font>';
var color = params[0].color;
tips +='<br/><font style="font-size: 12px">终端状态(%)</font>';
if (color === noMonitor) {
tips += '<br/><font style="font-size: 10px">投运 : /</font>';
tips += '<br/><font style="font-size: 10px">热备用 : /</font>';
tips += '<br/><font style="font-size: 10px">停运 : /</font>';
tips += '<br/><font style="font-size: 12px">终端在线率(%)</font>';
tips+='<br/><font style="font-size: 10px">/</font>';
}else{
for (var i = 0; i < 3; i++) {
tips+='<br/><font style="font-size: 10px">'+params[i].seriesName+' : '+params[i].value+'</font>';
}
tips += '<br/><font style="font-size: 12px">终端在线率(%)</font>';
var onlineRate;
if(Number(params[3].value)===3.14159){
onlineRate='暂无数据';
}else if(Number(params[3].value)===3.1415){
onlineRate='/';
}else{
onlineRate=params[3].value;
}
tips+='<br/><font style="font-size: 10px">'+onlineRate+'</font>';
}
return tips;
}
},
//控制图标在dataroom中的位置大小
grid: {
left: '1%',
right: '11%',
bottom: '3%',
containLabel: true
},
xAxis: [{
type: 'category',
data: areas,
name: '电压等级\n(终端个数)\n',
splitLine: {
show: false
},
axisLabel: {
show:true,
interval: 0,
rotate:route,
fontSize:10
}
}],
yAxis: [{
type: 'value',
name: '%',
min: '0',
max: '100'
}],
series: [{
name: '投运',
type: 'bar',
stack: 'sum',
barMaxWidth: barMax,
data: run
}, {
name: '热备用',
type: 'bar',
stack: 'sum',
barMaxWidth: barMax,
data: breaks
}, {
name: '停运',
type: 'bar',
stack: 'sum',
barMaxWidth: barMax,
data: shutdown
},{
name: '在线率',
type: 'bar',
barGap: 0,
barMaxWidth: barMax,
data: rate
}]
};
var factory = echarts.init(document.getElementById('vol'));
factory.setOption(option);
factory.on('click', function () {
if (getRole("/pqs9000/business/runtime") == 1) {
window.top.addTab('runtime', '终端运行情况')
}
});
}
//填充电压等级表格
function initVolTable(data) {
var height = picHeight - 50;
if (data == null) {
data = [];
}
$("#volTable").DataTable({
data: data,
autoWidth: false,
order:[1,"desc"],
columnDefs : [
{ orderable: false, targets: [0,2,3,4] }
],
paging: false,
lengthChange: false,
searching: false,
destroy: true,
scrollY: height,
info: false,
language: {
url: '/pqs9000/json/chine.json',
},
columns: [
{data: 'name'},
{data: 'amounts', render: function (data, type, full, meta) {
if (tiggleValue === buttonname) {
if(full.amounts==0){
return "0";
}
return full.amounts;
} else {
if(full.gwamounts==0){
return "0";
}
return full.gwamounts;
}
}, type: "number-fate"},
{
data: 'status.normalData', render: function (data, type, full, meta) {
if (tiggleValue === buttonname) {
if(full.amounts==0){
return "/";
}
return full.status.normalData;
} else {
if(full.gwamounts==0){
return "/";
}
if(null===full.gdStatus){
return "0"
}
return full.gdStatus.normalData;
}
}, type: "number-fate"
},
{
data: 'status.breaksData', render: function (data, type, full, meta) {
if (tiggleValue === buttonname) {
if(full.amounts==0){
return "/";
}
return full.status.breaksData;
} else {
if(full.gwamounts==0){
return "/";
}
if(null===full.gdStatus){
return "0"
}
return full.gdStatus.breaksData;
}
}, type: "number-fate"
},
{
data: 'status.shutdownData', render: function (data, type, full, meta) {
if (tiggleValue === buttonname) {
if(full.amounts==0){
return "/";
}
return full.status.shutdownData;
} else {
if(full.gwamounts==0){
return "/";
}
if(null===full.gdStatus){
return "0"
}
return full.gdStatus.shutdownData;
}
}, type: "number-fate"
},
{data:'online', render:function (data, type, full, meta) {
if (tiggleValue === buttonname) {
data = full.online;
} else {
data = full.gwonline;
}
if (Number(data) === 3.1415) {
return "/";
} else if (Number(data) === 3.14159) {
return "(暂无数据)";
} else {
return data;
}
}, type: "number-fate"},
],
})
}
//按干扰源类型进行统计
function drawloadtypePic(companys, lineFeed,route) {
$("#loadtypep").css("height", picHeight);
var run = [];
var breaks = [];
var shutdown = [];
var rate=[];
var areas = [];
if (null != companys) {
for(var i=0;i<companys.length;i++){
var monitors;
var onlineRate;
if (tiggleValue === buttonname) {
monitors=companys[i].amounts;
areas[i] = companys[i].name + lineFeed+"(" + companys[i].amounts + ")";
onlineRate = Number(companys[i].online);
run[i]=companys[i].status.normal;
breaks[i]=companys[i].status.breaks;
shutdown[i]=companys[i].status.shutdown;
} else {
monitors=companys[i].gwamounts;
areas[i] = companys[i].name + lineFeed+"(" + companys[i].gwamounts + ")";
onlineRate = Number(companys[i].gwonline);
if(null!==companys[i].gdStatus){
run[i] = companys[i].gdStatus.normal;
breaks[i] = companys[i].gdStatus.breaks;
shutdown[i] = companys[i].gdStatus.shutdown;
}else{
var singleData = {};
var item = {};
singleData.value = 3.1415;
item.color = noMonitor;
singleData.itemStyle = item;
run[i] = singleData;
breaks[i] = 0;
shutdown[i] = 0;
}
}
if(Number(monitors)===0){
var singleData={};
var normal={};
var itemStyle={};
singleData.value=3.1415;
normal.color=noMonitor;
itemStyle.normal=normal;
singleData.itemStyle=itemStyle;
run[i]=singleData;
rate[i]=singleData;
breaks[i]=0;
shutdown[i]=0;
}else{
var singleData={};
var normal={};
var itemStyle={};
normal.color = getColor(onlineRate);
if(onlineRate<3.1414){
singleData.value = 3.1415;
normal.actual = onlineRate;
}else{
singleData.value = onlineRate;
}
itemStyle.normal=normal;
singleData.itemStyle=itemStyle;
rate[i]=singleData;
}
}
}
var option = {
backgroundColor: canvasBG,//背景色
title: {
text: '干扰源类型',
left: '50%',
padding: [
15, // 上
0, // 右
0, // 下
0, // 左
]
},
color: [runColor, breaksColor, grey],
tooltip: {
trigger: 'axis',
axisPointer: {
type: 'shadow'
},
position: function (point, params, dom, rect, size) {
// 鼠标坐标和提示框位置的参考坐标系是以外层div的左上角那一点为原点x轴向右y轴向下
// 提示框位置
var x = 0; // x坐标位置
var y = 0; // y坐标位置
// 当前鼠标位置
var pointX = point[0];
var pointY = point[1];
// 外层div大小
// var viewWidth = size.viewSize[0];
// var viewHeight = size.viewSize[1];
// 提示框大小
var boxWidth = size.contentSize[0];
var boxHeight = size.contentSize[1];
// boxWidth > pointX 说明鼠标左边放不下提示框
if (boxWidth > pointX) {
x = 5;
} else { // 左边放的下
x = pointX - boxWidth;
}
// boxHeight > pointY 说明鼠标上边放不下提示框
if (boxHeight > pointY) {
y = 5;
} else { // 上边放得下
y = pointY - boxHeight;
}
return [x, y];
},
formatter: function (params) {
var tips="";
tips+='<font style="font-size: 12px">'+params[0].name+'</font>';
var color = params[0].color;
tips +='<br/><font style="font-size: 12px">终端状态(%)</font>';
if (color === noMonitor) {
tips += '<br/><font style="font-size: 10px">投运 : /</font>';
tips += '<br/><font style="font-size: 10px">热备用 : /</font>';
tips += '<br/><font style="font-size: 10px">停运 : /</font>';
tips += '<br/><font style="font-size: 12px">终端在线率(%)</font>';
tips+='<br/><font style="font-size: 10px">/</font>';
}else{
for (var i = 0; i < 3; i++) {
tips+='<br/><font style="font-size: 10px">'+params[i].seriesName+' : '+params[i].value+'</font>';
}
tips += '<br/><font style="font-size: 12px">终端在线率(%)</font>';
var onlineRate;
if(Number(params[3].value)===3.14159){
onlineRate='暂无数据';
}else if(Number(params[3].value)===3.1415){
onlineRate='/';
}else{
onlineRate=params[3].value;
}
tips+='<br/><font style="font-size: 10px">'+onlineRate+'</font>';
}
return tips;
}
},
//控制图标在dataroom中的位置大小
grid: {
left: '1%',
right: '11%',
bottom: '3%',
containLabel: true
},
xAxis: [{
type: 'category',
data: areas,
name: '干扰源类型\n(终端个数)\n',
splitLine: {
show: false
},
axisLabel: {
show:true,
interval: 0,
rotate:route,
fontSize:10
}
}],
yAxis: [{
type: 'value',
name: '%',
min: '0',
max: '100'
}],
series: [{
name: '投运',
type: 'bar',
stack: 'sum',
barMaxWidth: barMax,
data: run
}, {
name: '热备用',
type: 'bar',
stack: 'sum',
barMaxWidth: barMax,
data: breaks
}, {
name: '停运',
type: 'bar',
stack: 'sum',
barMaxWidth: barMax,
data: shutdown
},{
name: '在线率',
type: 'bar',
barGap: 0,
barMaxWidth: barMax,
data: rate
}]
};
var factory = echarts.init(document.getElementById('loadtypep'));
factory.setOption(option);
factory.on('click', function () {
if (getRole("/pqs9000/business/runtime") == 1) {
window.top.addTab('runtime', '终端运行情况')
}
});
}
//填充干扰源类型表格
function initloadtypeTable(data) {
var height = picHeight - 50;
if (data == null) {
data = [];
}
$("#loadtypeTable").DataTable({
data: data,
autoWidth: false,
order:[1,"desc"],
columnDefs : [
{ orderable: false, targets: [0,2,3,4] }
],
paging: false,
lengthChange: false,
searching: false,
destroy: true,
scrollY: height,
info: false,
language: {
url: '/pqs9000/json/chine.json',
},
columns: [
{data: 'name'},
{data: 'amounts', render: function (data, type, full, meta) {
if (tiggleValue === buttonname) {
if(full.amounts==0){
return "0";
}
return full.amounts;
} else {
if(full.gwamounts==0){
return "0";
}
return full.gwamounts;
}
}, type: "number-fate"},
{
data: 'status.normalData', render: function (data, type, full, meta) {
if (tiggleValue === buttonname) {
if(full.amounts==0){
return "/";
}
return full.status.normalData;
} else {
if(full.gwamounts==0){
return "/";
}
if(null===full.gdStatus){
return "0"
}
return full.gdStatus.normalData;
}
}, type: "number-fate"
},
{
data: 'status.breaksData', render: function (data, type, full, meta) {
if (tiggleValue === buttonname) {
if(full.amounts==0){
return "/";
}
return full.status.breaksData;
} else {
if(full.gwamounts==0){
return "/";
}
if(null===full.gdStatus){
return "0"
}
return full.gdStatus.breaksData;
}
}, type: "number-fate"
},
{
data: 'status.shutdownData', render: function (data, type, full, meta) {
if (tiggleValue === buttonname) {
if(full.amounts==0){
return "/";
}
return full.status.shutdownData;
} else {
if(full.gwamounts==0){
return "/";
}
if(null===full.gdStatus){
return "0"
}
return full.gdStatus.shutdownData;
}
}, type: "number-fate"
},
{data:'online', render:function (data, type, full, meta) {
if (tiggleValue === buttonname) {
data = full.online;
} else {
data = full.gwonline;
}
if (Number(data) === 3.1415) {
return "/";
} else if (Number(data) === 3.14159) {
return "(暂无数据)";
} else {
return data;
}
}, type: "number-fate"},
],
})
}
//特殊处理,表头紧缩问题--start
var it = null;
function startQuery() {
//实时刷新时间单位为毫秒
it = setInterval('refreshQuery()', 100);
}
/* 刷新查询 */
function refreshQuery() {
if(showtype == 0){
$("#areaDepts").css("display", "");
$("#areaT").css("display", "");
$("#vol").css("display", "none");
$("#volT").css("display", "none");
$("#company").css("display", "none");
$("#companyT").css("display", "none");
$("#loadtypep").css("display", "none");
$("#loadtypeT").css("display", "none");
if (parseInt(areLength) > parseInt(barUpperLimit7)) {
drawAreaPic(areaResult, noLineFeed,barRouteIncline);
} else {
drawAreaPic(areaResult, lineFeed,barRouteZero);
}
initAreaTable(areaResult);
}else if(showtype == 1){
$("#areaDepts").css("display", "none");
$("#areaT").css("display", "none");
$("#vol").css("display", "");
$("#volT").css("display", "");
$("#company").css("display", "none");
$("#companyT").css("display", "none");
$("#loadtypep").css("display", "none");
$("#loadtypeT").css("display", "none");
if (parseInt(companyLength) > parseInt(barUpperLimit7)) {
drawVolPic(volResult, noLineFeed,barRouteIncline);
} else {
drawVolPic(volResult, lineFeed,barRouteZero);
}
initVolTable(volResult);
}else if(showtype == 2){
$("#areaDepts").css("display", "none");
$("#areaT").css("display", "none");
$("#vol").css("display", "none");
$("#volT").css("display", "none");
$("#company").css("display", "");
$("#companyT").css("display", "");
$("#loadtypep").css("display", "none");
$("#loadtypeT").css("display", "none");
if (parseInt(companyLength) > parseInt(barUpperLimit7)) {
drawCompanyPic(companyResult, noLineFeed,barRouteIncline);
} else {
drawCompanyPic(companyResult, lineFeed,barRouteZero);
}
initCompanyTable(companyResult);
}else if(showtype == 3){
$("#areaDepts").css("display", "none");
$("#areaT").css("display", "none");
$("#company").css("display", "none");
$("#companyT").css("display", "none");
$("#vol").css("display", "none");
$("#volT").css("display", "none");
$("#loadtypep").css("display", "");
$("#loadtypeT").css("display", "");
if (parseInt(companyLength) > parseInt(barUpperLimit7)) {
drawloadtypePic(loadtypeResult, noLineFeed,barRouteIncline);
} else {
drawloadtypePic(loadtypeResult, lineFeed,barRouteZero);
}
initloadtypeTable(loadtypeResult);
}
window.clearInterval(it)
}
//根据在线率获取颜色
function getColor(data) {
if (data >= 90) {
return green;
} else if (data === 3.1415) {
return noMonitor;
} else if (data === 3.14159) {
return noData;
} else if (data < 60) {
return red;
} else {
return yellow;
}
}
//开关触发图片更新
function reDrawAllPic() {
if(showtype == 0){
if (areaResult === null) {
drawAreaPic(null);
initAreaTable(null);
} else {
if (parseInt(areLength) > parseInt(barUpperLimit7)) {
drawAreaPic(areaResult, noLineFeed,barRouteIncline);
} else {
drawAreaPic(areaResult, lineFeed,barRouteZero);
}
initAreaTable(areaResult);
}
}else if(showtype == 1){
if (volResult === null) {
drawVolPic(null);
initVolTable(null);
} else {
if (parseInt(volLength) > parseInt(barUpperLimit7)) {
drawVolPic(volResult, noLineFeed,barRouteIncline);
} else {
drawVolPic(volResult, lineFeed,barRouteZero);
}
initVolTable(volResult);
}
}else if(showtype == 2){
if (companyResult === null) {
drawCompanyPic(null);
initCompanyTable(null);
} else {
if (parseInt(companyLength) > parseInt(barUpperLimit7)) {
drawCompanyPic(companyResult, noLineFeed,barRouteIncline);
} else {
drawCompanyPic(companyResult, lineFeed,barRouteZero);
}
initCompanyTable(companyResult);
}
}else if(showtype == 3){
if (loadtypeResult === null) {
drawloadtypePic(null);
initloadtypeTable(null);
} else {
if (parseInt(loadtypeLength) > parseInt(barUpperLimit7)) {
drawloadtypePic(loadtypeResult, noLineFeed,barRouteIncline);
} else {
drawloadtypePic(loadtypeResult, lineFeed,barRouteZero);
}
initloadtypeTable(companyResult);
}
}
}
/**
* 数字排序自定义start
*/
jQuery.fn.dataTableExt.oSort['number-fate-asc'] = function (s1, s2) {
if(s1==="/" ){
s1=0;
}
if(s2==="/" ){
s2=0;
}
return Number(s1) - Number(s2);
};
jQuery.fn.dataTableExt.oSort['number-fate-desc'] = function (s1, s2) {
if(s1==="/" ){
s1=0;
}
if(s2==="/" ){
s2=0;
}
return Number(s2) - Number(s1);
};
function loadselect(dictypeName,div){
var part='#'+div;
$(part).find("option").remove();
$.ajax({
method : "post",
url : "/pqs9000/device/getselect",
data : {
dictypeName:dictypeName
},
async:false,
success : function(data) {
if(data == null){
var message = dictypeName + '信息加载失败';
layer.msg(message,{icon:1,time:1000});
}else{
var option0 = $("<option selected value='"
+ null + "'>"
+ "全部" + "</option>");
$(part).append(option0);
$.each(data, function(i, item) {
var option = $("<option value='"
+ item.dicIndex + "'>"
+ item.dicName + "</option>");
$(part).append(option);
})
}
}
})
}
</script>
</body>
</html>