| | |
| | | this.cardData.temperature = conRes.data.condition.temp; |
| | | this.cardData.api = aqiRes.data.aqi.value; |
| | | this.cardData.pm25 = aqiRes.data.aqi.pm25; |
| | | this.http.get('/aqi/forecast24hours',{base: this.cardData.pm25,range: 10}).subscribe( |
| | | (res: any) => { |
| | | this.aqiEchartsIntance.setOption( |
| | | { |
| | | series: [{type: 'line', data: res}] |
| | | } |
| | | ) |
| | | } |
| | | ); |
| | | this.http.get('/aqi/forecast24hours',{base: this.cardData.temperature,range: 5}).subscribe( |
| | | (res: any) => { |
| | | this.meteEchartsIntance.setOption( |
| | | { |
| | | series: [{type: 'line', data: res}] |
| | | } |
| | | ) |
| | | } |
| | | ); |
| | | } |
| | | } |
| | | ); |
| | | this.http.get('/chart').subscribe((res: any) => { |
| | | // this.webSite = res.visitData.slice(0, 10); |
| | | this.salesData = res.salesData; |
| | | // this.offlineChartData = res.offlineChartData; |
| | | }); |
| | | this.http.get('/aqi/forecast24hours',{base: 25,range: 10}).subscribe( |
| | | (res: any) => { |
| | | this.aqiEchartsIntance.setOption( |
| | | { |
| | | series: [{type: 'line', data: res}] |
| | | } |
| | | ) |
| | | } |
| | | ); |
| | | this.http.get('/aqi/forecast24hours',{base: 30,range: 8}).subscribe( |
| | | (res: any) => { |
| | | this.meteEchartsIntance.setOption( |
| | | { |
| | | series: [{type: 'line', data: res}] |
| | | } |
| | | ) |
| | | } |
| | | ); |
| | | res.offlineData.forEach((item: any) => { |
| | | item.chart = Object.assign([], res.offlineChartData); |
| | | }); |
| | | this.data = res; |
| | | this.salesData = res.salesData; |
| | | this.loading = false; |
| | | this.changeSaleType(); |
| | | }); |
| | | |
| | | } |
| | | |
| | | public aqiChartOption = {}; |
| | |
| | | Object.assign( defaultOption, opt); |
| | | Object.assign(chartOption, defaultOption); |
| | | } |
| | | //---------mock------------------- |
| | | data: any = { |
| | | salesData: [], |
| | | offlineData: [] |
| | | }; |
| | | sort(sortName, sortValue) { |
| | | this.data.searchData = [ |
| | | ...(<any[]>this.data.searchData).sort((a, b) => { |
| | | if (a[ sortName ] > b[ sortName ]) { |
| | | return (sortValue === 'ascend') ? 1 : -1; |
| | | } else if (a[ sortName ] < b[ sortName ]) { |
| | | return (sortValue === 'ascend') ? -1 : 1; |
| | | } else { |
| | | return 0; |
| | | } |
| | | }) |
| | | ]; |
| | | } |
| | | loading = true; |
| | | salesType = 'all'; |
| | | salesPieData: any; |
| | | salesTotal = 0; |
| | | changeSaleType() { |
| | | this.salesPieData = this.salesType === 'all' ? this.data.salesTypeData : ( |
| | | this.salesType === 'online' ? this.data.salesTypeDataOnline : this.data.salesTypeDataOffline |
| | | ); |
| | | if (this.salesPieData) this.salesTotal = this.salesPieData.reduce((pre, now) => now.y + pre, 0); |
| | | } |
| | | } |