Files
SIPAIIS_WMS_JSSW/WebRoot/jsp/data/curveManageViewInMonth.jsp
2026-01-16 14:13:44 +08:00

373 lines
15 KiB
Plaintext
Raw Permalink Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<%@ 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"%>
<!DOCTYPE html>
<!-- <html lang="zh-CN"> -->
<!-- BEGIN HEAD -->
<head>
<title><%= ServerObject.atttable.get("TOPTITLE")%></title>
<!-- 引用页头及CSS页-->
<jsp:include page="/jsp/inc.jsp"></jsp:include>
<script type="text/javascript">
var beginTimeStore1 = '';
var endTimeStore1 = '';
var colors = ['#00c200', '#d14a61', '#675bba','#5793f3'];
function initDate1() {
//定义locale汉化插件
beginTimeStore1 = moment().subtract(7, 'days').format('YYYY-MM-DD HH:mm');;
endTimeStore1 = moment().format('YYYY-MM-DD HH:mm');
/* if(${param.sdt!=''}){
beginTimeStore1='2018-08-09';
}
if(${param.edt!=''}){
endTimeStore1='2018-08-10';
} */
var locale = {
"format": 'YYYY-MM-DD HH:mm',
"separator": " ~ ",
"applyLabel": "确定",
"cancelLabel": "取消",
"fromLabel": "起始时间",
"toLabel": "结束时间'",
"customRangeLabel": "自定义",
"weekLabel": "W",
"daysOfWeek": ["日", "一", "二", "三", "四", "五", "六"],
"monthNames": ["一月", "二月", "三月", "四月", "五月", "六月", "七月", "八月", "九月", "十月", "十一月", "十二月"],
"firstDay": 1
};
$('#reservationtime1').daterangepicker({
"timePicker": true,
"timePicker24Hour": true,
"linkedCalendars": false,
"autoUpdateInput": false,
"timePickerIncrement": 10,
"locale": locale,
//汉化按钮部分
ranges: {
'7天': [moment().subtract(7, 'days'), moment()],
'30天': [moment().subtract(30, 'days'), moment()],
},
startDate: beginTimeStore1,
endDate: endTimeStore1
}, function(start, end, label) {
beginTimeStore1 = start.format(this.locale.format);
endTimeStore1 = 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));
}
});
$('#reservationtime1').val(beginTimeStore1 + locale.separator + endTimeStore1);
//展示测量点曲线
getMpointJson();
};
var companyId="";
/* var editFun = function(id) {
$.post(ext.contextPath + '/data/showCurveView.do', {companyId:companyId,id:id} , function(data) {
$("#menuBox").html(data);
});
};
var initTreeView = function() {
$.post(ext.contextPath + '/data/getCurvesJson.do', {ng:''} , function(data) {
//console.info(data)
$('#tree').treeview({data: data
});
$('#tree').on('nodeSelected', function(event, data) {
editFun(data.id);
//var node=$('#tree').treeview('getSelected');
});
},'json');
$("#menuBox").html("");
}; */
var mpcodestr="";
var mpnamestr="";
var mpunitstr="";
var optionArr= new Array();
var colors = ['#00c200', '#d14a61', '#675bba','#5793f3'];
function getMpointJson(){
$.post(ext.contextPath +"/data/energyAnalysis/getMPointJson.do",{companyId:companyId,key:"${param.key}"},function(data){
//var rows = data.rows;
var ArrayDatas = eval("(" + data + ")").rows;
var mpcode = [];
for (var i=0;i<ArrayDatas.length;i++){
mpcode.push(ArrayDatas[i].mPoint.mpointcode);
mpcodestr+=ArrayDatas[i].mPoint.mpointcode+",";//测量点code
mpnamestr+=ArrayDatas[i].mPoint.parmname+",";//测量点名称
mpunitstr+=ArrayDatas[i].mPoint.unit+",";//测量点单位
}
console.log(mpcodestr);
getHistoryList(mpcodestr,mpnamestr);
getHistoryJsons(mpcodestr,mpnamestr,mpunitstr);
});
//console.log(idArr.length);
};
function getHistoryJsons(ids,names,units){
console.log(ids);
console.log(names);
console.log(units);
$.post(ext.contextPath +"/work/mpoint/getHistory.do",{bizId:companyId,ids:ids,sdt:beginTimeStore1,edt:endTimeStore1},function(data){
var ArrayDatas = eval("(" + data + ")");
console.log(ArrayDatas);
var measuredt = [];
var res = ArrayDatas[0];
for(var i=0;i<res.length;i++){
measuredt.push(res[i].measuredt.substring(0,16));
}
var parmvalue = [];
var mpnamestr = names.substring(0, names.length-1);
mpnamestr = mpnamestr.split(",");
var mpunitstr = units.substring(0, units.length-1);
mpunitstr = mpunitstr.split(",");
var offset=60;
var yaAxis=[];
var series=[];
for(var i=0;i<mpnamestr.length;i++){
var xobj = {};
xobj.type='value';
xobj.name=mpnamestr[i];
if(i==0){
xobj.position='left';
xobj.offset=0;
}else{
xobj.position='right';
xobj.offset=offset*(i-1);
}
var axisLine={};
var lineStyle={};
var length=mpnamestr.length-1;
lineStyle.color=colors[i%colors.length];
axisLine.lineStyle=lineStyle;
xobj.axisLine=axisLine;
var axisLabel={};
axisLabel.formatter='{value}'+mpunitstr[i];
xobj.axisLabel=axisLabel;
xobj.min= function(value){
return value.min;
}
yaAxis.push(xobj);
var yobj = {};
yobj.type='line';
yobj.name=mpnamestr[i];
yobj.yAxisIndex=i;
var data =[];
for(var j=0;j<measuredt.length;j++){
var resy = ArrayDatas[i];
data.push(resy[j].parmvalue);
}
yobj.data=data;
var markPoint={};
/* var str ='{"data": [{"type": "max", "name": "最大值", "itemStyle": {"color": "red"}},{"type": "min", "name": "最小值", "itemStyle": {"color": "green"}}]}';
yobj.markPoint=JSON.parse(str);
str ='{"data": [{"type": "average", "name": "平均值"}]}';
yobj.markLine=JSON.parse(str); */
series.push(yobj);
};
var option = {
color: colors,
tooltip: {
trigger: 'axis',
axisPointer: {
type: 'cross'
}
},
grid: {
right: '20%'
},
toolbox: {
feature: {
dataView: {show: false, readOnly: false},
restore: {show: false},
saveAsImage: {show: false}
}
},
legend: {
data:mpnamestr
},
xAxis: [
{
type: 'category',
axisTick: {
alignWithLabel: true
},
data: measuredt,
axisLabel: {
                    //interval: 1000,//横坐标间隔
                    rotate: 340,//横坐标倾斜角度
                    //倾斜度 -90 至 90 默认为0  
                   // margin: 2,
                   /* textStyle: {
                        fontWeight: "bolder",
                        color: "#000000"
                    } */
                },
}
],
yAxis:yaAxis,
series:series
};
var chart = document.getElementById("chart");
var number=mpnamestr.length;
console.log(offset);
//chart.style.width = $("#chartdiv").width()+offset*number+300+'px';
//chart.style.height = 250+'px';
$("#chart").height($("#chartdiv").height()-50);
$("#chart").width($("#chartdiv").width());
//$("#chart").width(700);
var chartData = echarts.init(chart);
//setTimeout(function(){
chartData.setOption(option);
});
}
function getHistoryList(ids,names){
var idarr = ids.substring(0, ids.length-1);
idarr = idarr.split(",");
var namearr = names.substring(0, names.length-1);
namearr = namearr.split(",");
console.log(idarr);
var length = idarr.length;
var mpoint = [];
var checkobx={};
checkobx.checkbox = true;
//mpoint.push(checkobx);
var measuredt={};
measuredt.field='measuredt';
measuredt.title='时间';
measuredt.align='center';
measuredt.valign='middle';
measuredt.width=150;
mpoint.push(measuredt);
for(var i=0;i<idarr.length;i++){
var color=colors[i%idarr.length];
var parmvalue={};
parmvalue.field = 'paramvalue'+i;
parmvalue.title=namearr[i];
parmvalue.align='center';
parmvalue.valign='middle';
//parmvalue.width=60;
var css1 = {};
css1.color = color;
var cellstyle = {};
cellstyle.css=css1;
parmvalue.cellStyle=cellstyle,
mpoint.push(parmvalue);
};
};
function dosearch(){
mpcodestr="";
mpnamestr="";
mpunitstr="";
optionArr= new Array();
getMpointJson();
}
$(function() {
$.post(ext.contextPath + "/user/getSearchBizsByUserId4Select.do", {}, function(data) {
if(data.length == 1){
//选择厂区为一个厂时隐藏选择框
$("#search_code").css("display", "none");
$("#company").text(data[0].text);
companyId=data[0].id;
}else{
$("#company").css("display", "none");
var selelct=$("#search_code").select2({
data : data ,
placeholder:'请先选择水厂',//默认文字提示
allowClear: true,//允许清空
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('').trigger("change");
//refreshSelect();
selelct.on("change",function(e){
companyId= $(this).val();
});
}
initDate1();
},'json');
//initTreeView();
});
</script>
</head>
<body onload="initMenu()" class="hold-transition ${cu.themeclass} sidebar-mini">
<div class="wrapper">
<!-- 引用top -->
<%-- <jsp:include page="/jsp/top.jsp"></jsp:include> --%>
<!-- 菜单栏 -->
<%-- <jsp:include page="/jsp/left.jsp"></jsp:include> --%>
<div class="content-wrapper">
<!-- Content Header (Page header) -->
<section class="content-header">
<h1 id ="head_title"></h1>
<ol class="breadcrumb">
<li><a id ='head_firstlevel' href="#"><i class="fa fa-dashboard"></i> </a></li>
<!-- <li class="active">Here</li> -->
</ol>
</section>
<!-- Main content -->
<section class="content container-fluid">
<div id="mainAlertdiv"></div>
<div id="subDiv"></div>
<div id="mpSubDiv"></div>
<div class="form-group">
<label class="form-label" id="companylabel">水厂:</label>
<label class="form-label" id="company" style="width:180px;border: none;background: transparent;" ></label>
<select class="form-control select2 " id="search_code" name ="search_code" style="width: 220px;"></select>
</div>
<div class="input-group pull-right input-group-sm" >
<input type="text" class="form-control pull-left" id="reservationtime1" style="width:225px">
<div class="input-group-btn pull-left">
<button type="button" class="btn btn-default" onclick="dosearch();" ><i class="fa fa-search"></i> 查询</button>
</div>
</div>
<div class="col-sm-12 col-md-12 col-lg-12 col-xl-12" style="height:450px;padding:0px;overflow:hidden;overflow-y:hidden" id="chartdiv">
<div id="chart" style=""></div>
</div>
</section>
<!-- /.content -->
</div>
<%-- <jsp:include page="/jsp/bottom.jsp"></jsp:include> --%>
<%-- <jsp:include page="/jsp/side.jsp"></jsp:include> --%>
</div>
</body>
<!-- echarts-->
<script type="text/javascript" src="<%=request.getContextPath()%>/plugins/echarts/echarts.js" charset="utf-8"></script>
<script type="text/javascript" src="<%=request.getContextPath()%>/plugins/echarts/macarons.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>
</html>