layui.use(['page','layer','myElement','myform','jquery','formula2','laydate','rptEditor2'], function () { var element =layui.myElement ,$=layui.jquery ,page=layui.page ,layer = layui.layer ,form=layui.myform ,formula=layui.formula2 ,laydate = layui.laydate ,editor=layui.rptEditor2 ; let nows=(page.getNow()).split("-"); form.val("my-query-form",{year:nows[0],month:parseInt(nows[1])}); laydate.render({ elem: '#year' ,type: 'year' }); $("button[lay-filter='savebtn']").on("click",function(){ var data=getSaveData(); data["year"]= $("#year").val(); data["month"]= $("#month").val(); saveSubmit(data); }); $("button[lay-filter='querybtn']").on("click",function(){ query(); }); $(".my-query-form").on("click",".layui-btn[lay-filter='clearbtn']",function(evn){ form.clear("my-query-form"); }); query(); function query(){ let year=$("#year").val(); if(year==""){ year=(new Date()).getFullYear()+""; } let month=$("#month").val(); querySumCompare(year,month); queryWYRatioCompare(year,month); loadCoalRatioRpt(year); loadCoalRatioChart(year); loadEnergyMthGroup(year); loadWorkloadRpt(year,month); loadWorkloadChart(year); loadCostRatioRpt(year,month); loadCostRatioChart(year,month); loadEnergyCompareRpt(year,month); loadEnergyCompareChart(year,month); } function saveSubmit(submitData){ page.ajax({ url:"rpt/saveWYRatioCompare.do", dataType:"json", data:submitData },function(resp){ layer.close(loading); if(resp.success){ layer.msg("操作成功!"); queryWYRatioCompare(submitData.year,submitData.month); } else{ layer.msg(resp.exception); } },function(){ layer.close(loading); layer.msg("网络请求出现错误"); }); loading = layer.msg('正在保存数据', {icon: 16, shade: 0.3, time:0}); } function getSaveData(){ var data={}; $("#ratioCompareTab").find(".editable").each(function(idx,itm){ data[$(itm).data("field")]=$(itm).find(".rpt-table-cell").text(); }); return data; } //占比同比报表 function queryWYRatioCompare(yyyy,mm){ page.ajax({ url:"rpt/yearWYRatioCompare.do", dataType:"text", data:{year:yyyy,month:mm} },function(resp){ layer.close(loading); if(resp.indexOf("rpt-table-box")>=0){ $("#ratioRpt").html(resp); formula.start($("#ratioRpt").find(".rpt-table-main>.rpt-table")); rptSizing($,$("#ratioRpt")); return; } var respObj=JSON.parse(resp); if(respObj.success!=null&&respObj.success==false){ layer.msg(respObj.exception); } },function(){ layer.close(loading); layer.msg("网络请求出现错误"); }); } //总量同比 function querySumCompare(yyyy,mm){ page.ajax({ url:"rpt/yearSumCompare.do", dataType:"text", data:{year:yyyy,month:mm} },function(resp){ layer.close(loading); if(resp.indexOf("rpt-table-box")>=0){ $("#sumRpt").html(resp); formula.start($("#sumRpt").find(".rpt-table-main>.rpt-table")); rptSizing($,$("#sumRpt")); return; } var respObj=JSON.parse(resp); if(respObj.success!=null&&respObj.success==false){ layer.msg(respObj.exception); } },function(){ layer.close(loading); layer.msg("网络请求出现错误"); }); loading = layer.msg('正在加载数据', {icon: 16, shade: 0.3, time:0}); } //用能用水 耗量同比 function loadEnergyCompareRpt(yyyy,mm){ page.ajax({ dataType:"text", url:"home/rpt/energyCompareRpt.do", data:{type:"grid",year:yyyy,month:mm} },function(resp){ if(resp.indexOf("rpt-table-box")>=0){ $("#energyComparebox").html(resp); formula.start($("#energyComparebox").find(".rpt-table-main>.rpt-table")); rptSizing($,$("#energyComparebox")); return; } },function(){ layer.msg("网络请求出现错误"); }); } function loadEnergyCompareChart(yyyy,mm){ page.ajax({ dataType:"json", url:"home/rpt/energyCompareRpt.do", data:{type:"chart",year:yyyy,month:mm} },function(resp){ if(!resp.success){ layer.msg(resp.exception); } else{ var yearData=resp.data.yearSum; var ary1=[yearData.wpg.ngasCount,yearData.wpg.powerCount,yearData.oilTotal,yearData.coilTotal,yearData.wpg.lgasCount,yearData.coals,yearData.wpg.waterCount]; yearData=resp.data.preYearSum; var ary2=[yearData.wpg.ngasCount,yearData.wpg.powerCount,yearData.oilTotal,yearData.coilTotal,yearData.wpg.lgasCount,yearData.coals,yearData.wpg.waterCount]; createEnergyCompareChart($,"energyCompareChartbox",ary1,ary2); } },function(){ layer.msg("网络请求出现错误"); }); } //加载工作量统计数据 function loadWorkloadRpt(yyyy,mm){ page.ajax({ dataType:"text", url:"home/rpt/workloadRpt.do", data:{year:yyyy,month:mm} },function(resp){ if(resp.indexOf("rpt-table-box")>=0){ $("#workloadbox").html(resp); formula.start($("#workloadbox").find(".rpt-table-main>.rpt-table")); rptSizing($,$("#workloadbox")); return; } },function(){ layer.msg("网络请求出现错误"); }); } function loadWorkloadChart(yyyy){ page.ajax({ dataType:"json", url:"home/rpt/workloadRptChart.do", data:{year:yyyy} },function(resp){ if(!resp.success){ layer.msg(resp.exception); } else{ //createChart($,"workloadChartbox",resp.data.wc,resp.data.prewc); create2SeriesChart($,"workloadChartbox",resp.data.wc,resp.data.prewc,"井次"); } },function(){ layer.msg("网络请求出现错误"); }); } //用能用水费用占比统计 function loadCostRatioRpt(yyyy,mm){ page.ajax({ dataType:"text", url:"home/rpt/costRatioRpt.do", data:{type:"grid",year:yyyy,month:mm} },function(resp){ if(resp.indexOf("rpt-table-box")>=0){ $("#costRatiobox").html(resp); formula.start($("#costRatiobox").find(".rpt-table-main>.rpt-table")); rptSizing($,$("#costRatiobox")); return; } },function(){ layer.msg("网络请求出现错误"); }); } function loadCostRatioChart(yyyy,mm){ page.ajax({ dataType:"json", url:"home/rpt/costRatioRpt.do", data:{type:"chart",year:yyyy,month:mm} },function(resp){ if(!resp.success){ layer.msg(resp.exception); } else{ var yearData=resp.data.yearSum; var ary1=[yearData.wpg.ngasCost,yearData.wpg.powerCost,yearData.erpkl.oilMoney,yearData.erpkl.coilMoney,yearData.wpg.lgasCost]; yearData=resp.data.preYearSum; var ary2=[yearData.wpg.ngasCost,yearData.wpg.powerCost,yearData.erpkl.oilMoney,yearData.erpkl.coilMoney,yearData.wpg.lgasCost]; createCostRatioChart($,"costRatioChartbox",ary1,ary2); } },function(){ layer.msg("网络请求出现错误"); }); } //用能折算标准煤占比 function loadCoalRatioRpt(yyyy){ page.ajax({ dataType:"text", url:"home/rpt/coalRatioRpt.do", data:{type:"grid",year:yyyy} },function(resp){ if(resp.indexOf("rpt-table-box")>=0){ $("#coalRatiobox").html(resp); formula.start($("#coalRatiobox").find(".rpt-table-main>.rpt-table")); rptSizing($,$("#coalRatiobox")); return; } },function(){ layer.msg("网络请求出现错误"); }); } function loadCoalRatioChart(yyyy){ page.ajax({ dataType:"json", url:"home/rpt/coalRatioRpt.do", data:{type:"chart",year:yyyy} },function(resp){ if(!resp.success){ layer.msg(resp.exception); } else{ var yearData=resp.data.yearSum; var chartData=[]; chartData.push({name:"天然气",value:yearData.wpg.ngasCoal||0}); chartData.push({name:"电",value:yearData.wpg.powerCoal||0}); chartData.push({name:"液化气",value:yearData.wpg.lgasCoal||0}); chartData.push({name:"汽油",value:yearData.erpkl.oilCoal||0}); chartData.push({name:"柴油",value:yearData.erpkl.coilCoal||0}); createCoalRatioChart($,"coalRatioChartbox",chartData); } },function(){ layer.msg("网络请求出现错误"); }); } //用能用水按月统计 function loadEnergyMthGroup(yyyy){ page.ajax({ dataType:"text", url:"home/rpt/energyMonthCost.do", data:{year:yyyy} },function(resp){ if(resp.indexOf("rpt-table-box")>=0){ $("#energyMthGroupbox").html(resp); formula.start($("#energyMthGroupbox").find(".rpt-table-main>.rpt-table")); rptSizing($,$("#energyMthGroupbox")); loadEnergyMthGroupChart(yyyy); return; } },function(){ layer.msg("网络请求出现错误"); }); } function decimalFormat(data,decimal){ return data==null?null:data.toFixed(decimal); } function getDFData(pdata,key1,key2,decimal){ if(!pdata[key1]||!pdata[key1][key2]){ return null; } return decimalFormat(pdata[key1][key2],decimal); } //用能用水按月统计图,绘制前先获取去年的数据 function loadEnergyMthGroupChart(yyyy){ var preYear=parseInt(yyyy)-1; page.ajax({ dataType:"json", url:"home/rpt/energyMonthCost.do", data:{type:"chart",year:preYear} },function(resp){ if(!resp.success){ return; } var preData=resp.data; var mths=["01","02","03","04","05","06","07","08","09","10","11","12"]; var ngas=[],power=[],oil=[],coil=[],lgas=[],coal=[],water=[],coil100km=[],coilWellCount=[],oil100km=[],oilWellCount=[],engineWellCount=[],engineCostTon=[]; for(var m=0,len=mths.length;m.rpt-table"); var yunit=null,dataSort=null,chartboxId=null; var datas=null; $tab.find("tr").each(function(idx,tr){ datas=[]; dataSort=$(tr).data("sort"); $(tr).find("td").each(function(i,td){ if(i==0){ yunit=$(td).find(".rpt-table-cell").text(); } else{ datas.push($(td).find(".rpt-table-cell").text()); } }); chartboxId=$("div[data-chart='"+dataSort+"']")[0].id; if(yunit.indexOf("天然气")>=0){ createMonthGrpNgasChart($,chartboxId,datas,dataMap[dataSort],yunit); } else{ create2SeriesChart($,chartboxId,datas,dataMap[dataSort],yunit); } }); } }); function createCoalRatioChart($,id,dataAry){ var myChart = echarts.init($('#'+id)[0],'light'); var option = { color: ['#003366', '#e5323e','#108f83','#05b90e','#d9b50c'], tooltip: { trigger: 'item', formatter: '{a}
{b} : {c} ({d}%)' }, series: [ { name: '能耗折算标准煤', type: 'pie', radius: '55%', center: ['50%', '50%'], //roseType: 'radius', data: dataAry.sort(function (a, b) { return a.value - b.value; }), emphasis: { itemStyle: { shadowBlur: 10, shadowOffsetX: 0, shadowColor: 'rgba(0, 0, 0, 0.5)' } } } ] }; myChart.setOption(option); } function createEnergyCompareChart($,id,ary1,ary2){ var myChart = echarts.init($('#'+id)[0],'light'); var option = { color: ['#003366', '#e5323e'], legend:{ icon:'circle', bottom:0, textStyle:{ color:'#666' } }, tooltip: { trigger: 'axis', axisPointer: { // 坐标轴指示器,坐标轴触发有效 type: 'shadow' // 默认为直线,可选为:'line' | 'shadow' } }, grid: { left: '3%', right: '4%', bottom: '30', containLabel: true }, xAxis: [ { type: 'category', data: ['天然气', '电', '汽油', '柴油', '液化气','标煤','水'], axisTick: { alignWithLabel: true } } ], yAxis: [ { type: 'value', name:'消耗量' } ], series: [ { name: '本年累计', type: 'bar', barGap: 0, data: ary1 }, { name: '去年同期累计', type: 'bar', data: ary2 } ] }; myChart.setOption(option); } function createCostRatioChart($,id,ary1,ary2){ var myChart = echarts.init($('#'+id)[0],'light'); var option = { color: ['#003366', '#e5323e'], legend:{ icon:'circle', bottom:0, textStyle:{ color:'#666' } }, tooltip: { trigger: 'axis', axisPointer: { // 坐标轴指示器,坐标轴触发有效 type: 'shadow' // 默认为直线,可选为:'line' | 'shadow' } }, grid: { left: '3%', right: '4%', bottom: '30', containLabel: true }, xAxis: [ { type: 'category', data: ['天然气', '电', '汽油', '柴油', '液化气'], axisTick: { alignWithLabel: true } } ], yAxis: [ { type: 'value', name:'消耗费用(万元)' } ], series: [ { name: '本年累计', type: 'bar', barGap: 0, data: ary1 }, { name: '上年同期累计', type: 'bar', data: ary2 } ] }; myChart.setOption(option); } function createChart($,id,ary1,ary2){ for(var i=0,len=ary1.length;i"; for (var i = 0; i < params.length; i++) { if (params[i].data != undefined) { res += "

" + params[i].marker + params[i].seriesName + ":" + params[i].data + "

"; } } return res; } }, textStyle: { color: 'rgba(0, 0, 0, 0.9)' }, xAxis: { type: 'category', boundaryGap: false, axisLine:{ lineStyle:{ color:'#406f9f' } }, data: ['1','2','3','4','5','6', '7', '8', '9', '10', '11', '12'] }, yAxis: { type: 'value', name:'井次', axisLine:{ lineStyle:{ color:'#406f9f' } }, splitLine:{ lineStyle:{ color:'#4e8dcc' } } }, series: [ { name: '本年', type: 'line', //stack: '总量', data:ary1 }, { name: '上一年', type: 'line', //stack: '总量', data: ary2 }] }; myChart.setOption(option); /*setTimeout(function (){ window.onresize = function () { myChart.resize(); } },200);*/ // setTimeout(function(){myChart.resize();},200); } function createMonthGrpNgasChart($,id,ary1,ary2,yUnit){ var myChart = echarts.init($('#'+id)[0],'light'); var option = { color: ['#003366', '#e5323e'], legend:{ icon:'circle', bottom:0, textStyle:{ color:'#666' } }, tooltip: { trigger: 'axis', axisPointer: { // 坐标轴指示器,坐标轴触发有效 type: 'shadow' // 默认为直线,可选为:'line' | 'shadow' } }, grid: { left: '3%', right: '4%', bottom: '30', containLabel: true }, xAxis: [ { type: 'category', data: ['1','2','3','4','5','6', '7', '8', '9', '10', '11', '12'], axisTick: { alignWithLabel: true } } ], yAxis: [ { type: 'value', name:yUnit } ], series: [ { name: '本年', type: 'bar', barGap: 0, data: ary1 }, { name: '上一年', type: 'bar', data: ary2 } ] }; myChart.setOption(option); } function create2SeriesChart($,id,ary1,ary2,yunit){ ary1=ary1||[]; ary2=ary2||[]; for(var i=0,len=ary1.length;i"; for (var i = 0; i < params.length; i++) { if (params[i].data != undefined) { res += "

" + params[i].marker + params[i].seriesName + ":" + params[i].data + "

"; } } return res; } }, textStyle: { color: 'rgba(0, 0, 0, 0.9)' }, xAxis: { type: 'category', boundaryGap: false, axisLine:{ lineStyle:{ color:'#406f9f' } }, data: ['1','2','3','4','5','6', '7', '8', '9', '10', '11', '12'] }, yAxis: { type: 'value', name:yunit, axisLine:{ lineStyle:{ color:'#406f9f' } }, splitLine:{ lineStyle:{ color:'#4e8dcc' } } }, series: [ { name: "本年", type: 'line', connectNulls:true, data:ary1 }, { name: "上一年", type: 'line', connectNulls:true, data:ary2 }] }; myChart.setOption(option); }