|
|
|
@ -1,4 +1,8 @@
|
|
|
|
|
import { Component, OnInit } from '@angular/core'; |
|
|
|
|
import { Router } from '@angular/router'; |
|
|
|
|
import {EchartsDataService} from '../echarts-data.service' |
|
|
|
|
import { MatDialog } from '@angular/material/dialog'; |
|
|
|
|
declare var echarts: any; |
|
|
|
|
|
|
|
|
|
@Component({ |
|
|
|
|
selector: 'app-scheduled-updates', |
|
|
|
@ -7,9 +11,738 @@ import { Component, OnInit } from '@angular/core';
|
|
|
|
|
}) |
|
|
|
|
export class ScheduledUpdatesComponent implements OnInit { |
|
|
|
|
|
|
|
|
|
constructor() { } |
|
|
|
|
constructor(private router: Router) { } |
|
|
|
|
|
|
|
|
|
ngOnInit(): void { |
|
|
|
|
window.setTimeout(()=>{ |
|
|
|
|
this.initCharts() |
|
|
|
|
}) |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
/* 首页饼状图 */ |
|
|
|
|
initCharts(){ |
|
|
|
|
var indexBzt = echarts.init(document.getElementById('center')); |
|
|
|
|
var options={ |
|
|
|
|
title: { |
|
|
|
|
text: '计划更新统计(7100家)', |
|
|
|
|
padding:[80,100], |
|
|
|
|
left: 'center', |
|
|
|
|
textStyle:{ |
|
|
|
|
fontSize:34 |
|
|
|
|
} |
|
|
|
|
}, |
|
|
|
|
tooltip: { |
|
|
|
|
trigger: 'item', |
|
|
|
|
formatter: (params)=>{ |
|
|
|
|
// return this.biaogeTishi(params.name)
|
|
|
|
|
} , |
|
|
|
|
backgroundColor:'rgba(255,255,255,1)',//通过设置rgba调节背景颜色与透明度
|
|
|
|
|
borderWidth:'1', |
|
|
|
|
borderRadius :'0' |
|
|
|
|
}, |
|
|
|
|
legend: { |
|
|
|
|
orient: 'vertical', |
|
|
|
|
right: 150, |
|
|
|
|
top:80, |
|
|
|
|
itemWidth:60, |
|
|
|
|
itemHeight:25, |
|
|
|
|
textStyle:{ |
|
|
|
|
fontSize:28 |
|
|
|
|
}, |
|
|
|
|
data: ['已核查无需修改', '已核查修改中', '已核查提交审核', '未核查'] |
|
|
|
|
}, |
|
|
|
|
series: [{
|
|
|
|
|
name: '访问来源', |
|
|
|
|
type: 'pie', |
|
|
|
|
radius: '65%', |
|
|
|
|
center: ['50%', '60%'], |
|
|
|
|
label:{ |
|
|
|
|
normal:{ |
|
|
|
|
show:true, |
|
|
|
|
position: 'inner', |
|
|
|
|
fontSize:18, |
|
|
|
|
formatter:'{d}% ({c}家)' |
|
|
|
|
}}, |
|
|
|
|
data: [ |
|
|
|
|
{value: 2000, name: '已核查无需修改'}, |
|
|
|
|
{value: 2500, name: '已核查修改中',itemStyle:{color:'#02A7F0'}}, |
|
|
|
|
{value: 1900, name: '已核查提交审核',itemStyle:{color:'#87cebb'}}, |
|
|
|
|
{value: 700, name: '未核查'},], |
|
|
|
|
emphasis: { |
|
|
|
|
itemStyle: { |
|
|
|
|
shadowBlur: 10, |
|
|
|
|
shadowOffsetX: 0, |
|
|
|
|
shadowColor: 'rgba(0, 0, 0, 0.5)' |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
}] |
|
|
|
|
}; |
|
|
|
|
indexBzt.setOption(options); |
|
|
|
|
indexBzt.on('click', (params) => { |
|
|
|
|
this.router.navigateByUrl('/statisticanalysis/scheduledUpdates/PublicEcharts'); |
|
|
|
|
}); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@Component({ |
|
|
|
|
selector: 'app-publicEcharts', |
|
|
|
|
templateUrl: './publicEcharts.html', |
|
|
|
|
styleUrls: ['../state/page-two-time/page-two-time.component.scss'] |
|
|
|
|
}) |
|
|
|
|
export class publicEchartsComponent implements OnInit { |
|
|
|
|
|
|
|
|
|
constructor(private router: Router,public echartsData:EchartsDataService,public dialog: MatDialog,) { } |
|
|
|
|
|
|
|
|
|
ngOnInit(): void { |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
isToggle:boolean = true; // 已核查/未核查
|
|
|
|
|
|
|
|
|
|
//已核查
|
|
|
|
|
verified () { |
|
|
|
|
this.isToggle = true |
|
|
|
|
this.echartsData.scheduledUpdatesToggle = true |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
//未核查
|
|
|
|
|
notVerified () { |
|
|
|
|
this.isToggle = false |
|
|
|
|
this.echartsData.scheduledUpdatesToggle = true |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
//更多 窗口
|
|
|
|
|
moreOpen () { |
|
|
|
|
let dialogRef = this.dialog.open(moreTableComponent); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//已核查组件
|
|
|
|
|
@Component({ |
|
|
|
|
selector: 'app-verified', |
|
|
|
|
templateUrl: './verified.html', |
|
|
|
|
styleUrls: ['../state/page-two-time/page-two-time.component.scss'] |
|
|
|
|
}) |
|
|
|
|
export class verifiedComponent implements OnInit { |
|
|
|
|
|
|
|
|
|
constructor(private router: Router,public echartsData:EchartsDataService) { } |
|
|
|
|
|
|
|
|
|
ngOnInit(): void { |
|
|
|
|
window.setTimeout(()=>{ |
|
|
|
|
this.oneInit() |
|
|
|
|
this.twoInit() |
|
|
|
|
},0) |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
ngOnDestroy () { |
|
|
|
|
this.oneEcharts.clear() |
|
|
|
|
this.items.forEach((element,index) => { |
|
|
|
|
element.echart.clear() |
|
|
|
|
}); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
oneEcharts:any; |
|
|
|
|
oneInit () { |
|
|
|
|
this.oneEcharts = echarts.init(document.getElementById('center'), 'skinUpp'); |
|
|
|
|
var option = { |
|
|
|
|
grid: { |
|
|
|
|
top: 50, |
|
|
|
|
left:40, |
|
|
|
|
right: 20, |
|
|
|
|
bottom: 20, |
|
|
|
|
}, |
|
|
|
|
// 标题
|
|
|
|
|
title: { |
|
|
|
|
text: '已核查', |
|
|
|
|
top: -4, |
|
|
|
|
left: 'center', |
|
|
|
|
textStyle:{ |
|
|
|
|
//文字颜色
|
|
|
|
|
color:'#000', |
|
|
|
|
fontSize: 22, |
|
|
|
|
} |
|
|
|
|
}, |
|
|
|
|
//提示框
|
|
|
|
|
tooltip: { |
|
|
|
|
trigger: 'axis', |
|
|
|
|
}, |
|
|
|
|
// x轴
|
|
|
|
|
xAxis: { |
|
|
|
|
type: 'category', |
|
|
|
|
data: ['1月', '2月', '3月', '4月', '5月', '6月', '7月', '8月','9月','10月','11月','12月'], |
|
|
|
|
boundaryGap: false, |
|
|
|
|
axisLabel: { |
|
|
|
|
color: "#000", //刻度线标签颜色
|
|
|
|
|
}, |
|
|
|
|
//设置坐标轴字体颜色和宽度
|
|
|
|
|
axisLine: {
|
|
|
|
|
lineStyle: { |
|
|
|
|
color: "#000", |
|
|
|
|
}, |
|
|
|
|
}, |
|
|
|
|
splitLine: {//分割线配置
|
|
|
|
|
show:true, |
|
|
|
|
lineStyle: { |
|
|
|
|
color: '#999', |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
}, |
|
|
|
|
// y轴
|
|
|
|
|
yAxis: { |
|
|
|
|
type: 'value', |
|
|
|
|
name: '个', |
|
|
|
|
axisLabel: { |
|
|
|
|
color: "#000" //刻度线标签颜色
|
|
|
|
|
}, |
|
|
|
|
//设置坐标轴字体颜色和宽度
|
|
|
|
|
axisLine: { |
|
|
|
|
lineStyle: { |
|
|
|
|
color: "#000", |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
}, |
|
|
|
|
// 数据
|
|
|
|
|
series: [{ |
|
|
|
|
name: '单位预案编制数量', |
|
|
|
|
type: 'line', |
|
|
|
|
data: [1170, 953, 1144, 799, 789, 773, 660, 998, 790, 1004, 1345, 1245], |
|
|
|
|
} |
|
|
|
|
], |
|
|
|
|
}; |
|
|
|
|
this.oneEcharts.setOption(option); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
months:any = ['一月','二月','三月','四月','五月','六月','七月','八月','九月','十月','十一月','十二月'] |
|
|
|
|
echartIds:any = ['one','two','three','four','five','six','seven','eight','nine','ten','eleven','twelve'] |
|
|
|
|
items:any = [{echart:null},{echart:null},{echart:null},{echart:null},{echart:null},{echart:null},{echart:null},{echart:null},{echart:null},{echart:null},{echart:null},{echart:null}] |
|
|
|
|
|
|
|
|
|
twoInit () { |
|
|
|
|
this.months.forEach((element,index) => { |
|
|
|
|
this.items[index].echart = echarts.init(document.getElementById(this.echartIds[index]), 'skinUpp'); |
|
|
|
|
var option = { |
|
|
|
|
title: { |
|
|
|
|
text: element, |
|
|
|
|
top: -4, |
|
|
|
|
left: 'center', |
|
|
|
|
textStyle:{ |
|
|
|
|
color:'#000', |
|
|
|
|
fontSize: 18, |
|
|
|
|
} |
|
|
|
|
}, |
|
|
|
|
//提示框
|
|
|
|
|
tooltip: { |
|
|
|
|
trigger: 'axis', |
|
|
|
|
}, |
|
|
|
|
legend: { |
|
|
|
|
data: ['平均值','平均值2倍','平均值3倍', '已核查无需修改', '已核查修改中', '已核查提交审核'], |
|
|
|
|
textStyle: { color: '#000' } |
|
|
|
|
}, |
|
|
|
|
xAxis: [{ |
|
|
|
|
axisLabel: { |
|
|
|
|
color: "#000", //刻度线标签颜色
|
|
|
|
|
}, |
|
|
|
|
//设置坐标轴字体颜色和宽度
|
|
|
|
|
axisLine: {
|
|
|
|
|
lineStyle: {color: "#000",} |
|
|
|
|
}, |
|
|
|
|
type: 'category', |
|
|
|
|
data: ['浦东支队','黄浦支队','徐汇支队','长宁支队','静安支队','普陀支队','虹口支队','杨浦支队','闵行支队','宝山支队','嘉定支队','崇明支队','金山支队'], |
|
|
|
|
axisPointer: {type: 'shadow'} |
|
|
|
|
}], |
|
|
|
|
yAxis: [ |
|
|
|
|
{ |
|
|
|
|
//设置坐标轴字体颜色和宽度
|
|
|
|
|
axisLine: {
|
|
|
|
|
lineStyle: {color: "#000"}, |
|
|
|
|
}, |
|
|
|
|
type: 'value', |
|
|
|
|
name: '个', |
|
|
|
|
axisLabel: { |
|
|
|
|
color: "#000", //刻度线标签颜色
|
|
|
|
|
formatter: '{value}' |
|
|
|
|
} |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
//设置坐标轴字体颜色和宽度
|
|
|
|
|
axisLine: {
|
|
|
|
|
lineStyle: {color: "#000"}, |
|
|
|
|
}, |
|
|
|
|
type: 'value', |
|
|
|
|
name: '个', |
|
|
|
|
axisLabel: { |
|
|
|
|
color: "#000", //刻度线标签颜色
|
|
|
|
|
formatter: '{value}' |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
], |
|
|
|
|
series: [ |
|
|
|
|
{ |
|
|
|
|
name: '已核查无需修改', |
|
|
|
|
type: 'bar', |
|
|
|
|
data: [68, 56, 69, 57, 43, 79, 78, 66, 49, 34, 49, 78, 45], |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
name: '已核查修改中', |
|
|
|
|
type: 'bar', |
|
|
|
|
data: [39, 43, 49, 27, 53, 29, 38, 49, 29, 40, 40, 27, 54], |
|
|
|
|
itemStyle:{color: '#DC143C'} |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
name: '已核查提交审核', |
|
|
|
|
type: 'bar', |
|
|
|
|
data: [48, 42, 43, 53, 47, 39, 25, 26, 54, 34, 39, 24, 14], |
|
|
|
|
itemStyle:{color:'#00BB00'} |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
name: '平均值', |
|
|
|
|
type: 'line', |
|
|
|
|
yAxisIndex: 1, |
|
|
|
|
data: [49, 45, 53, 47, 49, 43, 48, 41, 38, 39, 41, 43, 37], |
|
|
|
|
itemStyle:{color: '#FFDC35'} |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
name: '平均值2倍', |
|
|
|
|
type: 'line', |
|
|
|
|
yAxisIndex: 1, |
|
|
|
|
data: [98, 90, 106, 94, 98, 86, 96, 82, 76, 78, 82, 86, 74], |
|
|
|
|
itemStyle:{color: '#FF00FF'} |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
name: '平均值3倍', |
|
|
|
|
type: 'line', |
|
|
|
|
yAxisIndex: 1, |
|
|
|
|
data: [143, 135, 159, 143, 127, 144, 144, 123, 114, 117, 124, 129, 111], |
|
|
|
|
itemStyle:{color: '#999'} |
|
|
|
|
}, |
|
|
|
|
] |
|
|
|
|
}; |
|
|
|
|
this.items[index].echart.setOption(option); |
|
|
|
|
this.items[index].echart.on('click', (params) => { |
|
|
|
|
this.echartsData.scheduledUpdatesType = 0 |
|
|
|
|
this.echartsData.scheduledUpdatesName = this.months[index] |
|
|
|
|
this.echartsData.scheduledUpdatesToggle = false |
|
|
|
|
}); |
|
|
|
|
}); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//未核查组件
|
|
|
|
|
@Component({ |
|
|
|
|
selector: 'app-notVerified', |
|
|
|
|
templateUrl: './notVerified.html', |
|
|
|
|
styleUrls: ['../state/page-two-time/page-two-time.component.scss'] |
|
|
|
|
}) |
|
|
|
|
export class notVerifiedComponent implements OnInit { |
|
|
|
|
|
|
|
|
|
constructor(private router: Router,public echartsData:EchartsDataService) { } |
|
|
|
|
|
|
|
|
|
ngOnInit(): void { |
|
|
|
|
window.setTimeout(()=>{ |
|
|
|
|
this.oneInit() |
|
|
|
|
this.twoInit() |
|
|
|
|
},0) |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
ngOnDestroy () { |
|
|
|
|
this.oneEcharts.clear() |
|
|
|
|
this.items.forEach((element,index) => { |
|
|
|
|
element.echart.clear() |
|
|
|
|
}); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
oneEcharts:any; |
|
|
|
|
oneInit () { |
|
|
|
|
this.oneEcharts = echarts.init(document.getElementById('center'), 'skinUpp'); |
|
|
|
|
var option = { |
|
|
|
|
grid: { |
|
|
|
|
top: 50, |
|
|
|
|
left:40, |
|
|
|
|
right: 20, |
|
|
|
|
bottom: 20, |
|
|
|
|
}, |
|
|
|
|
// 标题
|
|
|
|
|
title: { |
|
|
|
|
text: '未核查', |
|
|
|
|
top: -4, |
|
|
|
|
left: 'center', |
|
|
|
|
textStyle:{ |
|
|
|
|
//文字颜色
|
|
|
|
|
color:'#000', |
|
|
|
|
fontSize: 22, |
|
|
|
|
} |
|
|
|
|
}, |
|
|
|
|
//提示框
|
|
|
|
|
tooltip: { |
|
|
|
|
trigger: 'axis', |
|
|
|
|
}, |
|
|
|
|
// x轴
|
|
|
|
|
xAxis: { |
|
|
|
|
type: 'category', |
|
|
|
|
data: ['1月', '2月', '3月', '4月', '5月', '6月', '7月', '8月','9月','10月','11月','12月'], |
|
|
|
|
boundaryGap: false, |
|
|
|
|
axisLabel: { |
|
|
|
|
color: "#000", //刻度线标签颜色
|
|
|
|
|
}, |
|
|
|
|
//设置坐标轴字体颜色和宽度
|
|
|
|
|
axisLine: {
|
|
|
|
|
lineStyle: { |
|
|
|
|
color: "#000", |
|
|
|
|
}, |
|
|
|
|
}, |
|
|
|
|
splitLine: {//分割线配置
|
|
|
|
|
show:true, |
|
|
|
|
lineStyle: { |
|
|
|
|
color: '#999', |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
}, |
|
|
|
|
// y轴
|
|
|
|
|
yAxis: { |
|
|
|
|
type: 'value', |
|
|
|
|
name: '个', |
|
|
|
|
axisLabel: { |
|
|
|
|
color: "#000" //刻度线标签颜色
|
|
|
|
|
}, |
|
|
|
|
//设置坐标轴字体颜色和宽度
|
|
|
|
|
axisLine: { |
|
|
|
|
lineStyle: { |
|
|
|
|
color: "#000", |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
}, |
|
|
|
|
// 数据
|
|
|
|
|
series: [{ |
|
|
|
|
name: '单位预案编制数量', |
|
|
|
|
type: 'line', |
|
|
|
|
data: [1245, 1345, 1004, 790, 998, 660, 773, 789, 799, 1144, 953, 1170,], |
|
|
|
|
} |
|
|
|
|
], |
|
|
|
|
}; |
|
|
|
|
this.oneEcharts.setOption(option); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
months:any = ['一月','二月','三月','四月','五月','六月','七月','八月','九月','十月','十一月','十二月'] |
|
|
|
|
echartIds:any = ['one','two','three','four','five','six','seven','eight','nine','ten','eleven','twelve'] |
|
|
|
|
items:any = [{echart:null},{echart:null},{echart:null},{echart:null},{echart:null},{echart:null},{echart:null},{echart:null},{echart:null},{echart:null},{echart:null},{echart:null}] |
|
|
|
|
|
|
|
|
|
twoInit () { |
|
|
|
|
this.months.forEach((element,index) => { |
|
|
|
|
this.items[index].echart = echarts.init(document.getElementById(this.echartIds[index]), 'skinUpp'); |
|
|
|
|
var option = { |
|
|
|
|
title: { |
|
|
|
|
text: element, |
|
|
|
|
top: -4, |
|
|
|
|
left: 'center', |
|
|
|
|
textStyle:{ |
|
|
|
|
color:'#000', |
|
|
|
|
fontSize: 18, |
|
|
|
|
} |
|
|
|
|
}, |
|
|
|
|
//提示框
|
|
|
|
|
tooltip: { |
|
|
|
|
trigger: 'axis', |
|
|
|
|
}, |
|
|
|
|
legend: { |
|
|
|
|
data: ['未核查'], |
|
|
|
|
textStyle: { color: '#000' } |
|
|
|
|
}, |
|
|
|
|
xAxis: [{ |
|
|
|
|
axisLabel: { |
|
|
|
|
color: "#000", //刻度线标签颜色
|
|
|
|
|
interval: 0, |
|
|
|
|
formatter:function(value){ |
|
|
|
|
var ret = "";//拼接加\n返回的类目项
|
|
|
|
|
var maxLength = 2;//每项显示文字个数
|
|
|
|
|
var valLength = value.length;//X轴类目项的文字个数
|
|
|
|
|
var rowN = Math.ceil(valLength / maxLength); //类目项需要换行的行数
|
|
|
|
|
if (rowN > 1) { //如果类目项的文字大于3,
|
|
|
|
|
for (var i = 0; i < rowN; i++) { |
|
|
|
|
var temp = "";//每次截取的字符串
|
|
|
|
|
var start = i * maxLength;//开始截取的位置
|
|
|
|
|
var end = start + maxLength;//结束截取的位置
|
|
|
|
|
//这里也可以加一个是否是最后一行的判断,但是不加也没有影响,那就不加吧
|
|
|
|
|
temp = value.substring(start, end) + "\n"; |
|
|
|
|
ret += temp; |
|
|
|
|
} //凭借最终的字符串
|
|
|
|
|
return ret; |
|
|
|
|
}else { |
|
|
|
|
return value; |
|
|
|
|
} |
|
|
|
|
} //function
|
|
|
|
|
}, |
|
|
|
|
//设置坐标轴字体颜色和宽度
|
|
|
|
|
axisLine: {
|
|
|
|
|
lineStyle: {color: "#000",} |
|
|
|
|
}, |
|
|
|
|
type: 'category', |
|
|
|
|
data: ['浦东支队','黄浦支队','徐汇支队','长宁支队','静安支队','普陀支队','虹口支队','杨浦支队','闵行支队','宝山支队','嘉定支队','崇明支队','金山支队'], |
|
|
|
|
axisPointer: {type: 'shadow'} |
|
|
|
|
}], |
|
|
|
|
yAxis: [ |
|
|
|
|
{ |
|
|
|
|
//设置坐标轴字体颜色和宽度
|
|
|
|
|
axisLine: {
|
|
|
|
|
lineStyle: {color: "#000"}, |
|
|
|
|
}, |
|
|
|
|
type: 'value', |
|
|
|
|
name: '个', |
|
|
|
|
axisLabel: { |
|
|
|
|
color: "#000", //刻度线标签颜色
|
|
|
|
|
formatter: '{value}' |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
], |
|
|
|
|
series: [ |
|
|
|
|
{ |
|
|
|
|
name: '未核查', |
|
|
|
|
type: 'bar', |
|
|
|
|
data: [48, 36, 49, 37, 33, 59, 58, 46, 39, 34, 39, 68, 45], |
|
|
|
|
}, |
|
|
|
|
] |
|
|
|
|
}; |
|
|
|
|
this.items[index].echart.setOption(option); |
|
|
|
|
this.items[index].echart.on('click', (params) => { |
|
|
|
|
this.echartsData.scheduledUpdatesType = 1 |
|
|
|
|
this.echartsData.scheduledUpdatesName = this.months[index] |
|
|
|
|
this.echartsData.scheduledUpdatesToggle = false |
|
|
|
|
}); |
|
|
|
|
}); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//echarts详情组件
|
|
|
|
|
@Component({ |
|
|
|
|
selector: 'app-detailedInformation', |
|
|
|
|
templateUrl: './detailedInformation.html', |
|
|
|
|
styleUrls: ['../state/page-two-time/page-two-time.component.scss'] |
|
|
|
|
}) |
|
|
|
|
export class detailedInformationComponent implements OnInit { |
|
|
|
|
|
|
|
|
|
constructor(private router: Router,public echartsData:EchartsDataService) { } |
|
|
|
|
|
|
|
|
|
ngOnInit(): void { |
|
|
|
|
window.setTimeout(()=>{ |
|
|
|
|
this.oneInit() |
|
|
|
|
},0) |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
oneInit () { |
|
|
|
|
let echart = echarts.init(document.getElementById('center'), 'skinUpp'); |
|
|
|
|
if (this.echartsData.scheduledUpdatesType ===0) { //已核查
|
|
|
|
|
var option = { |
|
|
|
|
title: { |
|
|
|
|
text: this.echartsData.scheduledUpdatesName, |
|
|
|
|
top: -4, |
|
|
|
|
left: 'center', |
|
|
|
|
textStyle:{ |
|
|
|
|
color:'#000', |
|
|
|
|
fontSize: 18, |
|
|
|
|
} |
|
|
|
|
}, |
|
|
|
|
//提示框
|
|
|
|
|
tooltip: { |
|
|
|
|
trigger: 'axis', |
|
|
|
|
}, |
|
|
|
|
legend: { |
|
|
|
|
data: ['平均值','平均值2倍','平均值3倍', '已核查无需修改', '已核查修改中', '已核查提交审核'], |
|
|
|
|
textStyle: { color: '#000' } |
|
|
|
|
}, |
|
|
|
|
xAxis: [{ |
|
|
|
|
axisLabel: { |
|
|
|
|
color: "#000", //刻度线标签颜色
|
|
|
|
|
}, |
|
|
|
|
//设置坐标轴字体颜色和宽度
|
|
|
|
|
axisLine: {
|
|
|
|
|
lineStyle: {color: "#000",} |
|
|
|
|
}, |
|
|
|
|
type: 'category', |
|
|
|
|
data: ['浦东支队','黄浦支队','徐汇支队','长宁支队','静安支队','普陀支队','虹口支队','杨浦支队','闵行支队','宝山支队','嘉定支队','崇明支队','金山支队'], |
|
|
|
|
axisPointer: {type: 'shadow'} |
|
|
|
|
}], |
|
|
|
|
yAxis: [ |
|
|
|
|
{ |
|
|
|
|
//设置坐标轴字体颜色和宽度
|
|
|
|
|
axisLine: {
|
|
|
|
|
lineStyle: {color: "#000"}, |
|
|
|
|
}, |
|
|
|
|
type: 'value', |
|
|
|
|
name: '个', |
|
|
|
|
axisLabel: { |
|
|
|
|
color: "#000", //刻度线标签颜色
|
|
|
|
|
formatter: '{value}' |
|
|
|
|
} |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
//设置坐标轴字体颜色和宽度
|
|
|
|
|
axisLine: {
|
|
|
|
|
lineStyle: {color: "#000"}, |
|
|
|
|
}, |
|
|
|
|
type: 'value', |
|
|
|
|
name: '个', |
|
|
|
|
axisLabel: { |
|
|
|
|
color: "#000", //刻度线标签颜色
|
|
|
|
|
formatter: '{value}' |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
], |
|
|
|
|
series: [ |
|
|
|
|
{ |
|
|
|
|
name: '已核查无需修改', |
|
|
|
|
type: 'bar', |
|
|
|
|
data: [68, 56, 69, 57, 43, 79, 78, 66, 49, 34, 49, 78, 45], |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
name: '已核查修改中', |
|
|
|
|
type: 'bar', |
|
|
|
|
data: [39, 43, 49, 27, 53, 29, 38, 49, 29, 40, 40, 27, 54], |
|
|
|
|
itemStyle:{color: '#DC143C'} |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
name: '已核查提交审核', |
|
|
|
|
type: 'bar', |
|
|
|
|
data: [48, 42, 43, 53, 47, 39, 25, 26, 54, 34, 39, 24, 14], |
|
|
|
|
itemStyle:{color:'#00BB00'} |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
name: '平均值', |
|
|
|
|
type: 'line', |
|
|
|
|
yAxisIndex: 1, |
|
|
|
|
data: [49, 45, 53, 47, 49, 43, 48, 41, 38, 39, 41, 43, 37], |
|
|
|
|
itemStyle:{color: '#FFDC35'} |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
name: '平均值2倍', |
|
|
|
|
type: 'line', |
|
|
|
|
yAxisIndex: 1, |
|
|
|
|
data: [98, 90, 106, 94, 98, 86, 96, 82, 76, 78, 82, 86, 74], |
|
|
|
|
itemStyle:{color: '#FF00FF'} |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
name: '平均值3倍', |
|
|
|
|
type: 'line', |
|
|
|
|
yAxisIndex: 1, |
|
|
|
|
data: [143, 135, 159, 143, 127, 144, 144, 123, 114, 117, 124, 129, 111], |
|
|
|
|
itemStyle:{color: '#999'} |
|
|
|
|
}, |
|
|
|
|
] |
|
|
|
|
}; |
|
|
|
|
echart.setOption(option); |
|
|
|
|
} else { //未核查
|
|
|
|
|
var options = { |
|
|
|
|
title: { |
|
|
|
|
text: this.echartsData.scheduledUpdatesName, |
|
|
|
|
top: -4, |
|
|
|
|
left: 'center', |
|
|
|
|
textStyle:{ |
|
|
|
|
color:'#000', |
|
|
|
|
fontSize: 18, |
|
|
|
|
} |
|
|
|
|
}, |
|
|
|
|
//提示框
|
|
|
|
|
tooltip: { |
|
|
|
|
trigger: 'axis', |
|
|
|
|
}, |
|
|
|
|
legend: { |
|
|
|
|
data: ['未核查'], |
|
|
|
|
textStyle: { color: '#000' } |
|
|
|
|
}, |
|
|
|
|
xAxis: [{ |
|
|
|
|
axisLabel: { |
|
|
|
|
color: "#000", //刻度线标签颜色
|
|
|
|
|
interval: 0, |
|
|
|
|
formatter:function(value){ |
|
|
|
|
var ret = "";//拼接加\n返回的类目项
|
|
|
|
|
var maxLength = 2;//每项显示文字个数
|
|
|
|
|
var valLength = value.length;//X轴类目项的文字个数
|
|
|
|
|
var rowN = Math.ceil(valLength / maxLength); //类目项需要换行的行数
|
|
|
|
|
if (rowN > 1) { //如果类目项的文字大于3,
|
|
|
|
|
for (var i = 0; i < rowN; i++) { |
|
|
|
|
var temp = "";//每次截取的字符串
|
|
|
|
|
var start = i * maxLength;//开始截取的位置
|
|
|
|
|
var end = start + maxLength;//结束截取的位置
|
|
|
|
|
//这里也可以加一个是否是最后一行的判断,但是不加也没有影响,那就不加吧
|
|
|
|
|
temp = value.substring(start, end) + "\n"; |
|
|
|
|
ret += temp; |
|
|
|
|
} //凭借最终的字符串
|
|
|
|
|
return ret; |
|
|
|
|
}else { |
|
|
|
|
return value; |
|
|
|
|
} |
|
|
|
|
} //function
|
|
|
|
|
}, |
|
|
|
|
//设置坐标轴字体颜色和宽度
|
|
|
|
|
axisLine: {
|
|
|
|
|
lineStyle: {color: "#000",} |
|
|
|
|
}, |
|
|
|
|
type: 'category', |
|
|
|
|
data: ['浦东支队','黄浦支队','徐汇支队','长宁支队','静安支队','普陀支队','虹口支队','杨浦支队','闵行支队','宝山支队','嘉定支队','崇明支队','金山支队'], |
|
|
|
|
axisPointer: {type: 'shadow'} |
|
|
|
|
}], |
|
|
|
|
yAxis: [ |
|
|
|
|
{ |
|
|
|
|
//设置坐标轴字体颜色和宽度
|
|
|
|
|
axisLine: {
|
|
|
|
|
lineStyle: {color: "#000"}, |
|
|
|
|
}, |
|
|
|
|
type: 'value', |
|
|
|
|
name: '个', |
|
|
|
|
axisLabel: { |
|
|
|
|
color: "#000", //刻度线标签颜色
|
|
|
|
|
formatter: '{value}' |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
], |
|
|
|
|
series: [ |
|
|
|
|
{ |
|
|
|
|
name: '未核查', |
|
|
|
|
type: 'bar', |
|
|
|
|
data: [48, 36, 49, 37, 33, 59, 58, 46, 39, 34, 39, 68, 45], |
|
|
|
|
}, |
|
|
|
|
] |
|
|
|
|
}; |
|
|
|
|
echart.setOption(options); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//更多资讯组件
|
|
|
|
|
@Component({ |
|
|
|
|
selector: 'app-moreTable', |
|
|
|
|
templateUrl: './moreTable.html', |
|
|
|
|
styleUrls: ['./scheduled-updates.component.scss'] |
|
|
|
|
}) |
|
|
|
|
export class moreTableComponent implements OnInit { |
|
|
|
|
|
|
|
|
|
constructor(private router: Router,public echartsData:EchartsDataService) { } |
|
|
|
|
|
|
|
|
|
ngOnInit(): void { |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
} |