|
|
@@ -4,6 +4,8 @@ let app = new Vue({
|
|
|
el: '#app',
|
|
|
data () {
|
|
|
return {
|
|
|
+ touch: true,
|
|
|
+ timeCommon: '',
|
|
|
echartC1: {
|
|
|
national: '',
|
|
|
province: ''
|
|
|
@@ -35,35 +37,7 @@ let app = new Vue({
|
|
|
headerHeight: '40',
|
|
|
rowNum: 4,
|
|
|
align: ['center', 'center', 'center', 'center'],
|
|
|
- data: [
|
|
|
- ['<span class="lightOut"><span class=" light green "></span></span>', ' 山西焦煤 ', ' “退二进一”完成情况表现优秀 '],
|
|
|
- ['<span class="lightOut"><span class=" light green "></span></span>', ' 山西焦煤 ', ' 总部机构压减成效明显 '],
|
|
|
- ['<span class="lightOut"><span class=" light green "></span></span>', ' 晋能控股 ', ' 总部人员压减成效突出 '],
|
|
|
- ['<span class="lightOut"><span class=" light green "></span></span>', ' 晋能控股 ', ' 中层管理人数改革成效显著 '],
|
|
|
- ['<span class="lightOut"><span class=" light green "></span></span>', ' 晋能控股 ', ' 管理级次压缩成效明显 '],
|
|
|
- ['<span class="lightOut"><span class=" light red "></span></span>', ' 华阳新材 ', ' 六定未按要求下穿到全级次企业 '],
|
|
|
- ['<span class="lightOut"><span class=" light green "></span></span>', ' 潞安化工 ', ' 全员劳动生产率提高明显 '],
|
|
|
- ['<span class="lightOut"><span class=" light green "></span></span>', ' 建投集团 ', ' 深入开展中层管理人员竞聘上岗 '],
|
|
|
- ['<span class="lightOut"><span class=" light green "></span></span>', ' 华舰体育 ', ' 集团人数增长速度较快 '],
|
|
|
- ['<span class="lightOut"><span class=" light green "></span></span>', ' 华舰体育 ', ' 人员增速显著高于全员劳动生产率增速 '],
|
|
|
- ['<span class="lightOut"><span class=" light green "></span></span>', ' 国际能源 ', ' 全员劳动生产率增速显著高于人员增速 '],
|
|
|
- ['<span class="lightOut"><span class=" light green "></span></span>', ' 山西焦煤 ', ' 人工成本利润率增长且总人数下降 '],
|
|
|
- ['<span class="lightOut"><span class=" light green "></span></span>', ' 晋能控股 ', ' 人工成本利润率增长且总人数下降 '],
|
|
|
- ['<span class="lightOut"><span class=" light green "></span></span>', ' 华阳新材 ', ' 人工成本利润率增长且总人数下降 '],
|
|
|
- ['<span class="lightOut"><span class=" light green "></span></span>', ' 太重集团 ', ' 人工成本利润率增长且总人数下降 '],
|
|
|
- ['<span class="lightOut"><span class=" light green "></span></span>', ' 国际能源 ', ' 人工成本利润率增长且总人数下降 '],
|
|
|
- ['<span class="lightOut"><span class=" light green "></span></span>', ' 华远陆港 ', ' 人工成本利润率增长且总人数下降 '],
|
|
|
- ['<span class="lightOut"><span class=" light green "></span></span>', ' 交控集团 ', ' 人工成本利润率增长且总人数下降 '],
|
|
|
- ['<span class="lightOut"><span class=" light green "></span></span>', ' 云时代 ', ' 人工成本利润率增长且总人数下降 '],
|
|
|
- ['<span class="lightOut"><span class=" light yellow "></span></span>', ' 文旅集团 ', ' 人工成本利润率显著降低 '],
|
|
|
- ['<span class="lightOut"><span class=" light yellow "></span></span>', ' 航产集团 ', ' 人工成本利润率显著降低 '],
|
|
|
- ['<span class="lightOut"><span class=" light red "></span></span>', ' 大地控股 ', ' 中层管理人员任命不符合六定要求 '],
|
|
|
- ['<span class="lightOut"><span class=" light green "></span></span>', ' 交控集团 ', ' “退二进一”完成情况表现优秀 '],
|
|
|
- ['<span class="lightOut"><span class=" light green "></span></span>', ' 太重集团 ', ' 开展管理人员末等调整和不胜任退出 '],
|
|
|
- ['<span class="lightOut"><span class=" light yellow "></span></span>', ' 华舰体育 ', ' 六定相关文件未按要求备案 '],
|
|
|
- ['<span class="lightOut"><span class=" light yellow "></span></span>', ' 文旅集团 ', ' 六定相关文件未按要求备案 '],
|
|
|
- ['<span class="lightOut"><span class=" light yellow "></span></span>', ' 水控集团 ', ' 六定相关文件未按要求备案 '],
|
|
|
- ],
|
|
|
+ data: [],
|
|
|
},
|
|
|
storageRecordConfig2: {
|
|
|
header: ['企业名称', '预警内容', '数据抓取日期', '累计未获取数据日期'],
|
|
|
@@ -73,18 +47,31 @@ let app = new Vue({
|
|
|
headerHeight: '40',
|
|
|
rowNum: 4,
|
|
|
align: ['center', 'center', 'center', 'center'],
|
|
|
- data: [
|
|
|
- ['山西焦煤', '经营业绩考核延迟更新', '2022.12.01-12.31', '3天'],
|
|
|
- ['山西文旅', '六定长效机制情况未更新', '2022.12.01-12.31', '7天'],
|
|
|
- ['大地控股', '经营业绩考核延迟更新', '2022.12.01-12.31', '3天'],
|
|
|
- ['国际能源', '六定长效机制情况未更新', '2022.12.01-12.31', '1天'],
|
|
|
- ['山西焦煤', '经营业绩考核延迟更新', '2022.12.01-12.31', '3天'],
|
|
|
- ['山西焦煤', '六定长效机制情况未更新', '2022.12.01-12.31', '3天'],
|
|
|
- ],
|
|
|
+ data: [],
|
|
|
},
|
|
|
companyList: companyList,
|
|
|
companyListTitle: companyListTitle,
|
|
|
- commonOption: {
|
|
|
+ commonOption: []
|
|
|
+ }
|
|
|
+ },
|
|
|
+ beforeMount () {
|
|
|
+ },
|
|
|
+ mounted () {
|
|
|
+
|
|
|
+ this.getUrlParams()
|
|
|
+ this.time = formatDate()
|
|
|
+ this.timer = setInterval(() => {
|
|
|
+ this.time = formatDate()
|
|
|
+ }, 1000)
|
|
|
+ this.centerData = data
|
|
|
+ },
|
|
|
+ beforeDestroy () {
|
|
|
+ clearInterval(this.timer);
|
|
|
+ clearInterval(this.timeCommon);
|
|
|
+ },
|
|
|
+ methods: {
|
|
|
+ judgeCarousel () {
|
|
|
+ let a = {
|
|
|
title: {
|
|
|
text: 'xxx',
|
|
|
x: 'center',
|
|
|
@@ -163,25 +150,41 @@ let app = new Vue({
|
|
|
},
|
|
|
},
|
|
|
],
|
|
|
- },
|
|
|
- }
|
|
|
- },
|
|
|
- beforeMount () {
|
|
|
- },
|
|
|
- mounted () {
|
|
|
- this.getUrlParams()
|
|
|
- this.time = formatDate()
|
|
|
- this.timer = setInterval(() => {
|
|
|
- this.time = formatDate()
|
|
|
- }, 1000)
|
|
|
- this.centerData = data
|
|
|
- },
|
|
|
- beforeDestroy () {
|
|
|
- if (this.timer) {
|
|
|
- clearInterval(this.timer);
|
|
|
- }
|
|
|
- },
|
|
|
- methods: {
|
|
|
+ }
|
|
|
+ a.xAxis.data = this.companyList.map(item => item.name)
|
|
|
+ if (this.companyList.length > 18) {
|
|
|
+ a.dataZoom = [
|
|
|
+ {
|
|
|
+ // start: 9,//默认为@
|
|
|
+ // end: 100,//黑认认为1@0
|
|
|
+ type: "slider",
|
|
|
+ show: false,
|
|
|
+ // xAxisIndex: [0]
|
|
|
+ handlesize: 0,//滑动条的 左右2个滑动条的大小
|
|
|
+ startValue: 17,// 初始显示值
|
|
|
+ endValue: 0,// 结束显示值
|
|
|
+ height: 10,//组件高度
|
|
|
+ left: "5%",
|
|
|
+ right: "4%",//右边的距离
|
|
|
+ bottom: "25%",//底边的距离
|
|
|
+ borderColor: "#939",
|
|
|
+ fillerColor: "#269cdb",
|
|
|
+ borderRadius: 5,
|
|
|
+ backgroundColor: "#33384b",//两边未选中的滑动条区域的额色
|
|
|
+ showDataShadow: false,//是否显示数据阴影
|
|
|
+ showDetail: false,//即拖拽时候是否显示详细数值信息
|
|
|
+ truerealtime: true,//是否实时更新
|
|
|
+ filterMode: "filter"
|
|
|
+ }, {
|
|
|
+ type: 'inside',
|
|
|
+ show: true,
|
|
|
+ start: 1,
|
|
|
+ end: 100
|
|
|
+ }
|
|
|
+ ]
|
|
|
+ }
|
|
|
+ this.commonOption = a
|
|
|
+ },
|
|
|
// 生成图表
|
|
|
generateEcharts () {
|
|
|
this.initChartL1()
|
|
|
@@ -206,6 +209,7 @@ let app = new Vue({
|
|
|
this.initChartR8()
|
|
|
},
|
|
|
getData () {
|
|
|
+ let that = this
|
|
|
return new Promise((resolve, err) => {
|
|
|
let value = {
|
|
|
access_token: this.access_token,
|
|
|
@@ -263,8 +267,12 @@ let app = new Vue({
|
|
|
})
|
|
|
// 各二级企业本部员额数
|
|
|
dataL6[0] = []
|
|
|
+ dataL6[2] = []
|
|
|
+ dataL6[1] = []
|
|
|
res.orgData.area3.card2.forEach(item => {
|
|
|
dataL6[0].push(item['ZBPZ0031'])
|
|
|
+ dataL6[2].push(item['ZBPZ0094'])
|
|
|
+ dataL6[1].push(item['ZBPZ0095'])
|
|
|
})
|
|
|
// 人数变化和全员劳动生产率变化率分析
|
|
|
dataL7[0] = []
|
|
|
@@ -413,6 +421,18 @@ let app = new Vue({
|
|
|
// }
|
|
|
// })
|
|
|
this.generateEcharts()
|
|
|
+ this.timeCommon = setInterval(() => {
|
|
|
+ if (that.touch) {
|
|
|
+ if (that.commonOption.dataZoom[0].startValue < that.companyList.length) {
|
|
|
+ that.commonOption.dataZoom[0].endValue += 18
|
|
|
+ that.commonOption.dataZoom[0].startValue += 18
|
|
|
+ } else {
|
|
|
+ that.commonOption.dataZoom[0].endValue = 0
|
|
|
+ that.commonOption.dataZoom[0].startValue = 18
|
|
|
+ }
|
|
|
+ that.generateEcharts()
|
|
|
+ }
|
|
|
+ }, 5000)
|
|
|
resolve(1)
|
|
|
})
|
|
|
});
|
|
|
@@ -456,8 +476,8 @@ let app = new Vue({
|
|
|
this.companyList = res.data.map(item => {
|
|
|
return { name: item.orgName, id: item.orgNumber }
|
|
|
})
|
|
|
- this.commonOption.xAxis.data = this.companyList.map(item => item.name)
|
|
|
this.getData()
|
|
|
+ this.judgeCarousel()
|
|
|
resolve(1);
|
|
|
})
|
|
|
});
|
|
|
@@ -823,7 +843,7 @@ let app = new Vue({
|
|
|
itemStyle: {
|
|
|
normal: {
|
|
|
color: params => {
|
|
|
- if (params.value > dataL4[2][params.dataIndex] || params.value > dataL4[0][params.dataIndex]) {
|
|
|
+ if (params.value > dataL4[2][params.dataIndex] || params.value > dataL4[0][params.dataIndex]) {
|
|
|
|
|
|
return 'red'
|
|
|
} else {
|
|
|
@@ -1087,11 +1107,10 @@ let app = new Vue({
|
|
|
barWidth: 15,
|
|
|
itemStyle: {
|
|
|
normal: {
|
|
|
- barBorderRadius: [10, 10, 0, 0],
|
|
|
color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
|
|
|
{
|
|
|
offset: 0,
|
|
|
- color: '#43ede3',
|
|
|
+ color: '#5e7ae9',
|
|
|
},
|
|
|
{
|
|
|
offset: 1,
|
|
|
@@ -1838,14 +1857,14 @@ let app = new Vue({
|
|
|
y: 0,
|
|
|
x2: 0,
|
|
|
y2: 1,
|
|
|
- colorStops: [ {
|
|
|
- offset: 0,
|
|
|
- color: '#45DAD1',
|
|
|
- },
|
|
|
- {
|
|
|
- offset: 1,
|
|
|
- color: '#082550',
|
|
|
- },],
|
|
|
+ colorStops: [{
|
|
|
+ offset: 0,
|
|
|
+ color: '#45DAD1',
|
|
|
+ },
|
|
|
+ {
|
|
|
+ offset: 1,
|
|
|
+ color: '#082550',
|
|
|
+ },],
|
|
|
}
|
|
|
],
|
|
|
series: [
|
|
|
@@ -1969,7 +1988,7 @@ let app = new Vue({
|
|
|
color: params => {
|
|
|
if (dataR4[0][params.dataIndex] / 2 < params.value) {
|
|
|
return 'red'
|
|
|
- }
|
|
|
+ }
|
|
|
else {
|
|
|
return new echarts.graphic.LinearGradient(0, 0, 0, 1, [
|
|
|
{
|