| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509 |
- layui.use('laydate', function () {
- var laydate = layui.laydate;
- var _layDateMark = (new Date()).getTime();
- $('#lineMonthSelectBox').attr('lay-key','11'+_layDateMark);
- //执行一个laydate实例
- laydate.render({
- elem: '#lineMonthSelectBox' //折线元素
- , type: 'month'
- , range: true
- , done: function (value, date) {
- if (value) {
- var dateArray = value.split(' - ')
- $('#lineEchartBegin').val(dateArray[0] + '-01');
- var endVal = dateArray[1].split('-');
- var endYear = endVal[0];
- var endMonth = endVal[1];
- if (endMonth == '01' || endMonth == '03' || endMonth == '05' || endMonth == '07' || endMonth == '08' || endMonth == '10' || endMonth == '12') {
- $('#lineEchartEnd').val(dateArray[1] + '-31')
- } else if (endMonth == '04' || endMonth == '06' || endMonth == '07' || endMonth == '11') {
- $('#lineEchartEnd').val(dateArray[1] + '-30')
- } else if (((endYear % 400) == 0) || ((endYear % 4 == 0) && (endYear % 100 != 0))) {
- $('#lineEchartEnd').val(dateArray[1] + '-29')
- } else {
- $('#lineEchartEnd').val(dateArray[1] + '-28')
- }
- } else {
- $('#lineEchartBegin').val('');
- $('#lineEchartEnd').val('');
- }
- }
- })
- $('#tableSelectBox').attr('lay-key','22'+_layDateMark);
- laydate.render({
- elem: '#tableSelectBox' //表格元素
- , range: true
- , done: function (value, date) {
- var dateArray = value.split(' - ')
- $('#tableEchartBegin').val(dateArray[0])
- $('#tableEchartEnd').val(dateArray[1])
- }
- })
- $('#downtimSelectBox').attr('lay-key','33'+_layDateMark);
- laydate.render({
- elem: '#downtimSelectBox' //指定元素
- , range: true
- , done: function (value, date) {
- var dateArray = value.split(' - ')
- $('#downbegin').val(dateArray[0])
- $('#downend').val(dateArray[1])
- }
- })
-
- });
- // 1基于准备好的dom,初始化echarts实例
- var lineChart = echarts.init(document.getElementById('line-chart'));
- // 指定图表的配置项和数据
- var lineOption = {
- title: {
- text: 'CPU温度(°C)',
- textStyle: {
- color: '#029eef'
- }
- },
- tooltip: {
- trigger: 'axis',
- formatter: function (params) {
- var returnData = '';
- var time = '';
- for (let g in params) {
- time = params[g].axisValue;
- returnData += params[g].seriesName + ':' + params[g].value + '°C';
- }
- return time + '<br/>' + returnData;
- }
- },
- legend: {
- data: ['CPU温度']
- },
- grid: {
- left: '3%',
- right: '4%',
- bottom: '3%',
- containLabel: true
- },
- toolbox: {
- feature: {
- // saveAsImage: {}
- }
- },
- xAxis: {
- type: 'category',
- boundaryGap: false,
- data: []
- },
- yAxis: {
- type: 'value',
- data: []
- },
- dataZoom: [{
- // startValue: '2014-06-01'
- }, {
- type: 'inside'
- }],
- series: [
- {
- name: 'CPU温度',
- type: 'line',
- data: [],
- itemStyle: {
- normal: {
- color: '#6ecdfe'
- }
- }
- }
- ]
- };
- // 2基于准备好的dom,初始化echarts实例
- var barChart = echarts.init(document.getElementById('bar-chart'));
- // 指定图表的配置项和数据
- var barOption = {
- title: {
- text: '信号强度',
- textStyle: {
- color: '#029eef'
- }
- },
- tooltip: {
- trigger: 'axis',
- formatter: function (params) {
- var returnData = '';
- var time = '';
- for (let g in params) {
- time = params[g].axisValue;
- returnData += params[g].seriesName + ':' + params[g].value;
- }
- return time + '<br/>' + returnData;
- }
- },
- legend: {
- data: ['信号强度']
- },
- grid: {
- left: '3%',
- right: '4%',
- bottom: '3%',
- containLabel: true
- },
- toolbox: {
- feature: {
- // saveAsImage: {}
- }
- },
- xAxis: {
- type: 'category',
- boundaryGap: false,
- data: []
- },
- yAxis: {
- type: 'value',
- data: []
- },
- dataZoom: [{
- // startValue: '2014-06-01'
- }, {
- type: 'inside'
- }],
- series: [
- {
- name: '信号强度',
- type: 'line',
- data: [],
- itemStyle: {
- normal: {
- color: '#6ecdfe'
- }
- }
- }
- ]
- };
- window.onresize = function () {
- //当窗口发生变化时图表显示
- lineChart.resize();
- barChart.resize();
- // pieChart.resize();
- }
- $(function () {
- var equip_id = document.getElementById("equip_id").value
- // var latV = document.getElementById("lat").value
- // var lngV = document.getElementById("lng").value
- // // 动态获取位置
- // if (lngV > 999) {
- // var lng = Math.floor(lngV / 100) + ((lngV % 100) / 60);
- // var lat = Math.floor(latV / 100) + ((latV % 100) / 60);
- // } else {
- // var lng = lngV;
- // var lat = latV;
- // }
- // var geoc = new BMap.Geocoder();
- // var pt = new BMap.Point(lng,lat);
- // geoc.getLocation(pt, function(rs){
- // var addComp = rs.addressComponents;
- // // $('.area').html('位置:'+ addComp.province + ", " + addComp.city + ", " + addComp.district)
- // $('#curr_area').html(addComp.province + ", " + addComp.city + ", " + addComp.district + ", " + addComp.street);
- // });
- //请求图表数据:
- $.ajax({
- url: 'rtu_chart',
- type: 'post',
- data: {
- req: 'data',
- id: equip_id,
- begin: '',
- end: ''
- },
- success: function (data) {
- sessionStorage.setItem("scdData", data);
- var temp = eval('(' + data + ')');
- var cpu = [], csq = [], time = []
- console.log(temp)
- for (var i = 0; i < temp.length; i++) {
- csq.unshift(Number(temp[i].csq).toFixed(1));
- cpu.unshift(Number(temp[i].cpu_tmp / 1000).toFixed(1));
- time.unshift(temp[i].tim);
- }
- console.log(cpu)
- // lineOption.series[0].data = csq;
- lineOption.series[0].data = cpu;
- lineOption.xAxis.data = time;
- if (!temp.length) {
- $('#line-chart').prev().html('暂无CPU温度数据').css('z-index', 99);
- } else {
- $('#line-chart').prev().html('').css('z-index', 0);
- }
- barOption.series[0].data = csq;
- barOption.xAxis.data = time;
- // 使用刚指定的配置项和数据显示图表。
- setTimeout(function () {
- lineChart.setOption(lineOption);
- barChart.setOption(barOption);
- })
- if (!temp.length) {
- $('#bar-chart').prev().html('暂无信号强度数据').css('z-index', 99);
- } else {
- $('#bar-chart').prev().html('').css('z-index', 0);
- }
- }
- })
- // 数据汇总
- $('#type').on('change', function () {
- var timeDat = [], valueDat = [];
- var type = $(this).val();
- var dat = JSON.parse(sessionStorage.getItem("scdData"));
- if (dat.length) {
- if (type == 2) {
- for (var j = 0; j < dat.length; j++) {
- timeDat.unshift(dat[j].tim);
- valueDat.unshift(dat[j].ct)
- }
- } else if (type == 3) {
- var prevTime = dat[0].tim.split(' ')[0]; //上一次日期 判断日期是否一样
- var currentVal = 0; //默认杀虫数
- for (var j = 0; j < dat.length; j++) {
- var currentTime = dat[j].tim.split(' ')[0];
- if (timeDat.indexOf(currentTime) == -1) {
- timeDat.unshift(currentTime);
- }
- if (prevTime == currentTime && j != dat.length - 1) {
- currentVal += dat[j].ct;
- } else if (prevTime == currentTime && j == dat.length - 1) {
- currentVal += dat[j].ct;
- valueDat.unshift(currentVal);
- } else if (prevTime != currentTime && j == dat.length - 1) {
- currentVal;
- valueDat.unshift(currentVal);
- valueDat.unshift(dat[j].ct);
- } else {
- valueDat.unshift(currentVal);
- prevTime = currentTime;
- currentVal = dat[j].ct;
- }
- }
- }else if (type == 4) {
- var prevTime = dat[0].tim.split(' ')[0].substring(0,7); //上一次日期 判断日期是否一样
- var currentVal = 0; //默认杀虫数
- for (var j = 0; j < dat.length; j++) {
- var currentTime = dat[j].tim.split(' ')[0].substring(0,7);
- if (timeDat.indexOf(currentTime) == -1) {
- timeDat.unshift(currentTime);
- }
- if (prevTime == currentTime && j != dat.length - 1) {
- currentVal += dat[j].ct;
- } else if (prevTime == currentTime && j == dat.length - 1) {
- currentVal += dat[j].ct;
- valueDat.unshift(currentVal);
- } else if (prevTime != currentTime && j == dat.length - 1) {
- currentVal;
- valueDat.unshift(currentVal);
- valueDat.unshift(dat[j].ct);
- } else {
- valueDat.unshift(currentVal);
- prevTime = currentTime;
- currentVal = dat[j].ct;
- }
- }
- }
- barOption.series[0].data = valueDat;
- barOption.xAxis.data = timeDat;
- setTimeout(function () {
- barChart.setOption(barOption);
- })
- }else{
- $('#bar-chart').prev().html('暂无击虫数据').css('z-index', 99);
- }
- })
- })
- function lineEchart_sub_filter() {
- var begin = $('#lineEchartBegin').val();
- var end = $('#lineEchartEnd').val();
- var id = $('#equip_id').val();
- if (begin) {
- // 请求折线图的搜索:
- $.ajax({
- url: 'rtu_chart',
- type: 'post',
- dataType: 'json',
- data: {
- req: "data",
- id: id,
- begin: begin,
- end: end
- },
- success: function (data) {
- sessionStorage.setItem("scdData", JSON.stringify(data));
- // console.log(data)
- var temp = data;
- var cpu = [], csq = [], time = []
- for (var i = 0; i < temp.length; i++) {
- csq.unshift(Number(temp[i].csq).toFixed(1));
- cpu.unshift(Number(temp[i].cpu_tmp / 1000).toFixed(1));
- time.unshift(temp[i].tim);
- }
- console.log(cpu)
- lineOption.series[0].data = cpu;
- lineOption.xAxis.data = time;
- if (!temp.length) {
- $('#line-chart').prev().html('暂无CPU温度数据').css('z-index', 99);
- $('#bar-chart').prev().html('暂无信号强度数据').css('z-index', 99);
- } else {
- $('#line-chart').prev().html('').css('z-index', 0);
- $('#bar-chart').prev().html('').css('z-index', 0);
- }
- barOption.series[0].data = csq;
- barOption.xAxis.data = time;
- // 使用刚指定的配置项和数据显示图表。
- setTimeout(function () {
- lineChart.setOption(lineOption);
- barChart.setOption(barOption);
- })
- }
- })
- } else {
- layer.msg('请输入时间段')
- }
- }
- function tableEchart_sub_filter() {
- var begin = $('#tableEchartBegin').val();
- var end = $('#tableEchartEnd').val();
- var id = $('#equip_id').val();
- if (begin) {
- // 请求表格数据搜索:
- $.ajax({
- url: 'rtu_data',
- type: 'post',
- dataType: 'json',
- data: {
- req: "filter",
- id: id,
- begin: begin,
- end: end,
- page: 1
- },
- success: function (data) {
- $("#datatable tr:not(:first)").html("");
- if (data.dat.length > 0) {
- datFill_Table('datatable', data.dat);
- $('#page').parent().show();
- } else {
- datFill_null_Table('datatable');
- $('#page').parent().hide();
- }
- if ($('.content').height() > 750) {
- $('#iframe-main', parent.document).css('height', $('.content').height() + 20)
- } else {
- $('#iframe-main', parent.document).css('height', '750px')
- }
- var datas = {
- req: "filter",
- id: id,
- begin: begin,
- end: end
- }
- initSearchPage(data.nums, 'scd_report_detail', datas);
- }
- })
- } else {
- layer.msg('请选择查询时间段')
- }
- }
- //表格数据筛选分页:
- function initSearchPage(page, url, datas) {
- console.log(page)
- layui.use('laypage', function () {
- var laypage = layui.laypage;
- laypage.render({
- elem: 'page' //注意,这里的 test1 是 ID,不用加 # 号
- // , count: 30
- , count: page
- , theme: '#428BCA'
- , layout: ['prev', 'page', 'next', 'skip']
- , jump: function (obj, first) {
- datas.page = obj.curr;
- if (!first) {
- $.ajax({
- url: url,
- type: 'post',
- data: datas,
- success: function (data) {
- $("#datatable tr:not(:first)").html("");
- var msg = $.parseJSON(data);
- if (msg.dat.length > 0) {
- datFill_Table('datatable', msg.dat)
- } else {
- datFill_null_Table('datatable', msg.dat)
- }
- if ($('.content').height() > 750) {
- $('#iframe-main', parent.document).css('height', $('.content').height() + 20)
- } else {
- $('#iframe-main', parent.document).css('height', '750px')
- }
- }
- })
- }
- }
- });
- });
- }
- // 窗口改变iframe高度改变
- $(window).resize(function () {
- if ($('.content').height() > 750) {
- $('#iframe-main', parent.document).css('height', $('.content').height() + 20)
- } else {
- $('#iframe-main', parent.document).css('height', '750px')
- }
- });
- function downtype(obj) {
- if ($(obj).val() == 2) {
- $('.timeStage').show();
- } else {
- $('.timeStage').hide();
- $('#downbegin').val('');
- $('#downend').val('');
- $('#downtimSelectBox').val('');
- }
- }
- // 判断主流浏览器
- function decideExport(){
- $('#myModal').modal('toggle')
- }
- //导出
- // function operation() {
- // if (!$('#filename').val()) {
- // layer.msg("请填写文件名!", { time: 2000 });
- // return false;
- // }
- // if ($('#downtype').val() == 2) {
- // if (!($('#downbegin').val() && $('#downbegin').val())) {
- // layer.msg("请选择时间段!", { time: 2000 });
- // return false;
- // }
- // }
- // window.location.href = 'scd_data_export?id='+$('#equip_id').val()+'&begin='+$('#downbegin').val()+'&end='+$('#downend').val()+'&filename='+$('#filename').val()
- // }
|