From df1c052d1f0d368cb78ebb1831980745bca11edc Mon Sep 17 00:00:00 2001
From: liuyg <376836862@qq.com>
Date: Thu, 10 Jun 2021 11:56:18 +0800
Subject: [PATCH] 数据图表的查询渲染
---
widgets/searchTabaPopup/Widget.js | 195 +++++++++++++++++++++++++++++++++++++-----------
1 files changed, 150 insertions(+), 45 deletions(-)
diff --git a/widgets/searchTabaPopup/Widget.js b/widgets/searchTabaPopup/Widget.js
index af7e4d3..626da8c 100644
--- a/widgets/searchTabaPopup/Widget.js
+++ b/widgets/searchTabaPopup/Widget.js
@@ -29,8 +29,32 @@
layers: {},
startup: function () {
// 暴露在外的接
+ var that = this;
$('.cloce').click(() => {
$('.jimu-widget-searchTabaPopup').css({ 'display': 'none' })
+ })
+
+ $('.jimu-widget-searchTabaPopup').find('#query').click(() => {
+ if (that.times[0] != 1) {
+ // console.log(that.times);
+ var stcd = $('.jimu-widget-searchTabaPopup').find('#userMyStcd').val()
+ console.log(stcd);
+ that.getOurData(that.times, stcd);
+ } else {
+ layui.use(function () { //亦可加载特定模块:layui.use(['layer', 'laydate', function(){
+ //得到各种内置组件
+ var layer = layui.layer //弹层
+ // layer.msg('请先填写关键字', { icon: 1, time: 1000, shift: 6 });
+ layer.tips('请先选择时间', '#query', {
+ tips: [1, '#FF5722']
+ });
+ })
+ }
+ })
+
+ $('.jimu-widget-searchTabaPopup').find('#empty').click(() => {
+ $('.myCHosetimeinput').val("");
+ that.times = [1];
})
},
@@ -42,6 +66,7 @@
},
onOpen: function () {
+ var that = this;
// $('.jimu-widget-searchTabaPopup').css({ 'display': 'block' });
// $('.jimu-widget-searchTabaPopup').find('.p-main').eq(1).css({ 'display': 'block' }).siblings().css({ 'display': 'none' });
this.creMyEcharts();
@@ -49,20 +74,130 @@
var laydate = layui.laydate;
laydate.render({
- elem: '#test6'
+ elem: '#time6'
//设置开始日期、日期日期的 input 选择器
+ , type: 'datetime'
//数组格式为 2.6.6 开始新增,之前版本直接配置 true 或任意分割字符即可
, range: ['#test-startDate-1', '#test-endDate-1']
+ , done: function (value, date) {
+ let begintime = value.substring(0, 19),
+ endtime = value.substring(22);
+ that.times = [begintime, endtime];
+ // console.log(that.times)
+ }
});
+ // laydate.render({
+ // elem: '#test6'
+ // ,type: 'datetime'
+ // ,range: true
+ // });
});
this.getEchartsData();
},
+ times: [1],
myChart: '',
+ myChart1: '',
+ myChart2: '',
creMyEcharts: function (id) {
var dom = document.getElementById('popup-threse-shuiwenEcharts');
this.myChart = echarts.init(dom);
+ var dom = document.getElementById('popup-threse-shuiwenEcharts1');
+ this.myChart1 = echarts.init(dom);
+ var dom = document.getElementById('popup-threse-shuiwenEcharts2');
+ this.myChart2 = echarts.init(dom);
},
- getEchartsData: function () {
+ getOurData: function (time, stcd) {
+ console.log(time)
+ var that = this
+ , url = `http://171.34.76.171:8880/pyh-station/monitorData/queryStationHistoryMonitorData?stcd=${stcd}&startTime=${time[0]}&endTime=${time[1]}`,
+ token = 'Bearer eyJhbGciOiJIUzUxMiJ9.eyJpc3MiOiJlY2hpc2FuIiwic3ViIjoiYWRtaW4iLCJpYXQiOjE2MjMyNDQxNDQsImV4cCI6MTYyNTgzNjE0NH0.wjtMw7hv8IYGxFKI9b1vo2ozMXD1pE0-02HinfPl-r8l0TYVg1YvMBxW_VzzFKoY1jeC6XByQQT-aC_mAvBnWA';
+ axios.get(url, {
+ headers: {
+ 'token': token
+ }
+ }).then((res) => {
+ if (res.data.code == 200) {
+ var shui = res.data.data.MONITOR_WATER//水文
+ , legendData = []
+ , xData = []
+ , seriesData = [];
+ for (var k in shui) {
+ legendData.push(shui[k].name);
+ var once = {
+ name: shui[k].name,
+ type: 'line',
+ stack: '总量',
+ data: [],
+ }
+ var onS = shui[k].valList;
+ for (var o in onS) {
+ once.data.push(onS[o].value);
+ }
+ seriesData.push(once);
+ }
+ var ins = shui[0].valList;
+ for (var i in ins) {
+ xData.push(ins[i].startTime);
+ }
+ that.getEchartsData(legendData, xData, seriesData, 1);//水文
+
+ var air = res.data.data.MONITOR_AIR//空气
+ , legendDataair = []
+ , xDataair = []
+ , seriesDataair = [];
+ for (var k in air) {
+ legendDataair.push(air[k].name);
+ var once = {
+ name: air[k].name,
+ type: 'line',
+ stack: '总量',
+ data: [],
+ }
+ var onS = air[k].valList;
+ for (var o in onS) {
+ once.data.push(onS[o].value);
+ }
+ seriesDataair.push(once);
+ }
+ var ins = air[0].valList;
+ for (var i in ins) {
+ xDataair.push(ins[i].startTime);
+ }
+ // console.log(shui);
+ // console.log(seriesData);
+ // 渲染图表
+ that.getEchartsData(legendDataair, xDataair, seriesDataair, 2);//空气
+
+ var qi = res.data.data.MONITOR_WEATHER//气象
+ , legendDataqi = []
+ , xDataqi = []
+ , seriesDataqi = [];
+ for (var k in qi) {
+ legendDataqi.push(qi[k].name);
+ var once = {
+ name: qi[k].name,
+ type: 'line',
+ stack: '总量',
+ data: [],
+ }
+ var onS = qi[k].valList;
+ for (var o in onS) {
+ once.data.push(onS[o].value);
+ }
+ seriesDataqi.push(once);
+ }
+ var ins = qi[0].valList;
+ for (var i in ins) {
+ xDataqi.push(ins[i].startTime);
+ }
+ // console.log(shui);
+ // console.log(seriesData);
+ // 渲染图表
+ that.getEchartsData(legendDataqi, xDataqi, seriesDataqi, 3);//气象
+ }
+ })
+ },
+ getEchartsData: function (l, x, s, i) {
var that = this;
var option;
@@ -82,62 +217,32 @@
trigger: 'axis'
},
legend: {
- data: ['邮件营销', '联盟广告', '视频广告', '直接访问', '搜索引擎']
+ data: l
+ // data: ['邮件营销', '联盟广告', '视频广告', '直接访问', '搜索引擎']
},
grid: {
- left: '3%',
- right: '4%',
+ left: '1%',
+ right: '3%',
bottom: '12%',
containLabel: true
},
- // toolbox: {
- // feature: {
- // saveAsImage: {}
- // }
- // },
xAxis: {
type: 'category',
boundaryGap: false,
- data: ['周一', '周二', '周三', '周四', '周五', '周六', '周日']
+ data: x
},
yAxis: {
type: 'value'
},
- series: [
- {
- name: '邮件营销',
- type: 'line',
- stack: '总量',
- data: [120, 132, 101, 134, 90, 230, 210]
- },
- {
- name: '联盟广告',
- type: 'line',
- stack: '总量',
- data: [220, 182, 191, 234, 290, 330, 310]
- },
- {
- name: '视频广告',
- type: 'line',
- stack: '总量',
- data: [150, 232, 201, 154, 190, 330, 410]
- },
- {
- name: '直接访问',
- type: 'line',
- stack: '总量',
- data: [320, 332, 301, 334, 390, 330, 320]
- },
- {
- name: '搜索引擎',
- type: 'line',
- stack: '总量',
- data: [820, 932, 901, 934, 1290, 1330, 1320]
- }
- ]
+ series: s,
};
-
- option && that.myChart.setOption(option);
+ if (i == 1) {
+ option && that.myChart.setOption(option);
+ } else if (i == 2) {
+ option && that.myChart1.setOption(option);
+ } else if (i == 3) {
+ option && that.myChart2.setOption(option);
+ }
},
onClose: function () {
//面板关闭的时候触发 (when this panel is closed trigger)
--
Gitblit v1.9.3