|
@@ -5,6 +5,7 @@ let app = new Vue({
|
|
|
data () {
|
|
|
return {
|
|
|
showTip: false,
|
|
|
+ showTip2: false,
|
|
|
tipNum: '',
|
|
|
tipData: tipData,
|
|
|
time: '',
|
|
@@ -57,10 +58,6 @@ let app = new Vue({
|
|
|
['<span class="lightOut"><span class=" light yellow "></span></span>', ' 2022.12.07 ', ' 华舰体育 ', ' 六定相关文件未按要求备案 '],
|
|
|
['<span class="lightOut"><span class=" light yellow "></span></span>', ' 2022.12.07 ', ' 文旅集团 ', ' 六定相关文件未按要求备案 '],
|
|
|
['<span class="lightOut"><span class=" light yellow "></span></span>', ' 2022.12.07 ', ' 水控集团 ', ' 六定相关文件未按要求备案 '],
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
],
|
|
|
// data: [
|
|
|
// ['<span style-"display:inline-block; width:15px;height:15px;border-radius:50%;background-color:green;"></span>', '2022年1月', '山西焦煤', '已经开展高层次人才引进工作'],
|
|
@@ -92,7 +89,6 @@ let app = new Vue({
|
|
|
['<span class="lightOut"><span class=" light yellow "></span></span>', ' 航产集团 ', ' 经营业绩考核12月数据未获取 ', ' 2022.12.01-12.31 ', ' 15 '],
|
|
|
['<span class="lightOut"><span class=" light yellow "></span></span>', ' 华舰体育 ', ' 经营业绩考核12月数据未获取 ', ' 2022.12.01-12.31 ', ' 15 '],
|
|
|
['<span class="lightOut"><span class=" light yellow "></span></span>', ' 文旅集团 ', ' 六定长效机制情况数据更新错误 ', ' 2022.12.01-12.31 ', ' - '],
|
|
|
-
|
|
|
],
|
|
|
},
|
|
|
companyList: companyList,
|
|
@@ -219,6 +215,10 @@ let app = new Vue({
|
|
|
this.showTip = true
|
|
|
this.tipNum = index
|
|
|
},
|
|
|
+ handleShowTip2(index) {
|
|
|
+ this.showTip2 = true
|
|
|
+ this.tipNum = index
|
|
|
+ },
|
|
|
handleGoPage (url) {
|
|
|
if (url.length) {
|
|
|
window.location.href = url
|
|
@@ -562,10 +562,33 @@ let app = new Vue({
|
|
|
},
|
|
|
data: dataL4[1],
|
|
|
},
|
|
|
+ {
|
|
|
+ name: '总部中层管理人数核定上限',
|
|
|
+ type: 'line',
|
|
|
+ yAxisIndex: 1,
|
|
|
+ smooth: true, //平滑曲线显示
|
|
|
+ showAllSymbol: true, //显示所有图形。
|
|
|
+ symbol: 'circle', //标记的图形为实心圆
|
|
|
+ symbolSize: 8, //标记的大小
|
|
|
+ smooth: false,
|
|
|
+ itemStyle: {
|
|
|
+ //折线拐点标志的样式
|
|
|
+ color: '#fbe138',
|
|
|
+ borderColor: '#fbe138',
|
|
|
+ width: 2,
|
|
|
+ shadowColor: '#fbe138',
|
|
|
+ shadowBlur: 4,
|
|
|
+ },
|
|
|
+ lineStyle: {
|
|
|
+ color: '#fbe138',
|
|
|
+ width: 2,
|
|
|
+ },
|
|
|
+ data: dataL4[2],
|
|
|
+ },
|
|
|
],
|
|
|
}
|
|
|
option.title.text = '各省属企业总部中层管理人数'
|
|
|
- option.legend.data = ['六定改革前总部中层管理人数', '当前总部中层管理人数']
|
|
|
+ option.legend.data = ['六定改革前总部中层管理人数', '当前总部中层管理人数','总部中层管理人数核定上限']
|
|
|
option.legend.show = true
|
|
|
option.yAxis.push({
|
|
|
splitLine: {
|
|
@@ -742,7 +765,7 @@ let app = new Vue({
|
|
|
let myChart = echarts.init(this.$refs['echartL7'])
|
|
|
let option = {
|
|
|
..._.cloneDeep(this.commonOption),
|
|
|
- color: ['#b889ea'],
|
|
|
+ color: ['#43ede3'],
|
|
|
series: [
|
|
|
{
|
|
|
name: '人数变化',
|
|
@@ -750,15 +773,16 @@ let app = new Vue({
|
|
|
smooth: true, //平滑曲线显示
|
|
|
showAllSymbol: true, //显示所有图形。
|
|
|
symbol: 'circle', //标记的图形为实心圆
|
|
|
- symbolSize: 8, //标记的大小
|
|
|
+ symbolSize: 15, //标记的大小
|
|
|
smooth: false,
|
|
|
itemStyle: {
|
|
|
- //折线拐点标志的样式
|
|
|
- color: '#43ede3',
|
|
|
- borderColor: '#43ede3',
|
|
|
- width: 2,
|
|
|
- shadowColor: '#43ede3',
|
|
|
- shadowBlur: 4,
|
|
|
+ color: params => {
|
|
|
+ if (dataL7[1][params.dataIndex] < 0 && params.value > 0) {
|
|
|
+ return 'red'
|
|
|
+ } else {
|
|
|
+ return '#43ede3'
|
|
|
+ }
|
|
|
+ },
|
|
|
},
|
|
|
lineStyle: {
|
|
|
color: '#43ede3',
|
|
@@ -766,6 +790,7 @@ let app = new Vue({
|
|
|
},
|
|
|
data: dataL7[0],
|
|
|
},
|
|
|
+
|
|
|
{
|
|
|
name: '劳动生产率同比变化',
|
|
|
type: 'line',
|
|
@@ -776,17 +801,12 @@ let app = new Vue({
|
|
|
symbolSize: 15, //标记的大小
|
|
|
smooth: false,
|
|
|
itemStyle: {
|
|
|
- color: params => {
|
|
|
- if (dataL7[0][params.dataIndex] > 0 && params.value < 0) {
|
|
|
- return 'red'
|
|
|
- } else {
|
|
|
- return '#b889ea'
|
|
|
- }
|
|
|
- },
|
|
|
- },
|
|
|
- lineStyle: {
|
|
|
+ //折线拐点标志的样式
|
|
|
color: '#b889ea',
|
|
|
+ borderColor: '#b889ea',
|
|
|
width: 2,
|
|
|
+ shadowColor: '#b889ea',
|
|
|
+ shadowBlur: 4,
|
|
|
},
|
|
|
data: dataL7[1],
|
|
|
},
|
|
@@ -830,7 +850,7 @@ let app = new Vue({
|
|
|
let myChart = echarts.init(this.$refs['echartL8'])
|
|
|
let option = {
|
|
|
..._.cloneDeep(this.commonOption),
|
|
|
- color: ['#b889ea'],
|
|
|
+ color: ['#43ede3'],
|
|
|
series: [
|
|
|
{
|
|
|
name: '人数变化',
|
|
@@ -838,15 +858,16 @@ let app = new Vue({
|
|
|
smooth: true, //平滑曲线显示
|
|
|
showAllSymbol: true, //显示所有图形。
|
|
|
symbol: 'circle', //标记的图形为实心圆
|
|
|
- symbolSize: 8, //标记的大小
|
|
|
+ symbolSize: 15, //标记的大小
|
|
|
smooth: false,
|
|
|
itemStyle: {
|
|
|
- //折线拐点标志的样式
|
|
|
- color: '#43ede3',
|
|
|
- borderColor: '#43ede3',
|
|
|
- width: 2,
|
|
|
- shadowColor: '#43ede3',
|
|
|
- shadowBlur: 4,
|
|
|
+ color: params => {
|
|
|
+ if (dataL8[1][params.dataIndex] < 0 && params.value > 0) {
|
|
|
+ return 'red'
|
|
|
+ } else {
|
|
|
+ return '#43ede3'
|
|
|
+ }
|
|
|
+ },
|
|
|
},
|
|
|
lineStyle: {
|
|
|
color: '#43ede3',
|
|
@@ -863,14 +884,14 @@ let app = new Vue({
|
|
|
symbolSize: 15, //标记的大小
|
|
|
smooth: false,
|
|
|
itemStyle: {
|
|
|
- color: params => {
|
|
|
- if (dataL8[0][params.dataIndex] > 0 && params.value < 0) {
|
|
|
- return 'red'
|
|
|
- } else {
|
|
|
- return '#b889ea'
|
|
|
- }
|
|
|
- },
|
|
|
+ //折线拐点标志的样式
|
|
|
+ color: '#b889ea',
|
|
|
+ borderColor: '#b889ea',
|
|
|
+ width: 2,
|
|
|
+ shadowColor: '#b889ea',
|
|
|
+ shadowBlur: 4,
|
|
|
},
|
|
|
+
|
|
|
lineStyle: {
|
|
|
color: '#b889ea',
|
|
|
width: 2,
|
|
@@ -878,6 +899,13 @@ let app = new Vue({
|
|
|
data: dataL8[1],
|
|
|
},
|
|
|
],
|
|
|
+ // tooltip: {
|
|
|
+ // trigger: 'axis',
|
|
|
+ // formatter(params){
|
|
|
+ // console.log(params)
|
|
|
+ // return params[0]
|
|
|
+ // }
|
|
|
+ // }
|
|
|
}
|
|
|
option.title.text = '人数变化和人工成本利润率变化分析'
|
|
|
option.legend.data = ['人数变化', '人工成本利润率同比变化']
|
|
@@ -917,29 +945,6 @@ let app = new Vue({
|
|
|
}
|
|
|
},
|
|
|
},
|
|
|
- data: c1[0],
|
|
|
- },
|
|
|
- {
|
|
|
- name: '全员劳动生产率同比',
|
|
|
- type: 'line',
|
|
|
- yAxisIndex: 1,
|
|
|
- smooth: true, //平滑曲线显示
|
|
|
- showAllSymbol: true, //显示所有图形。
|
|
|
- symbol: 'circle', //标记的图形为实心圆
|
|
|
- symbolSize: 8, //标记的大小
|
|
|
- smooth: false,
|
|
|
- itemStyle: {
|
|
|
- //折线拐点标志的样式
|
|
|
- color: '#B889EA',
|
|
|
- borderColor: '#B889EA',
|
|
|
- width: 2,
|
|
|
- shadowColor: '#B889EA',
|
|
|
- shadowBlur: 4,
|
|
|
- },
|
|
|
- lineStyle: {
|
|
|
- color: '#B889EA',
|
|
|
- width: 2,
|
|
|
- },
|
|
|
markLine: {
|
|
|
data: [
|
|
|
{
|
|
@@ -955,19 +960,19 @@ let app = new Vue({
|
|
|
color: '#fff',
|
|
|
},
|
|
|
},
|
|
|
- {
|
|
|
- name: '',
|
|
|
- yAxis: 0,
|
|
|
- lineStyle: {
|
|
|
- color: '#fff',
|
|
|
- },
|
|
|
- label: {
|
|
|
- formatter: '{b}',
|
|
|
- position: 'end',
|
|
|
- fontSize: 16,
|
|
|
- color: '#fff',
|
|
|
- },
|
|
|
- },
|
|
|
+ // {
|
|
|
+ // name: '',
|
|
|
+ // yAxis: 0,
|
|
|
+ // lineStyle: {
|
|
|
+ // color: '#fff',
|
|
|
+ // },
|
|
|
+ // label: {
|
|
|
+ // formatter: '{b}',
|
|
|
+ // position: 'end',
|
|
|
+ // fontSize: 16,
|
|
|
+ // color: '#fff',
|
|
|
+ // },
|
|
|
+ // },
|
|
|
{
|
|
|
name: '央企平均水平',
|
|
|
yAxis: 69.4,
|
|
@@ -986,6 +991,30 @@ let app = new Vue({
|
|
|
distance: [50, 0],
|
|
|
},
|
|
|
},
|
|
|
+ data: c1[0],
|
|
|
+ },
|
|
|
+ {
|
|
|
+ name: '全员劳动生产率同比',
|
|
|
+ type: 'line',
|
|
|
+ yAxisIndex: 1,
|
|
|
+ smooth: true, //平滑曲线显示
|
|
|
+ showAllSymbol: true, //显示所有图形。
|
|
|
+ symbol: 'circle', //标记的图形为实心圆
|
|
|
+ symbolSize: 8, //标记的大小
|
|
|
+ smooth: false,
|
|
|
+ itemStyle: {
|
|
|
+ //折线拐点标志的样式
|
|
|
+ color: '#B889EA',
|
|
|
+ borderColor: '#B889EA',
|
|
|
+ width: 2,
|
|
|
+ shadowColor: '#B889EA',
|
|
|
+ shadowBlur: 4,
|
|
|
+ },
|
|
|
+ lineStyle: {
|
|
|
+ color: '#B889EA',
|
|
|
+ width: 2,
|
|
|
+ },
|
|
|
+
|
|
|
// data: [50, 40, 60, 20, 45, 30, 60, 100, 45, 40, 50, 20, 60, 80, 45, 70, 50, 40],
|
|
|
data: c1[1],
|
|
|
},
|
|
@@ -1342,6 +1371,7 @@ let app = new Vue({
|
|
|
commonOptions.yAxis[0].splitNumber = 2
|
|
|
let option = {
|
|
|
..._.cloneDeep(commonOptions),
|
|
|
+ color: ['#45DAD1'],
|
|
|
series: [
|
|
|
{
|
|
|
name: '2022年利润(万)',
|
|
@@ -1369,19 +1399,37 @@ let app = new Vue({
|
|
|
barWidth: 15,
|
|
|
yAxisIndex: 1,
|
|
|
itemStyle: {
|
|
|
- normal: {
|
|
|
- color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
|
|
|
- {
|
|
|
- offset: 0,
|
|
|
- color: '#45DAD1',
|
|
|
- },
|
|
|
- {
|
|
|
- offset: 1,
|
|
|
- color: '#082550',
|
|
|
- },
|
|
|
- ]),
|
|
|
+ color: params => {
|
|
|
+ if (params.value > 0 && dataR3[0][params.dataIndex] < 0) {
|
|
|
+ return 'red'
|
|
|
+ } else {
|
|
|
+ return new echarts.graphic.LinearGradient(0, 0, 0, 1, [
|
|
|
+ {
|
|
|
+ offset: 0,
|
|
|
+ color: '#45DAD1',
|
|
|
+ },
|
|
|
+ {
|
|
|
+ offset: 1,
|
|
|
+ color: '#082550',
|
|
|
+ },
|
|
|
+ ])
|
|
|
+ }
|
|
|
},
|
|
|
},
|
|
|
+ // itemStyle: {
|
|
|
+ // normal: {
|
|
|
+ // color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
|
|
|
+ // {
|
|
|
+ // offset: 0,
|
|
|
+ // color: '#45DAD1',
|
|
|
+ // },
|
|
|
+ // {
|
|
|
+ // offset: 1,
|
|
|
+ // color: '#082550',
|
|
|
+ // },
|
|
|
+ // ]),
|
|
|
+ // },
|
|
|
+ // },
|
|
|
data: dataR3[1],
|
|
|
},
|
|
|
],
|
|
@@ -1389,21 +1437,19 @@ let app = new Vue({
|
|
|
option.title.text = '各省属企业年利润与当年累计招聘人数'
|
|
|
option.legend.data = ['2022年利润(万)', '2022年累计招聘数']
|
|
|
option.legend.show = true
|
|
|
- option.yAxis[0].max =
|
|
|
- option.yAxis[0].min =
|
|
|
option.yAxis[0] = {
|
|
|
max: function (value) {
|
|
|
if (Math.abs(value.max) > Math.abs(value.min)) {
|
|
|
- return (Math.abs(value.max) * 1.2).toFixed(2);
|
|
|
+ return (Math.abs(value.max) * 1.2).toFixed(2)
|
|
|
} else {
|
|
|
- return (Math.abs(value.min) * 1.2).toFixed(2);
|
|
|
+ return (Math.abs(value.min) * 1.2).toFixed(2)
|
|
|
}
|
|
|
},
|
|
|
min: function (value) {
|
|
|
if (Math.abs(value.max) > Math.abs(value.min)) {
|
|
|
- return (-Math.abs(value.max) * 1.2).toFixed(2);
|
|
|
+ return (-Math.abs(value.max) * 1.2).toFixed(2)
|
|
|
} else {
|
|
|
- return (-Math.abs(value.min) * 1.2).toFixed(2);
|
|
|
+ return (-Math.abs(value.min) * 1.2).toFixed(2)
|
|
|
}
|
|
|
},
|
|
|
type: 'value',
|
|
@@ -1443,19 +1489,18 @@ let app = new Vue({
|
|
|
},
|
|
|
max: function (value) {
|
|
|
if (Math.abs(value.max) > Math.abs(value.min)) {
|
|
|
- return (Math.abs(value.max) * 1.2).toFixed(2);
|
|
|
+ return (Math.abs(value.max) * 1.2).toFixed(2)
|
|
|
} else {
|
|
|
- return (Math.abs(value.min) * 1.2).toFixed(2);
|
|
|
+ return (Math.abs(value.min) * 1.2).toFixed(2)
|
|
|
}
|
|
|
},
|
|
|
min: function (value) {
|
|
|
if (Math.abs(value.max) > Math.abs(value.min)) {
|
|
|
- return (-Math.abs(value.max) * 1.2).toFixed(2);
|
|
|
+ return (-Math.abs(value.max) * 1.2).toFixed(2)
|
|
|
} else {
|
|
|
- return (-Math.abs(value.min) * 1.2).toFixed(2);
|
|
|
+ return (-Math.abs(value.min) * 1.2).toFixed(2)
|
|
|
}
|
|
|
- }
|
|
|
-
|
|
|
+ },
|
|
|
})
|
|
|
myChart.setOption(option)
|
|
|
},
|
|
@@ -1546,6 +1591,26 @@ let app = new Vue({
|
|
|
name: '去年同期在岗职工平均薪酬',
|
|
|
type: 'bar',
|
|
|
barWidth: 15,
|
|
|
+ markLine: {
|
|
|
+ data: [
|
|
|
+ {
|
|
|
+ name: '省属企业平均水平',
|
|
|
+ yAxis: 9333.33,
|
|
|
+ lineStyle: {
|
|
|
+ color: '#fff',
|
|
|
+ },
|
|
|
+ label: {
|
|
|
+ formatter: '{b}',
|
|
|
+ position: 'middle',
|
|
|
+ fontSize: 16,
|
|
|
+ color: '#fff',
|
|
|
+ },
|
|
|
+ }
|
|
|
+ ],
|
|
|
+ label: {
|
|
|
+ distance: [50, 0],
|
|
|
+ },
|
|
|
+ },
|
|
|
itemStyle: {
|
|
|
normal: {
|
|
|
color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
|
|
@@ -1694,9 +1759,18 @@ let app = new Vue({
|
|
|
],
|
|
|
}
|
|
|
option.title.text = '各省属企业全员绩效考核'
|
|
|
- option.legend.show = false
|
|
|
- option.tooltip.formatter = '{a0}:{c0}' + '%'
|
|
|
- option.yAxis[0].axisLabel.formatter = '{value} %'
|
|
|
+ option.legend.show = true
|
|
|
+ option.tooltip = {
|
|
|
+ trigger: 'axis',
|
|
|
+ formatter: '{a0}:{c0}' + '%'
|
|
|
+ },
|
|
|
+ option.yAxis[0].axisLabel = {
|
|
|
+ show: true,
|
|
|
+ formatter: '{value} %',
|
|
|
+ textStyle: {
|
|
|
+ color: 'rgba(250,250,250,0.6)',
|
|
|
+ },
|
|
|
+ }
|
|
|
myChart.setOption(option)
|
|
|
},
|
|
|
initChartR8 () {
|
|
@@ -1727,7 +1801,7 @@ let app = new Vue({
|
|
|
],
|
|
|
}
|
|
|
option.title.text = '各省属企业任期制契约化管理'
|
|
|
- option.legend.show = false
|
|
|
+ option.legend.show = true
|
|
|
option.tooltip.formatter = '{a0}:{c0}' + '%'
|
|
|
option.yAxis[0].axisLabel.formatter = '{value} %'
|
|
|
myChart.setOption(option)
|