583 lines
27 KiB
Plaintext
583 lines
27 KiB
Plaintext
|
|
<%@ page language="java" pageEncoding="UTF-8" %>
|
|||
|
|
<%@ taglib uri="http://java.sun.com/jstl/core_rt" prefix="c" %>
|
|||
|
|
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %>
|
|||
|
|
<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %>
|
|||
|
|
<%@ page import="com.sipai.entity.base.ServerObject" %>
|
|||
|
|
<%@ taglib uri="http://www.springsecurity.org/jsp" prefix="security" %>
|
|||
|
|
<%@page import="com.sipai.entity.scada.MPoint" %>
|
|||
|
|
<%request.setAttribute("Flag_Enable", MPoint.Flag_Enable);%>
|
|||
|
|
<%request.setAttribute("Flag_Disable", MPoint.Flag_Disable);%>
|
|||
|
|
<!DOCTYPE html>
|
|||
|
|
<!-- <html lang="zh-CN"> -->
|
|||
|
|
<!-- BEGIN HEAD -->
|
|||
|
|
<head>
|
|||
|
|
<title><%= ServerObject.atttable.get("TOPTITLE")%>
|
|||
|
|
</title>
|
|||
|
|
|
|||
|
|
<!-- 引用页头及CSS页-->
|
|||
|
|
<jsp:include page="/jsp/inc.jsp"></jsp:include>
|
|||
|
|
<!-- echarts-->
|
|||
|
|
<script type="text/javascript" src="<%=request.getContextPath()%>/plugins/echarts/echarts.4.1.0.min.js"
|
|||
|
|
charset="utf-8"></script>
|
|||
|
|
<!-- 引入daterangepicker-->
|
|||
|
|
<link rel="stylesheet" href="<%=request.getContextPath()%>/plugins/bootstrap-daterangepicker/daterangepicker.css"/>
|
|||
|
|
<script type="text/javascript" src="<%=request.getContextPath()%>/plugins/bootstrap-daterangepicker/moment.min.js"
|
|||
|
|
charset="utf-8"></script>
|
|||
|
|
<script type="text/javascript"
|
|||
|
|
src="<%=request.getContextPath()%>/plugins/bootstrap-daterangepicker/daterangepicker.js"
|
|||
|
|
charset="utf-8"></script>
|
|||
|
|
<!-- bootstrap switch -->
|
|||
|
|
<link rel="stylesheet"
|
|||
|
|
href="<%=request.getContextPath()%>/node_modules/bootstrap-switch/dist/css/bootstrap3/bootstrap-switch.min.css"/>
|
|||
|
|
<script type="text/javascript"
|
|||
|
|
src="<%=request.getContextPath()%>/node_modules/bootstrap-switch/dist/js/bootstrap-switch.min.js"
|
|||
|
|
charset="utf-8"></script>
|
|||
|
|
|
|||
|
|
<script type="text/javascript">
|
|||
|
|
var beginTimeStore = '';
|
|||
|
|
var endTimeStore = '';
|
|||
|
|
$(function () {
|
|||
|
|
|
|||
|
|
var tree = false;
|
|||
|
|
|
|||
|
|
//判断是否有配置
|
|||
|
|
$.post(ext.contextPath + '/efficiency/constituteConfigureScheme/getTreeJson.do', {
|
|||
|
|
unitId: unitId
|
|||
|
|
}, function (result) {
|
|||
|
|
console.log(result)
|
|||
|
|
if (result.length > 0) {
|
|||
|
|
document.getElementById('closeImage').style.display = 'block'
|
|||
|
|
document.getElementById('openImage').style.display = 'none'
|
|||
|
|
|
|||
|
|
var windowghight = $(window).height();
|
|||
|
|
$('#mainDiv').attr("style", "height:" + windowghight + "px;width:100%;padding-top:20px;");
|
|||
|
|
|
|||
|
|
beginTimeStore = moment().subtract(30, 'days').format('YYYY-MM-DD HH:mm');
|
|||
|
|
endTimeStore = moment().subtract(0, 'days').format('YYYY-MM-DD HH:mm');
|
|||
|
|
|
|||
|
|
var locale = {
|
|||
|
|
"format": 'YYYY-MM-DD HH:mm',
|
|||
|
|
"separator": "~",
|
|||
|
|
"applyLabel": "确定",
|
|||
|
|
"cancelLabel": "取消",
|
|||
|
|
"fromLabel": "起始时间",
|
|||
|
|
"toLabel": "结束时间'",
|
|||
|
|
"customRangeLabel": "自定义",
|
|||
|
|
"weekLabel": "W",
|
|||
|
|
"daysOfWeek": ["日", "一", "二", "三", "四", "五", "六"],
|
|||
|
|
"monthNames": ["一月", "二月", "三月", "四月", "五月", "六月", "七月", "八月", "九月", "十月", "十一月", "十二月"],
|
|||
|
|
"firstDay": 1
|
|||
|
|
};
|
|||
|
|
$('#reservationtime').daterangepicker({
|
|||
|
|
timePicker: false,
|
|||
|
|
timePicker24Hour: false,
|
|||
|
|
linkedCalendars: false,
|
|||
|
|
autoUpdateInput: false,
|
|||
|
|
showDropdowns: true,
|
|||
|
|
locale: locale,
|
|||
|
|
//汉化按钮部分
|
|||
|
|
ranges: {
|
|||
|
|
'本月': [moment().startOf('month'), moment().endOf('month').subtract(0, 'month')],
|
|||
|
|
'上月': [moment().subtract(1, 'month').startOf('month'), moment().subtract(1, 'month').endOf('month').subtract(0, 'month')]
|
|||
|
|
},
|
|||
|
|
startDate: beginTimeStore,
|
|||
|
|
endDate: endTimeStore
|
|||
|
|
}, function (start, end, label) {
|
|||
|
|
beginTimeStore = start.format(this.locale.format);
|
|||
|
|
endTimeStore = end.format(this.locale.format);
|
|||
|
|
if (!this.startDate) {
|
|||
|
|
this.element.val('');
|
|||
|
|
} else {
|
|||
|
|
this.element.val(this.startDate.format(this.locale.format) + this.locale.separator + this.endDate.format(this.locale.format));
|
|||
|
|
}
|
|||
|
|
// dosearch();
|
|||
|
|
});
|
|||
|
|
$('#reservationtime').val(beginTimeStore + locale.separator + endTimeStore);
|
|||
|
|
|
|||
|
|
|
|||
|
|
$("#schemeTree").empty();
|
|||
|
|
var selelct_ = $("#schemeTree").select2({
|
|||
|
|
data: result,
|
|||
|
|
cache: false,
|
|||
|
|
placeholder: '请选择',//默认文字提示
|
|||
|
|
allowClear: false,//允许清空
|
|||
|
|
escapeMarkup: function (markup) {
|
|||
|
|
return markup;
|
|||
|
|
}, // 自定义格式化防止xss注入
|
|||
|
|
language: "zh-CN",
|
|||
|
|
minimumInputLength: 0,
|
|||
|
|
minimumResultsForSearch: 10,//数据超过十个启用搜索框
|
|||
|
|
formatResult: function formatRepo(repo) {
|
|||
|
|
return repo.text;
|
|||
|
|
}, // 函数用来渲染结果
|
|||
|
|
formatSelection: function formatRepoSelection(repo) {
|
|||
|
|
return repo.text;
|
|||
|
|
} // 函数用于呈现当前的选择
|
|||
|
|
});
|
|||
|
|
$(".select2-selection--single").css({'height': '30px', 'paddingTop': '4px'})
|
|||
|
|
selelct_.val(result[0].id).trigger("change");
|
|||
|
|
selelct_.on("change", function (e) {
|
|||
|
|
dosearch();
|
|||
|
|
});
|
|||
|
|
|
|||
|
|
dosearch();
|
|||
|
|
} else {
|
|||
|
|
document.getElementById('db').style.display = 'none'
|
|||
|
|
document.getElementById('fx').style.display = 'none'
|
|||
|
|
document.getElementById('openImage').style.display = 'block'
|
|||
|
|
document.getElementById('closeImage').style.display = 'none'
|
|||
|
|
}
|
|||
|
|
}, 'json');
|
|||
|
|
|
|||
|
|
|
|||
|
|
});
|
|||
|
|
|
|||
|
|
function dosearch() {
|
|||
|
|
dodata1();
|
|||
|
|
dochart2(0);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
|
|||
|
|
var color = [
|
|||
|
|
"#2ec7c9",
|
|||
|
|
"#b6a2de",
|
|||
|
|
"#5ab1ef",
|
|||
|
|
"#ffb980",
|
|||
|
|
"#d87a80",
|
|||
|
|
"#8d98b3",
|
|||
|
|
"#e5cf0d",
|
|||
|
|
"#97b552",
|
|||
|
|
"#95706d",
|
|||
|
|
"#dc69aa",
|
|||
|
|
"#07a2a4",
|
|||
|
|
"#9a7fd1",
|
|||
|
|
"#588dd5",
|
|||
|
|
"#f5994e",
|
|||
|
|
"#c05050",
|
|||
|
|
"#59678c",
|
|||
|
|
"#c9ab00",
|
|||
|
|
"#7eb00a",
|
|||
|
|
"#6f5553",
|
|||
|
|
"#c14089"
|
|||
|
|
];
|
|||
|
|
|
|||
|
|
var jsondata1 = ""
|
|||
|
|
|
|||
|
|
function dodata1() {
|
|||
|
|
$.post(ext.contextPath + '/efficiency/constitute/getCompanyEnergy.do', {
|
|||
|
|
unitId: unitId,
|
|||
|
|
sid:$('#schemeTree').val(),
|
|||
|
|
sdt: beginTimeStore,
|
|||
|
|
edt: endTimeStore
|
|||
|
|
}, function (result) {
|
|||
|
|
// console.log(result);
|
|||
|
|
jsondata1 = result;
|
|||
|
|
dochart1(-1);
|
|||
|
|
dotable1();
|
|||
|
|
dotable2(0);
|
|||
|
|
}, 'json');
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
let option1 = "";
|
|||
|
|
let myChart1 = "";
|
|||
|
|
|
|||
|
|
function dochart1(num) {
|
|||
|
|
var legendData = [];
|
|||
|
|
var seriesData1 = [];
|
|||
|
|
var seriesData2 = [];
|
|||
|
|
|
|||
|
|
if (num == -1) {
|
|||
|
|
for (var i = 0; i < jsondata1.length; i++) {
|
|||
|
|
legendData.push(jsondata1[i].name);
|
|||
|
|
seriesData1.push({
|
|||
|
|
value: jsondata1[i].value,
|
|||
|
|
name: jsondata1[i].name
|
|||
|
|
})
|
|||
|
|
for (var j = 0; j < jsondata1[i].children.length; j++) {
|
|||
|
|
legendData.push(jsondata1[i].children[j].name);
|
|||
|
|
seriesData2.push({
|
|||
|
|
value: jsondata1[i].children[j].value,
|
|||
|
|
name: jsondata1[i].children[j].name
|
|||
|
|
})
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
} else {
|
|||
|
|
legendData.push(jsondata1[num].name);
|
|||
|
|
seriesData1.push({
|
|||
|
|
value: jsondata1[num].value,
|
|||
|
|
name: jsondata1[num].name
|
|||
|
|
})
|
|||
|
|
for (var j = 0; j < jsondata1[num].children.length; j++) {
|
|||
|
|
legendData.push(jsondata1[num].children[j].name);
|
|||
|
|
seriesData2.push({
|
|||
|
|
value: jsondata1[num].children[j].value,
|
|||
|
|
name: jsondata1[num].children[j].name
|
|||
|
|
})
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
|
|||
|
|
myChart1 = echarts.init(document.getElementById("chart1"));
|
|||
|
|
option1 = {
|
|||
|
|
color: color,
|
|||
|
|
tooltip: {
|
|||
|
|
trigger: 'item',
|
|||
|
|
formatter: '{a} <br/>{b}: {c} ({d}%)'
|
|||
|
|
},
|
|||
|
|
legend: {
|
|||
|
|
show: true,
|
|||
|
|
type: 'scroll',
|
|||
|
|
orient: 'vertical',
|
|||
|
|
left: 10,
|
|||
|
|
data: legendData
|
|||
|
|
},
|
|||
|
|
series: [
|
|||
|
|
{
|
|||
|
|
name: '全厂能耗(kWh)',
|
|||
|
|
type: 'pie',
|
|||
|
|
selectedMode: 'single',
|
|||
|
|
center: ['55%', '50%'],
|
|||
|
|
radius: [0, '40%'],
|
|||
|
|
label: {
|
|||
|
|
normal: {
|
|||
|
|
position: 'inner'
|
|||
|
|
}
|
|||
|
|
},
|
|||
|
|
labelLine: {
|
|||
|
|
normal: {
|
|||
|
|
show: false
|
|||
|
|
}
|
|||
|
|
},
|
|||
|
|
data: seriesData1
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
name: '全厂能耗(kWh)',
|
|||
|
|
type: 'pie',
|
|||
|
|
center: ['55%', '50%'],
|
|||
|
|
radius: ['50%', '65%'],
|
|||
|
|
// label: {
|
|||
|
|
// normal: {
|
|||
|
|
// formatter: ' {b|{b}:}\n {per|{d}%}',
|
|||
|
|
// backgroundColor: '#eee',
|
|||
|
|
// borderColor: '#aaa',
|
|||
|
|
// borderWidth: 1,
|
|||
|
|
// borderRadius: 4,
|
|||
|
|
// rich: {
|
|||
|
|
// b: {
|
|||
|
|
// fontSize: 12,
|
|||
|
|
// align: 'left',
|
|||
|
|
// lineHeight: 20
|
|||
|
|
// },
|
|||
|
|
// per: {
|
|||
|
|
// align: 'left',
|
|||
|
|
// color: '#eee',
|
|||
|
|
// backgroundColor: '#334455',
|
|||
|
|
// padding: [2, 4],
|
|||
|
|
// borderRadius: 2
|
|||
|
|
// }
|
|||
|
|
// }
|
|||
|
|
// }
|
|||
|
|
// },
|
|||
|
|
data: seriesData2
|
|||
|
|
}
|
|||
|
|
]
|
|||
|
|
};
|
|||
|
|
myChart1.setOption(option1, true);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
function dochart2(num) {
|
|||
|
|
$.post(ext.contextPath + '/efficiency/constitute/getLineData.do', {
|
|||
|
|
unitId: unitId,
|
|||
|
|
sid:$('#schemeTree').val(),
|
|||
|
|
sdt: beginTimeStore,
|
|||
|
|
edt: endTimeStore,
|
|||
|
|
num: num
|
|||
|
|
}, function (result) {
|
|||
|
|
var series = [];
|
|||
|
|
var yAxis = [];
|
|||
|
|
var legenddata = [];
|
|||
|
|
|
|||
|
|
for (var i = 0; i < result.length; i++) {
|
|||
|
|
series.push({
|
|||
|
|
data: result[i].data,
|
|||
|
|
symbol: 'none',
|
|||
|
|
name: result[i].parmname,
|
|||
|
|
type: 'line',
|
|||
|
|
lineStyle: {
|
|||
|
|
width: 2
|
|||
|
|
}
|
|||
|
|
})
|
|||
|
|
legenddata.push(result[i].parmname);
|
|||
|
|
}
|
|||
|
|
yAxis.push({
|
|||
|
|
type: 'value',
|
|||
|
|
name: false,
|
|||
|
|
splitLine: {
|
|||
|
|
show: false//是否显示分隔线。默认数值轴显示,类目轴不显示。
|
|||
|
|
},
|
|||
|
|
scale: true//设置成 true 后坐标刻度不会强制包含零刻度。
|
|||
|
|
});
|
|||
|
|
|
|||
|
|
var myChart = echarts.init(document.getElementById("chart2"));
|
|||
|
|
var option = {
|
|||
|
|
color: color,
|
|||
|
|
animation: false,
|
|||
|
|
legend: {
|
|||
|
|
type: 'scroll',
|
|||
|
|
data: legenddata,
|
|||
|
|
left: 'center'
|
|||
|
|
},
|
|||
|
|
grid: {
|
|||
|
|
left: '4%', // 与容器左侧的距离
|
|||
|
|
right: '4%', // 与容器右侧的距离
|
|||
|
|
top: '8%', // 与容器顶部的距离
|
|||
|
|
//bottom: '5%', // 与容器底部的距离
|
|||
|
|
containLabel: true
|
|||
|
|
},
|
|||
|
|
// toolbox: {
|
|||
|
|
// feature: {
|
|||
|
|
// saveAsImage: {show: true}
|
|||
|
|
// }
|
|||
|
|
// },
|
|||
|
|
xAxis: {
|
|||
|
|
type: 'time'
|
|||
|
|
},
|
|||
|
|
yAxis: yAxis,
|
|||
|
|
series: series,
|
|||
|
|
tooltip: {
|
|||
|
|
trigger: 'axis',
|
|||
|
|
formatter: function (params, ticket, callback) {
|
|||
|
|
var htmlStr = '';
|
|||
|
|
for (var i = 0; i < params.length; i++) {
|
|||
|
|
var param = params[i];
|
|||
|
|
// console.log(param);
|
|||
|
|
var xName = param.name;//x轴的名称
|
|||
|
|
var seriesName = param.seriesName;//图例名称
|
|||
|
|
var xvalue = param.value[0];//x轴值
|
|||
|
|
var yvalue = param.value[1];//y轴值
|
|||
|
|
var remarkvalue = param.value[2];//备注轴值
|
|||
|
|
var color = param.color;//图例颜色
|
|||
|
|
var dataIndex = param.dataIndex;
|
|||
|
|
var seriesIndex = param.seriesIndex;
|
|||
|
|
htmlStr += '<div>';
|
|||
|
|
if (i == 0) {
|
|||
|
|
htmlStr += xvalue + '<br/>';
|
|||
|
|
}
|
|||
|
|
htmlStr += '<span style="margin-right:5px;display:inline-block;width:10px;height:10px;border-radius:5px;background-color:' + color + ';"></span>';
|
|||
|
|
htmlStr += seriesName + ':' + yvalue + '';
|
|||
|
|
htmlStr += '</div>';
|
|||
|
|
}
|
|||
|
|
return htmlStr;
|
|||
|
|
}
|
|||
|
|
// alwaysShowContent:true,
|
|||
|
|
},
|
|||
|
|
dataZoom: [{
|
|||
|
|
type: 'inside',
|
|||
|
|
start: 0,
|
|||
|
|
end: 100
|
|||
|
|
}, {
|
|||
|
|
start: 0,
|
|||
|
|
end: 100,
|
|||
|
|
handleIcon: 'M10.7,11.9v-1.3H9.3v1.3c-4.9,0.3-8.8,4.4-8.8,9.4c0,5,3.9,9.1,8.8,9.4v1.3h1.3v-1.3c4.9-0.3,8.8-4.4,8.8-9.4C19.5,16.3,15.6,12.2,10.7,11.9z M13.3,24.4H6.7V23h6.6V24.4z M13.3,19.6H6.7v-1.4h6.6V19.6z',
|
|||
|
|
handleSize: '60%',
|
|||
|
|
height: '25px',
|
|||
|
|
handleStyle: {
|
|||
|
|
color: '#fff',
|
|||
|
|
shadowBlur: 3,
|
|||
|
|
shadowColor: 'rgba(0, 0, 0, 0.6)',
|
|||
|
|
shadowOffsetX: 2,
|
|||
|
|
shadowOffsetY: 2
|
|||
|
|
}
|
|||
|
|
}]
|
|||
|
|
};
|
|||
|
|
// console.log(option);
|
|||
|
|
myChart.setOption(option, true);
|
|||
|
|
|
|||
|
|
}, 'json');
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
function dotable1() {
|
|||
|
|
var html = "";
|
|||
|
|
html += "<table style='height:100%;width: 100%;border-collapse: collapse;'>";
|
|||
|
|
html += "<tr style='width:100%;height:40px;background-color:#E3E4E6;'>";
|
|||
|
|
html += "<td align='center' style='width: 20%;border: 1px solid #e4e4e4;'>用能单位</td>";
|
|||
|
|
html += "<td align='center' style='width: 20%;border: 1px solid #e4e4e4;'>实际值</td>";
|
|||
|
|
html += "<td align='center' style='width: 20%;border: 1px solid #e4e4e4;'>基准值</td>";
|
|||
|
|
html += "<td align='center' style='width: 20%;border: 1px solid #e4e4e4;'>节约值</td>";
|
|||
|
|
html += "<td align='center' style='width: 20%;border: 1px solid #e4e4e4;'>节约率(%)</td>";
|
|||
|
|
html += "</tr>";
|
|||
|
|
for (var i = 0; i < jsondata1.length; i++) {
|
|||
|
|
var name = jsondata1[i].name;
|
|||
|
|
if(jsondata1[i].unit!=''&&jsondata1[i].unit!=null){
|
|||
|
|
name+="("+jsondata1[i].unit+")";
|
|||
|
|
}
|
|||
|
|
var value = Number(jsondata1[i].value).toFixed(2);
|
|||
|
|
var lastvalue = Number(jsondata1[i].lastvalue).toFixed(2);
|
|||
|
|
var diffvalue = 0;
|
|||
|
|
if (lastvalue > 0) {
|
|||
|
|
diffvalue = (lastvalue - value).toFixed(2);
|
|||
|
|
}
|
|||
|
|
html += "<tr style='width:100%;height:60px;cursor:pointer;' onclick='dochange(" + i + ")'>";
|
|||
|
|
html += " <td align='center' style='width: 20%;border: 1px solid #e4e4e4;'>" + name + "</td> ";
|
|||
|
|
html += " <td align='center' style='width: 20%;border: 1px solid #e4e4e4;'>" + value + "</td> ";
|
|||
|
|
html += " <td align='center' style='width: 20%;border: 1px solid #e4e4e4;'>" + lastvalue + "</td> ";
|
|||
|
|
html += " <td align='center' style='width: 20%;border: 1px solid #e4e4e4;'>" + diffvalue + "</td> ";
|
|||
|
|
let outValue = 0;
|
|||
|
|
if (lastvalue > 0) {
|
|||
|
|
outValue = (((lastvalue - value) / lastvalue) * 100).toFixed(2);
|
|||
|
|
}
|
|||
|
|
html += " <td align='center' style='width: 20%;border: 1px solid #e4e4e4;'>" + outValue + "</td> ";
|
|||
|
|
html += "</tr>";
|
|||
|
|
}
|
|||
|
|
html += "</table>";
|
|||
|
|
$('#table1').html(html);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
function dotable2(num) {
|
|||
|
|
// console.log(jsondata1);
|
|||
|
|
var html = "";
|
|||
|
|
html += "<table style='height:100%;width: 100%;border-collapse: collapse;'>";
|
|||
|
|
html += "<tr style='width:100%;height:40px;background-color:#E3E4E6;'>";
|
|||
|
|
html += "<td align='center' style='width: 20%;border: 1px solid #e4e4e4;'>用能单位</td>";
|
|||
|
|
html += "<td align='center' style='width: 20%;border: 1px solid #e4e4e4;'>实际值</td>";
|
|||
|
|
html += "<td align='center' style='width: 20%;border: 1px solid #e4e4e4;'>基准值</td>";
|
|||
|
|
html += "<td align='center' style='width: 20%;border: 1px solid #e4e4e4;'>节约值</td>";
|
|||
|
|
html += "<td align='center' style='width: 20%;border: 1px solid #e4e4e4;'>节约率(%)</td>";
|
|||
|
|
html += "</tr>";
|
|||
|
|
for (var i = 0; i < jsondata1[num].children.length; i++) {
|
|||
|
|
var name = jsondata1[num].children[i].name;
|
|||
|
|
if(jsondata1[num].children[i].unit!=''&&jsondata1[num].children[i].unit!=null){
|
|||
|
|
name+="("+jsondata1[num].children[i].unit+")";
|
|||
|
|
}
|
|||
|
|
var value = Number(jsondata1[num].children[i].value).toFixed(2);
|
|||
|
|
var lastvalue = Number(jsondata1[num].children[i].lastvalue).toFixed(2);
|
|||
|
|
var diffvalue = 0;
|
|||
|
|
if (lastvalue > 0) {
|
|||
|
|
diffvalue = (lastvalue - value).toFixed(2);
|
|||
|
|
}
|
|||
|
|
html += "<tr style='width:100%;height:60px;' >";
|
|||
|
|
html += " <td align='center' style='width: 20%;border: 1px solid #e4e4e4;cursor:pointer;' onclick='showDetail(\"" + jsondata1[num].children[i].id + "\");'>" + name + "</td> ";
|
|||
|
|
html += " <td align='center' style='width: 20%;border: 1px solid #e4e4e4;'>" + value + "</td> ";
|
|||
|
|
html += " <td align='center' style='width: 20%;border: 1px solid #e4e4e4;'>" + lastvalue + "</td> ";
|
|||
|
|
html += " <td align='center' style='width: 20%;border: 1px solid #e4e4e4;'>" + diffvalue + "</td> ";
|
|||
|
|
let outValue = 0;
|
|||
|
|
if (lastvalue > 0) {
|
|||
|
|
outValue = (((lastvalue - value) / lastvalue) * 100).toFixed(2);
|
|||
|
|
}
|
|||
|
|
html += " <td align='center' style='width: 20%;border: 1px solid #e4e4e4;'>" + outValue + "</td> ";
|
|||
|
|
html += "</tr>";
|
|||
|
|
}
|
|||
|
|
html += "</table>";
|
|||
|
|
$('#table2').html(html);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
function showDetail(id) {
|
|||
|
|
$.post(ext.contextPath + '/efficiency/constitute/getDetailDataView.do', {
|
|||
|
|
id: id,
|
|||
|
|
sdt: beginTimeStore,
|
|||
|
|
edt: endTimeStore
|
|||
|
|
}, function (data) {
|
|||
|
|
$("#detailDataDiv").html(data);
|
|||
|
|
openModal("detailDataModal");
|
|||
|
|
});
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
function dochange(num) {
|
|||
|
|
dochart1(num);
|
|||
|
|
dochart2(num);
|
|||
|
|
dotable2(num);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
function changeOp2LIsHidden(obj) {
|
|||
|
|
var value = $(obj).val();
|
|||
|
|
if (value == '0') {
|
|||
|
|
option1.legend.show = true;
|
|||
|
|
} else {
|
|||
|
|
option1.legend.show = false;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
myChart1.setOption(option1, true);
|
|||
|
|
}
|
|||
|
|
</script>
|
|||
|
|
|
|||
|
|
</head>
|
|||
|
|
<body class="hold-transition ${cu.themeclass} sidebar-mini" style="overflow: hidden;">
|
|||
|
|
<div class="box box-solid">
|
|||
|
|
<div id="mainDiv" class="box-body ">
|
|||
|
|
<div id="detailDataDiv"></div>
|
|||
|
|
<div style="width: 100%;height:45px;float: left;">
|
|||
|
|
<div class="form-group form-inline" style="padding-left:10px;">
|
|||
|
|
<div class="form-group" style="height: 40px;line-height: 40px;">
|
|||
|
|
<label class="input-lable"> 方案:</label>
|
|||
|
|
<div class="input-group " style="width: 180px;">
|
|||
|
|
<select id="schemeTree" name="schemeTree" class="select2"
|
|||
|
|
style="height: 30px;padding: 0px 10px;width: 100%;">
|
|||
|
|
</select>
|
|||
|
|
</div>
|
|||
|
|
</div>
|
|||
|
|
<div class="form-group" style="height: 40px;line-height: 40px;">
|
|||
|
|
<label class="input-lable"> 日期:</label>
|
|||
|
|
<div class="input-group ">
|
|||
|
|
<div class="input-group pull-right input-group-sm">
|
|||
|
|
<div class="input-group-addon">
|
|||
|
|
<i class="fa fa-clock-o"></i>
|
|||
|
|
</div>
|
|||
|
|
<input type="text" class="form-control" id="reservationtime" style="width:225px">
|
|||
|
|
</div>
|
|||
|
|
</div>
|
|||
|
|
</div>
|
|||
|
|
<div class="form-group" style="height: 40px;line-height: 40px;">
|
|||
|
|
<button type="button" class="btn btn-default" onclick="dosearch();"><i class="fa fa-search"></i> 查询
|
|||
|
|
</button>
|
|||
|
|
</div>
|
|||
|
|
</div>
|
|||
|
|
</div>
|
|||
|
|
<div id="openImage">
|
|||
|
|
<img style="width: 100%; height: 100%" src="<%=request.getContextPath()%>/IMG/nengxiaoBack.png"/>
|
|||
|
|
</div>
|
|||
|
|
<div id="closeImage" style="width: 100%;height:calc(100% - 45px);float: left;">
|
|||
|
|
<div id="db" style="width: 45%;height:100%;float: left;">
|
|||
|
|
<div style="width: 100%;height: 65%;float: left;border:1px solid gray;padding:5px;">
|
|||
|
|
<div style="width: 100%;height: 30px;float: left;background:#E3E4E6;border:1px solid #e4e4e4;line-height: 30px;font-size: 14px;font-weight:bold;padding-left: 10px;">
|
|||
|
|
<div style="width: 200px;height:100%;float: left;">
|
|||
|
|
能耗对比分析
|
|||
|
|
</div>
|
|||
|
|
<%-- <div style="width: 180px;height:100%;float: right;font-weight:400;">--%>
|
|||
|
|
<%-- <div style="width: 80px;height:100%;float: left;">图例切换</div>--%>
|
|||
|
|
<%-- <div style="width: 100px;height:100%;float: left;font-weight:400;">--%>
|
|||
|
|
<%-- <select id="op2LIsHidden" name="op2LIsHidden" class="select2"--%>
|
|||
|
|
<%-- style="height: 30px;padding: 0px 10px;"--%>
|
|||
|
|
<%-- onchange="changeOp2LIsHidden(this);">--%>
|
|||
|
|
<%-- <option value="0" selected>显示</option>--%>
|
|||
|
|
<%-- <option value="1">隐藏</option>--%>
|
|||
|
|
<%-- </select>--%>
|
|||
|
|
<%-- </div>--%>
|
|||
|
|
<%-- </div>--%>
|
|||
|
|
</div>
|
|||
|
|
<div style="width: 100%;height:calc(100% - 35px);float: left;border:1px solid #e4e4e4;margin-top: 5px;">
|
|||
|
|
<div id="chart1" style="height: 100%;"></div>
|
|||
|
|
</div>
|
|||
|
|
</div>
|
|||
|
|
<div style="width: 100%;height: 35%;float: left;border:1px solid gray;padding: 5px;">
|
|||
|
|
<div id="table1" style="height:100%;width: 100%;overflow:auto;"></div>
|
|||
|
|
</div>
|
|||
|
|
</div>
|
|||
|
|
<div id="fx" style="width: 55%;height: 100%;float: left;">
|
|||
|
|
<div style="width: 100%;height: 50%;float: left;border:1px solid gray;padding:5px;">
|
|||
|
|
<div style="width: 100%;height: 30px;float: left;background:#E3E4E6;border:1px solid #e4e4e4;line-height: 30px;font-size: 14px;font-weight:bold;padding-left: 10px;">
|
|||
|
|
能耗趋势分析
|
|||
|
|
</div>
|
|||
|
|
<div style="width: 100%;height:calc(100% - 35px);float: left;border:1px solid #e4e4e4;margin-top: 5px;">
|
|||
|
|
<div id="chart2" style="height: 100%;"></div>
|
|||
|
|
</div>
|
|||
|
|
</div>
|
|||
|
|
<div style="width: 100%;height: 50%;float: left;border:1px solid gray;padding:5px;">
|
|||
|
|
<div id="table2" style="height:100%;width: 100%;overflow:auto;"></div>
|
|||
|
|
</div>
|
|||
|
|
</div>
|
|||
|
|
</div>
|
|||
|
|
</div>
|
|||
|
|
</div>
|
|||
|
|
</body>
|
|||
|
|
</html>
|