234 lines
10 KiB
Plaintext
234 lines
10 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.visual.JspElement"%>
|
||
<%request.setAttribute("Type_GetValue", JspElement.Type_GetValue); %>
|
||
<%request.setAttribute("Type_Get7dayHistory", JspElement.Type_GetHourHistory); %>
|
||
<%request.setAttribute("Type_Get7dayHistory", JspElement.Type_Get7dayHistory); %>
|
||
<%request.setAttribute("Type_GetModbus", JspElement.Type_GetModbus); %>
|
||
<%request.setAttribute("Type_GetHttp", JspElement.Type_GetHttp); %>
|
||
<!DOCTYPE html>
|
||
<!-- <html lang="zh-CN"> -->
|
||
<!-- BEGIN HEAD -->
|
||
|
||
<head>
|
||
<title></title>
|
||
<!-- 引用页头及CSS页-->
|
||
<jsp:include page="/jsp/inc.jsp"></jsp:include>
|
||
<script type="text/javascript">
|
||
|
||
//获取url地址根目录 当前taomcat下路径
|
||
function getRootPath(){
|
||
var pathName = window.location.pathname.substring(1);
|
||
// var webName = pathName == '' ? '' : pathName.substring(0, pathName.indexOf('/'));
|
||
return window.location.protocol + '//' + window.location.host;
|
||
}
|
||
//获取url地址根目录 当前taomcat下路径
|
||
function getRootPath2(){
|
||
var pathName = window.location.pathname.substring(1);
|
||
var webName = pathName == '' ? '' : pathName.substring(0, pathName.indexOf('/'));
|
||
return window.location.protocol + '//' + window.location.host +"/"+webName;
|
||
}
|
||
|
||
var mychart="";
|
||
/* 请求数据 */
|
||
function getValue() {
|
||
$.post(ext.contextPath + '/plan/getJspWholeInfoByPlanLayoutId.do', { planLayoutId: "${param.planLayoutId}" }, function (data) {
|
||
// console.log(data);
|
||
if(data!=null&&data.length>0){
|
||
var series=[];
|
||
var yAxis=[];
|
||
var actualValue=0;
|
||
var targetValue=0;
|
||
var actualValueNum=0;
|
||
var targetValueNum=0;
|
||
var barcolor="#36BAFD";
|
||
for(var i=0;i<data.length;i++){
|
||
if(data[i].elementCode=="actualValue"){
|
||
if(actualValueNum==0){
|
||
barcolor="#3482FF";
|
||
}else if(actualValueNum==1){
|
||
barcolor="#C08F33";
|
||
}else if(actualValueNum==2||actualValueNum==3){
|
||
barcolor="#8D40CC";
|
||
}
|
||
actualValue=data[i].mPoint.parmvalue;
|
||
series.push({
|
||
name:data[i].name,
|
||
stack:data[i].name,
|
||
data: [actualValue],
|
||
yAxisIndex: actualValueNum,
|
||
type:'bar',
|
||
barWidth : 25,
|
||
barGap:1.8,
|
||
itemStyle:{
|
||
emphasis: {//柱形图圆角,鼠标移上去效果
|
||
color:barcolor,
|
||
barBorderRadius: [0, 0, 0, 0]
|
||
},
|
||
normal: {//柱形图圆角,初始化效果
|
||
color:barcolor,
|
||
barBorderRadius:[0, 0, 0, 0],
|
||
label: {
|
||
// formatter: "{a}",
|
||
formatter:function(params){ //标签内容
|
||
var name=params.seriesName.split("(");
|
||
return name[0];
|
||
},
|
||
show: true,
|
||
position: "bottom",
|
||
textStyle: {
|
||
// fontWeight: "bolder",
|
||
fontSize: "14",
|
||
color: "#FFFFFF"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
});
|
||
|
||
yAxis.push({
|
||
type:'value',
|
||
show:false
|
||
});
|
||
|
||
actualValueNum++;
|
||
}else if(data[i].elementCode=="targetValue"){
|
||
// console.log(actualValue);
|
||
var tdata=[];
|
||
if(Number(data[i].valueUrl)-actualValue>0){
|
||
tdata.push((Number(data[i].valueUrl)-actualValue).toFixed(2));
|
||
}else{
|
||
tdata.push(0);
|
||
}
|
||
series.push({
|
||
name:actualValue.toFixed(2),
|
||
data: tdata,
|
||
stack:data[i].name,
|
||
yAxisIndex: targetValueNum,
|
||
type:'bar',
|
||
barWidth : 25,
|
||
barGap:1.8,
|
||
itemStyle:{
|
||
emphasis: {//柱形图圆角,鼠标移上去效果
|
||
color:'gray',
|
||
barBorderRadius: [10, 10,0,0]
|
||
},
|
||
normal: {//柱形图圆角,初始化效果
|
||
color:'gray',
|
||
barBorderRadius:[10, 10,0,0],
|
||
label: {
|
||
formatter: "{a}",
|
||
show: true,
|
||
position: "top",
|
||
textStyle: {
|
||
// fontWeight: "bolder",
|
||
fontSize: "14",
|
||
color: "#FFFFFF"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
});
|
||
targetValueNum++;
|
||
}
|
||
}
|
||
|
||
mychart=echarts.init(document.getElementById('chart'));
|
||
var option = {
|
||
animation:false,
|
||
grid:{
|
||
// left: '1%', // 与容器左侧的距离
|
||
// right: '1%', // 与容器右侧的距离
|
||
top: '10%', // 与容器顶部的距离
|
||
bottom: '10%', // 与容器底部的距离
|
||
// containLabel:true
|
||
},
|
||
xAxis: {
|
||
type: 'category',
|
||
axisLabel: {
|
||
show: true,
|
||
align:'center',
|
||
textStyle: {
|
||
color: '#FFFFFF' //更改坐标轴文字颜色
|
||
}
|
||
},
|
||
axisLine:{
|
||
show:true,
|
||
lineStyle:{
|
||
color:'#3B415C', //更改坐标轴颜色
|
||
width: 2 // 粗细
|
||
}
|
||
},
|
||
axisTick: {
|
||
show: false
|
||
},
|
||
splitLine: {
|
||
show: false//是否显示分隔线。默认数值轴显示,类目轴不显示。
|
||
}
|
||
},
|
||
yAxis:yAxis,
|
||
series: series
|
||
};
|
||
// console.log(option);
|
||
mychart.setOption(option,true);
|
||
|
||
var textnum=data.length-actualValueNum;
|
||
var textHtml="";
|
||
for(var m=0;m<data.length;m++){
|
||
if(data[m].elementCode=="targetValue"){
|
||
textHtml+="<div style='float:left;width:100%;height: calc((100vh - 60px - 40px)/"+textnum+");'>";
|
||
textHtml+="<div style='float:left;width:100%;height: calc((100vh - 60px - 40px)/"+textnum+"/2);line-height: calc((100vh - 60px - 40px)/"+textnum+"/2);font-size: 18px;font-family: Helvetica;text-align: center;color: #ffffff;'>"+data[m].name+"</div>";
|
||
textHtml+="<div style='float:left;width:100%;height: calc((100vh - 60px - 40px)/"+textnum+"/2);line-height: calc((100vh - 60px - 40px)/"+textnum+"/2);font-size: 20px;font-family: Helvetica;text-align: center;color: #69F6F9;'>"+Number(data[m].valueUrl).toFixed(2)+"</div>";
|
||
// textHtml+="";
|
||
textHtml+="</div>";
|
||
}
|
||
}
|
||
$('#text').html(textHtml);
|
||
|
||
}
|
||
}, 'json');
|
||
}
|
||
|
||
/* 定时器 */
|
||
//setInterval(change, 60000); //每1分钟切换
|
||
setInterval(getValue, 3600000); //每一小时切换
|
||
|
||
/* 初始化 */
|
||
$(function () {
|
||
if('${param.backgroundColor}'=='transparent'){
|
||
document.body.style.backgroundColor = '${param.backgroundColor}';
|
||
}else{
|
||
document.body.style.backgroundColor = "#" + '${param.backgroundColor}';
|
||
}
|
||
document.getElementById("main").style.width = document.documentElement.clientWidth + "px";
|
||
document.getElementById("main").style.height = (document.documentElement.clientHeight-15) + "px";
|
||
|
||
document.getElementById("backImage").src = ""+getRootPath()+"/images/大屏/能耗管理.png";
|
||
|
||
getValue();
|
||
//console.log("height",document.body.scrollHeight);
|
||
});
|
||
|
||
</script>
|
||
|
||
</head>
|
||
|
||
<body style="width:100%;height:100%;margin:0;padding:0;overflow-x:hidden;overflow-y:hidden">
|
||
<div style="height:100%;width:100%;padding-top:15px;">
|
||
<div id="main" style="height:100%;width:100%;padding:0px;background:rgba(19,32,85,0.27);border-radius: 8px;">
|
||
<div style='float:left;width:50%;height:60px;'><img id="backImage" src="" style="z-index:-1;position:relative;height:100%;width:100%;"/></div>
|
||
<div style='float:left;width:50%;height:60px;'></div>
|
||
<div id="chart" style="float:left;width:70%;height: calc(100vh - 60px - 15px);"></div>
|
||
<div style="float:left;width:30%;height: calc(100vh - 60px - 10px);">
|
||
<div id="titletext" style="float:left;width:100%;height:20px;color:#69F6F9;font-size:18px;text-align: center;margin-bottom: 15px;">计划值(灰色)</div>
|
||
<div id="text" style="float:left;width:100%;height: calc(100vh - 60px - 50px);margin-top: -10px;"></div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</body>
|
||
|
||
</html> |