Bläddra i källkod

修改指示灯

unknown 2 år sedan
förälder
incheckning
b093795a32
7 ändrade filer med 690 tillägg och 29 borttagningar
  1. 3 2
      manpower/js/data.js
  2. 416 22
      manpower/js/index.js
  3. 88 0
      manpower/js/index2.js
  4. 89 0
      manpower/js/index3.js
  5. 89 0
      manpower/js/index4.js
  6. 1 1
      manpower/js/li.js
  7. 4 4
      manpower/styles/index.css

+ 3 - 2
manpower/js/data.js

@@ -20,7 +20,7 @@ const companyList = [
 ]
 const data = {
   info: {
-    value1: '5808',
+    value1: '5805',
     value2: '444094',
     value3: '860527',
   },
@@ -44,7 +44,7 @@ const data = {
 }
 const dataL1 = [
   [35, 30, 28, 41, 28, 28, 6, 23, 31, 19, 19, 17, 23, 27, 25, 15, 13, 13],
-  [18, 21, 14, 21, 13, 14, 6, 13, 13, 14, 14, 12, 15, 16, 12, 15, 10, 19],
+  [18, 21, 14, 21, 13, 14, 6, 13, 13, 14, 14, 12, 15, 16, 12, 15, 10, 13],
   [21, 21, 21, 21, 13, 13, 6, 13, 13, 14, 14, 12, 15, 15, 12, 15, 12, 13],
 ]
 const dataL2 = [
@@ -73,6 +73,7 @@ const dataL7 = [
   [-1, -5, -24, 2, 5, -4, -13, -5, -3, 2, -2, -3, 5, 1, 14, -1, 490, 23],
   [34.0, 17.0, 23.0, 26, 2, 7, null, 24.0, 15.0, -33.0, 10.0, -38.0, 12.0, 43.0, -7.0, 6.0, 56.0, 121.0],
 ]
+
 const dataL8 = [
   [-1, -5, -24, 2, 5, -4, -13, -5, -3, 2, -2, -3, 5, 1, 14, -1, 490, 23],
   [145.0, 88.0, 58.0, 70, 8, 33, 98, 21.0, 24.0, -470.0, 69.0, -185.0, 19.0, 33.0, -4.0, 27.0, 76.0, 107.0],

+ 416 - 22
manpower/js/index.js

@@ -4,6 +4,9 @@ let app = new Vue({
   el: '#app',
   data() {
     return {
+      twinkle7: [],
+      twinkle8: [],
+      twinkleR6: [],
       showTip: false,
       showTip2: false,
       tipNum: '',
@@ -19,6 +22,7 @@ let app = new Vue({
         header: ['', '时间', '所属集团', '工作情况'],
         headerBGC: '#05507b33',
         oddRowBGC: '#69c0ff0f',
+        waitTime: '50000',
         evenRowBGC: '',
         headerHeight: '40',
         columnWidth: [150, 150],
@@ -177,6 +181,30 @@ let app = new Vue({
       },
     }
   },
+  beforeMount(){
+    dataL7[0].forEach((item,index) => {
+      if(dataL7[1][index] < 0 &&  dataL7[0][index] > 0){
+        let obj = {value:[companyList[index].name ,dataL7[0][index]],symbolSize:15 }
+        this.twinkle7.push(obj)
+      }
+    })
+    //  if (dataL8[1][params.dataIndex] < 0 && params.value > 0) {
+      dataL8[0].forEach((item,index) => {
+        if(dataL8[1][index] < 0 &&  dataL8[0][index] > 0){
+          let obj = {value:[companyList[index].name ,dataL8[0][index]],symbolSize:15 }
+          this.twinkle8.push(obj)
+        }
+      })
+      // params.value > 0 && fjxdataL2[0][params.dataIndex] < 0
+      fjxdataL2[0].forEach((item,index) => {
+        if(fjxdataL2[1][index] > 0 &&  fjxdataL2[0][index] < 0){
+          let obj = {value:[companyList[index].name ,fjxdataL2[1][index]],symbolSize:15 }
+          this.twinkleR6.push(obj)
+        }
+      })
+      
+    console.log(this.twinkleR6)
+  },
   mounted() {
     this.time = formatDate()
     this.timer = setInterval(() => {
@@ -340,6 +368,25 @@ let app = new Vue({
             name: '当前共享服务中心/事业部数',
             type: 'bar',
             barWidth: 15,
+            label: {
+              normal: {
+                show: true,
+                position: 'top',
+                textStyle: {
+                  color: '#fff',
+                  fontStyle: 'normal',
+                  textAlign: 'left',
+                  fontSize: 16,
+              },
+                formatter: function(data) {
+                    if(data.name == '华阳新材'){
+                      return data.value
+                    } else {
+                      return ''
+                    }
+               }
+             }
+            },
             itemStyle: {
               color: params => {
                 if (params.value > dataL2[1][params.dataIndex]) {
@@ -378,6 +425,25 @@ let app = new Vue({
             symbol: 'circle', //标记的图形为实心圆
             symbolSize: 8, //标记的大小
             smooth: false,
+            label: {
+              normal: {
+                show: true,
+                position: 'top',
+                textStyle: {
+                  color: '#fff',
+                  fontStyle: 'normal',
+                  textAlign: 'left',
+                  fontSize: 16,
+              },
+                formatter: function(data) {
+                    if(data.name == '华阳新材'){
+                      return data.value
+                    } else {
+                      return ''
+                    }
+               }
+             }
+            },
             itemStyle: {
               //折线拐点标志的样式
               color: '#fbe138',
@@ -531,6 +597,25 @@ let app = new Vue({
             name: '六定改革前总部中层管理人数',
             type: 'bar',
             barWidth: 15,
+            label: {
+              normal: {
+                show: true,
+                position: 'top',
+                textStyle: {
+                  color: '#fff',
+                  fontStyle: 'normal',
+                  textAlign: 'left',
+                  fontSize: 16,
+              },
+                formatter: function(data) {
+                    if(data.name == '云时代'){
+                      return data.value
+                    } else {
+                      return ''
+                    }
+               }
+             }
+            },
             itemStyle: {
               normal: {
                 color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
@@ -551,6 +636,25 @@ let app = new Vue({
             name: '当前总部中层管理人数',
             type: 'bar',
             barWidth: 15,
+            label: {
+              normal: {
+                show: true,
+                position: 'top',
+                textStyle: {
+                  color: '#fff',
+                  fontStyle: 'normal',
+                  textAlign: 'left',
+                  fontSize: 16,
+              },
+                formatter: function(data) {
+                    if(data.name == '云时代'){
+                      return data.value
+                    } else {
+                      return ''
+                    }
+               }
+             }
+            },
             itemStyle: {
               normal: {
                 color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
@@ -576,6 +680,25 @@ let app = new Vue({
             symbol: 'circle', //标记的图形为实心圆
             symbolSize: 8, //标记的大小
             smooth: false,
+            label: {
+              normal: {
+                show: true,
+                position: 'top',
+                textStyle: {
+                  color: '#fff',
+                  fontStyle: 'normal',
+                  textAlign: 'left',
+                  fontSize: 16,
+              },
+                formatter: function(data) {
+                    if(data.name == '云时代'){
+                      return data.value
+                    } else {
+                      return ''
+                    }
+               }
+             }
+            },
             itemStyle: {
               //折线拐点标志的样式
               color: '#fbe138',
@@ -614,6 +737,25 @@ let app = new Vue({
             name: '各省属企业总人数',
             type: 'bar',
             barWidth: 15,
+            label: {
+              normal: {
+                show: true,
+                position: 'top',
+                textStyle: {
+                  color: '#fff',
+                  fontStyle: 'normal',
+                  textAlign: 'left',
+                  fontSize: 16,
+              },
+                formatter: function(data) {
+                    if(data.name == '华阳新材' || data.name=='华舰体育'){
+                      return data.value
+                    } else {
+                      return ''
+                    }
+               }
+             }
+            },
             itemStyle: {
               normal: {
                 color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
@@ -768,6 +910,7 @@ let app = new Vue({
     },
     initChartL7() {
       let myChart = echarts.init(this.$refs['echartL7'])
+      let that = this
       let option = {
         ..._.cloneDeep(this.commonOption),
         color: ['#43ede3'],
@@ -780,6 +923,26 @@ let app = new Vue({
             symbol: 'circle', //标记的图形为实心圆
             symbolSize: 15, //标记的大小
             smooth: false,
+            label: {
+              normal: {
+                show: true,
+                position: 'top',
+                lineHeight: '30',
+                textStyle: {
+                  color: '#43ede3',
+                  fontStyle: 'normal',
+                  textAlign: 'left',
+                  fontSize: 16,
+                },
+                formatter: function(data) {
+                    if(data.name == '文旅集团'|| data.name== "大地控股" || data.name=='华舰体育'){
+                      return data.value
+                    } else {
+                      return ''
+                    }
+               }
+             }
+            },
             itemStyle: {
               color: params => {
                 if (dataL7[1][params.dataIndex] < 0 && params.value > 0) {
@@ -803,7 +966,7 @@ let app = new Vue({
             smooth: true, //平滑曲线显示
             showAllSymbol: true, //显示所有图形。
             symbol: 'circle', //标记的图形为实心圆
-            symbolSize: 15, //标记的大小
+            symbolSize: 8, //标记的大小
             smooth: false,
             itemStyle: {
               //折线拐点标志的样式
@@ -815,6 +978,26 @@ let app = new Vue({
             },
             data: dataL7[1],
           },
+          {
+            type: 'effectScatter',
+            coordinateSystem: 'cartesian2d',
+            showEffectOn: 'render',
+            rippleEffect: {
+              period: 10,
+              scale: 4,
+              brushType: 'stroke'
+            },
+            hoverAnimation: true,
+            itemStyle: {
+              color: 'red'
+            },
+            lineStyle: {
+              color: '#43ede3',
+              width: 2,
+            },
+            
+            data: that.twinkle7,
+          },
         ],
       }
       option.title.text = '人数变化和全员劳动生产率变化分析'
@@ -865,6 +1048,26 @@ let app = new Vue({
             symbol: 'circle', //标记的图形为实心圆
             symbolSize: 15, //标记的大小
             smooth: false,
+            label: {
+              normal: {
+                show: true,
+                position: 'bottom',
+                lineHeight:'20',
+                textStyle: {
+                  color: '#43ede3',
+                  fontStyle: 'normal',
+                  textAlign: 'left',
+                  fontSize: 16,
+              },
+                formatter: function(data) {
+                    if(data.name == '文旅集团' || data.name=='大地控股'){
+                      return data.value
+                    } else {
+                      return ''
+                    }
+               }
+             }
+            },
             itemStyle: {
               color: params => {
                 if (dataL8[1][params.dataIndex] < 0 && params.value > 0) {
@@ -888,6 +1091,26 @@ let app = new Vue({
             symbol: 'circle', //标记的图形为实心圆
             symbolSize: 15, //标记的大小
             smooth: false,
+            label: {
+              normal: {
+                show: true,
+                position: 'top',
+                lineHeight:'30',
+                textStyle: {
+                  color: '#b889ea',
+                  fontStyle: 'normal',
+                  textAlign: 'left',
+                  fontSize: 16,
+              },
+                formatter: function(data) {
+                    if(data.name == '文旅集团' || data.name=='大地控股'){
+                      return data.value
+                    } else {
+                      return ''
+                    }
+               }
+             }
+            },
             itemStyle: {
               //折线拐点标志的样式
               color: '#b889ea',
@@ -903,6 +1126,46 @@ let app = new Vue({
             },
             data: dataL8[1],
           },
+          {
+            type: 'effectScatter',
+            coordinateSystem: 'cartesian2d',
+            showEffectOn: 'render',
+            rippleEffect: {
+              period: 10,
+              scale: 4,
+              brushType: 'stroke'
+            },
+            hoverAnimation: true,
+            itemStyle: {
+              color: 'red'
+            },
+            lineStyle: {
+              color: '#43ede3',
+              width: 2,
+            },
+            
+            data: this.twinkle8,
+          },
+          // {
+          //   type: 'effectScatter',
+          //   coordinateSystem: 'cartesian2d',
+          //   showEffectOn: 'render',
+          //   rippleEffect: {
+          //     period: 10,
+          //     scale: 4,
+          //     brushType: 'stroke'
+          //   },
+          //   hoverAnimation: true,
+          //   itemStyle: {
+          //     color: 'red'
+          //   },
+          //   lineStyle: {
+          //     color: '#43ede3',
+          //     width: 2,
+          //   },
+            
+          //   data: that.twinkle,
+          // },
         ],
         // tooltip: {
         //   trigger: 'axis',
@@ -930,6 +1193,25 @@ let app = new Vue({
             name: '全员劳动生产率(万/人)',
             type: 'bar',
             barWidth: 15,
+            label: {
+              normal: {
+                show: true,
+                position: 'top',
+                textStyle: {
+                  color: '#fff',
+                  fontStyle: 'normal',
+                  textAlign: 'left',
+                  fontSize: 16,
+              },
+                formatter: function(data) {
+                    if(data.name == '国际能源' || data.name == '汾酒集团'){
+                      return data.value
+                    } else {
+                      return ''
+                    }
+               }
+             }
+            },
             itemStyle: {
               color: params => {
                 if (params.value < 0 && c1[1][params.dataIndex] < 0) {
@@ -950,6 +1232,22 @@ let app = new Vue({
                 }
               },
             },
+
+            // markPoint:{
+            //   symbol: 'path://m 0,0 h 48 v 30 h -30 l -6,10 l -6,-10 h -6 z',
+            //   symbolSize: '55',
+            //   symbolOffset: ['25%',0],
+            //   symbolKeepAspect:true,
+            //   label:{
+            //     show: true,
+            //     fontSize:18,
+            //     color: '#fff'
+            //   },
+            //   itemStyle: {
+            //     color: 'rgba(38,48,59,0.6)'
+            //   },
+            //   data:[{value:'117.48', xAxis: '国际能源', yAxis: 127 },{value:'138.83', xAxis: '汾酒集团', yAxis: 148 }]
+            // },
             markLine: {
               data: [
                 {
@@ -1048,27 +1346,6 @@ let app = new Vue({
           },
         },
       })
-      // option.yAxis.push({
-      //   type: 'log',
-      //   min: -1,
-      //   logBase: 10,
-      //   axisLine: {
-      //     show: false,
-      //   },
-      //   splitLine: {
-      //     show: false,
-      //   },
-      //   axisLabel: {
-      //     show: true,
-      //     formatter: function(value) {
-      //       console.log(value,"value")
-      //       // return value === 1 ? 0 : value
-      //     },
-      //     textStyle: {
-      //       color: 'rgba(250,250,250,0.6)',
-      //     },
-      //   },
-      // })
       myChart.setOption(option)
       // tools.loopShowTooltip(myChart, option, {
       //   nterval: 2000,
@@ -1085,6 +1362,25 @@ let app = new Vue({
             name: '人工成本利润率',
             type: 'bar',
             barWidth: 15,
+            label: {
+              normal: {
+                show: true,
+                position: 'top',
+                textStyle: {
+                  color: '#fff',
+                  fontStyle: 'normal',
+                  textAlign: 'left',
+                  fontSize: 16,
+              },
+                formatter: function(data) {
+                    if(data.name == '国际能源' || data.name == '文旅集团' || data.name == '航产集团' || data.name == '华舰体育'){
+                      return data.value
+                    } else {
+                      return ''
+                    }
+               }
+             }
+            },
             markLine: {
               data: [
                 {
@@ -1386,6 +1682,25 @@ let app = new Vue({
             name: '2022年利润(万)',
             type: 'bar',
             barWidth: 15,
+            label: {
+              normal: {
+                show: true,
+                position: 'bottom',
+                textStyle: {
+                  color: '#fff',
+                  fontStyle: 'normal',
+                  textAlign: 'left',
+                  fontSize: 14,
+              },
+                formatter: function(data) {
+                    if(data.name=="国际能源" || data.name == '文旅集团' || data.name=='航产集团'||data.name == '华舰体育'){
+                      return data.value
+                    } else {
+                      return ''
+                    }
+               }
+             }
+            },
             itemStyle: {
               normal: {
                 color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
@@ -1407,6 +1722,25 @@ let app = new Vue({
             type: 'bar',
             barWidth: 15,
             yAxisIndex: 1,
+            label: {
+              normal: {
+                show: true,
+                position: 'top',
+                textStyle: {
+                  color: '#fff',
+                  fontStyle: 'normal',
+                  textAlign: 'right',
+                  fontSize: 14,
+              },
+                formatter: function(data) {
+                    if(data.name=="国际能源" || data.name == '文旅集团' || data.name=='航产集团'||data.name == '华舰体育'){
+                      return data.value
+                    } else {
+                      return ''
+                    }
+               }
+             }
+            },
             itemStyle: {
               color: params => {
                 if (params.value > 0 && dataR3[0][params.dataIndex] < 0) {
@@ -1685,6 +2019,26 @@ let app = new Vue({
             symbol: 'circle', //标记的图形为实心圆
             symbolSize: 8, //标记的大小
             smooth: false,
+            label: {
+              normal: {
+                show: true,
+                
+                position: 'top',
+                textStyle: {
+                  color: '#fff',
+                  fontStyle: 'normal',
+                  textAlign: 'left',
+                  fontSize: 16,
+              },
+                formatter: function(data) {
+                    if(data.name == '文旅集团'){
+                      return data.value
+                    } else {
+                      return ''
+                    }
+               }
+             }
+            },
             itemStyle: {
               //折线拐点标志的样式
               color: '#B889EA',
@@ -1708,6 +2062,26 @@ let app = new Vue({
             symbol: 'circle', //标记的图形为实心圆
             symbolSize: 12, //标记的大小
             smooth: false,
+            label: {
+              normal: {
+                show: true,
+                position: 'top',
+                lineHeight:'35',
+                textStyle: {
+                  color: '#fff',
+                  fontStyle: 'normal',
+                  textAlign: 'left',
+                  fontSize: 16,
+              },
+                formatter: function(data) {
+                    if(data.name == '文旅集团'){
+                      return data.value
+                    } else {
+                      return ''
+                    }
+               }
+             }
+            },
             itemStyle: {
               color: params => {
                 if (params.value > 0 && fjxdataL2[0][params.dataIndex] < 0) {
@@ -1732,6 +2106,26 @@ let app = new Vue({
             },
             data: fjxdataL2[1],
           },
+          {
+            type: 'effectScatter',
+            coordinateSystem: 'cartesian2d',
+            showEffectOn: 'render',
+            rippleEffect: {
+              period: 10,
+              scale: 4,
+              brushType: 'stroke'
+            },
+            hoverAnimation: true,
+            itemStyle: {
+              color: 'yellow'
+            },
+            lineStyle: {
+              color: '#43ede3',
+              width: 2,
+            },
+            
+            data: this.twinkleR6,
+          },
         ],
       }
       option.title.text = '各省属企业利润与薪酬变动情况'

+ 88 - 0
manpower/js/index2.js

@@ -4,6 +4,9 @@ let app = new Vue({
   el: '#app',
   data() {
     return {
+      twinkle7: [],
+      twinkle8: [],
+      twinkleR6: [],
       showTip: false,
       tipNum: '',
       time: '',
@@ -135,6 +138,30 @@ let app = new Vue({
       },
     }
   },
+  beforeMount(){
+    dataL7[0].forEach((item,index) => {
+      if(dataL7[1][index] < 0 &&  dataL7[0][index] > 0){
+        let obj = {value:[companyList[index].name ,dataL7[0][index]],symbolSize:15 }
+        this.twinkle7.push(obj)
+      }
+    })
+    //  if (dataL8[1][params.dataIndex] < 0 && params.value > 0) {
+      dataL8[0].forEach((item,index) => {
+        if(dataL8[1][index] < 0 &&  dataL8[0][index] > 0){
+          let obj = {value:[companyList[index].name ,dataL8[0][index]],symbolSize:15 }
+          this.twinkle8.push(obj)
+        }
+      })
+      // params.value > 0 && fjxdataL2[0][params.dataIndex] < 0
+      dataR6[0].forEach((item,index) => {
+        if(dataR6[1][index] > 0 &&  dataR6[0][index] < 0){
+          let obj = {value:[companyList[index].name ,dataR6[1][index]],symbolSize:15 }
+          this.twinkleR6.push(obj)
+        }
+      })
+      
+    console.log(this.twinkleR6)
+  },
   mounted() {
     this.time = formatDate()
     this.timer = setInterval(() => {
@@ -595,6 +622,27 @@ let app = new Vue({
             // },
             data: dataL7[1],
           },
+
+          {
+            type: 'effectScatter',
+            coordinateSystem: 'cartesian2d',
+            showEffectOn: 'render',
+            rippleEffect: {
+              period: 10,
+              scale: 4,
+              brushType: 'stroke'
+            },
+            hoverAnimation: true,
+            itemStyle: {
+              color: 'red'
+            },
+            lineStyle: {
+              color: '#43ede3',
+              width: 2,
+            },
+            
+            data: this.twinkle7,
+          },
         ],
       }
       option.title.text = '人数变化和全员劳动生产率变化率分析'
@@ -695,6 +743,26 @@ let app = new Vue({
             },
             data: dataL8[1],
           },
+          {
+            type: 'effectScatter',
+            coordinateSystem: 'cartesian2d',
+            showEffectOn: 'render',
+            rippleEffect: {
+              period: 10,
+              scale: 4,
+              brushType: 'stroke'
+            },
+            hoverAnimation: true,
+            itemStyle: {
+              color: 'red'
+            },
+            lineStyle: {
+              color: '#43ede3',
+              width: 2,
+            },
+            
+            data: this.twinkle8,
+          },
         ],
       }
       option.title.text = '人数变化和人工利润率变化分析'
@@ -1393,6 +1461,26 @@ let app = new Vue({
             },
             data: dataR6[1],
           },
+          {
+            type: 'effectScatter',
+            coordinateSystem: 'cartesian2d',
+            showEffectOn: 'render',
+            rippleEffect: {
+              period: 10,
+              scale: 4,
+              brushType: 'stroke'
+            },
+            hoverAnimation: true,
+            itemStyle: {
+              color: 'red'
+            },
+            lineStyle: {
+              color: '#43ede3',
+              width: 2,
+            },
+            
+            data: this.twinkleR6,
+          },
         ],
       }
       option.title.text = '各二级企业利润与薪酬变动情况'

+ 89 - 0
manpower/js/index3.js

@@ -4,6 +4,9 @@ let app = new Vue({
   el: '#app',
   data() {
     return {
+      twinkle7: [],
+      twinkle8: [],
+      twinkleR6: [],
       showTip: false,
       tipNum: '',
       time: '',
@@ -137,6 +140,31 @@ let app = new Vue({
       },
     }
   },
+  beforeMount(){
+    dataL7[0].forEach((item,index) => {
+      if(dataL7[1][index] < 0 &&  dataL7[0][index] > 0){
+        let obj = {value:[companyList[index].name ,dataL7[0][index]],symbolSize:15 }
+        this.twinkle7.push(obj)
+      }
+    })
+    //  if (dataL8[1][params.dataIndex] < 0 && params.value > 0) {
+      dataL8[0].forEach((item,index) => {
+        if(dataL8[1][index] < 0 &&  dataL8[0][index] > 0){
+          let obj = {value:[companyList[index].name ,dataL8[0][index]],symbolSize:15 }
+          this.twinkle8.push(obj)
+        }
+      })
+      //params.value > 0 && dataR6[0][params.dataIndex] < 0
+      // params.value > 0 && fjxdataL2[0][params.dataIndex] < 0
+      dataR6[0].forEach((item,index) => {
+        if(dataR6[1][index] > 0 &&  dataR6[0][index] < 0){
+          let obj = {value:[companyList[index].name ,dataR6[1][index]],symbolSize:15 }
+          this.twinkleR6.push(obj)
+        }
+      })
+      
+    console.log(this.twinkleR6)
+  },
   mounted() {
     this.time = formatDate()
     this.timer = setInterval(() => {
@@ -579,6 +607,26 @@ let app = new Vue({
             },
             data: dataL7[1],
           },
+          {
+            type: 'effectScatter',
+            coordinateSystem: 'cartesian2d',
+            showEffectOn: 'render',
+            rippleEffect: {
+              period: 10,
+              scale: 4,
+              brushType: 'stroke'
+            },
+            hoverAnimation: true,
+            itemStyle: {
+              color: 'red'
+            },
+            lineStyle: {
+              color: '#43ede3',
+              width: 2,
+            },
+            
+            data: this.twinkle7,
+          },
         ],
       }
       option.title.text = '人数变化和全员劳动生产率变化率分析'
@@ -679,6 +727,26 @@ let app = new Vue({
             },
             data: dataL8[1],
           },
+          {
+            type: 'effectScatter',
+            coordinateSystem: 'cartesian2d',
+            showEffectOn: 'render',
+            rippleEffect: {
+              period: 10,
+              scale: 4,
+              brushType: 'stroke'
+            },
+            hoverAnimation: true,
+            itemStyle: {
+              color: 'red'
+            },
+            lineStyle: {
+              color: '#43ede3',
+              width: 2,
+            },
+            
+            data: this.twinkle8,
+          },
         ],
       }
       option.title.text = '人数变化和人工利润率变化分析'
@@ -1438,6 +1506,27 @@ let app = new Vue({
             },
             data: dataR6[1],
           },
+          {
+            yAxisIndex: 1,
+            type: 'effectScatter',
+            coordinateSystem: 'cartesian2d',
+            showEffectOn: 'render',
+            rippleEffect: {
+              period: 10,
+              scale: 4,
+              brushType: 'stroke'
+            },
+            hoverAnimation: true,
+            itemStyle: {
+              color: 'yellow'
+            },
+            lineStyle: {
+              color: '#43ede3',
+              width: 2,
+            },
+            
+            data: this.twinkleR6,
+          },
         ],
       }
       option.title.text = '各三级企业利润与薪酬变动情况'

+ 89 - 0
manpower/js/index4.js

@@ -4,6 +4,9 @@ let app = new Vue({
   el: '#app',
   data() {
     return {
+      twinkle7: [],
+      twinkle8: [],
+      twinkleR6: [],
       showTip: false,
       tipNum: '',
       time: '',
@@ -139,6 +142,31 @@ let app = new Vue({
       },
     }
   },
+  beforeMount(){
+    dataL7[0].forEach((item,index) => {
+      if(dataL7[1][index] < 0 &&  dataL7[0][index] > 0){
+        let obj = {value:[companyList[index].name ,dataL7[0][index]],symbolSize:15 }
+        this.twinkle7.push(obj)
+      }
+    })
+    //  if (dataL8[1][params.dataIndex] < 0 && params.value > 0) {
+      dataL8[0].forEach((item,index) => {
+        if(dataL8[1][index] < 0 &&  dataL8[0][index] > 0){
+          let obj = {value:[companyList[index].name ,dataL8[0][index]],symbolSize:15 }
+          this.twinkle8.push(obj)
+        }
+      })
+      //params.value > 0 && dataR6[0][params.dataIndex] < 0
+      // params.value > 0 && fjxdataL2[0][params.dataIndex] < 0
+      dataR6[0].forEach((item,index) => {
+        if(dataR6[1][index] > 0 &&  dataR6[0][index] < 0){
+          let obj = {value:[companyList[index].name ,dataR6[1][index]],symbolSize:15 }
+          this.twinkleR6.push(obj)
+        }
+      })
+      
+    console.log(this.twinkleR6)
+  },
   mounted() {
     this.time = formatDate()
     this.timer = setInterval(() => {
@@ -584,6 +612,26 @@ let app = new Vue({
             },
             data: dataL7[1],
           },
+          {
+            type: 'effectScatter',
+            coordinateSystem: 'cartesian2d',
+            showEffectOn: 'render',
+            rippleEffect: {
+              period: 10,
+              scale: 4,
+              brushType: 'stroke'
+            },
+            hoverAnimation: true,
+            itemStyle: {
+              color: 'red'
+            },
+            lineStyle: {
+              color: '#43ede3',
+              width: 2,
+            },
+            
+            data: this.twinkle7,
+          },
         ],
       }
       option.title.text = '人数变化和全员劳动生产率变化率分析'
@@ -684,6 +732,26 @@ let app = new Vue({
             },
             data: dataL8[1],
           },
+          {
+            type: 'effectScatter',
+            coordinateSystem: 'cartesian2d',
+            showEffectOn: 'render',
+            rippleEffect: {
+              period: 10,
+              scale: 4,
+              brushType: 'stroke'
+            },
+            hoverAnimation: true,
+            itemStyle: {
+              color: 'red'
+            },
+            lineStyle: {
+              color: '#43ede3',
+              width: 2,
+            },
+            
+            data: this.twinkle8,
+          },
         ],
       }
       option.title.text = '人数变化和人工利润率变化分析'
@@ -1415,6 +1483,27 @@ let app = new Vue({
             },
             data: dataR6[1],
           },
+          {
+            yAxisIndex: 1,
+            type: 'effectScatter',
+            coordinateSystem: 'cartesian2d',
+            showEffectOn: 'render',
+            rippleEffect: {
+              period: 10,
+              scale: 4,
+              brushType: 'stroke'
+            },
+            hoverAnimation: true,
+            itemStyle: {
+              color: 'yellow'
+            },
+            lineStyle: {
+              color: '#43ede3',
+              width: 2,
+            },
+            
+            data: this.twinkleR6,
+          },
         ],
       }
 

+ 1 - 1
manpower/js/li.js

@@ -4,7 +4,7 @@ const dataR1 = [
 ]
 const dataR2 = [
   [1, 1, 5, 1, 1, 4, 2, 6, 3, 0, 7, 5, 1, 1, 4, 1, 1, 3],
-  [0, 2290, 1884, 0, 34, 339, 0, 231, 93, 0, 511, 0, 9, 12, 85, 508, 61, 82],
+  [0, 2290, 1884, 0, 34, 339, 6, 231, 93, 0, 511, 0, 9, 12, 85, 508, 61, 82],
 ]
 const dataR3 = [
   [3006606.00, 3262765.00, 751436.00, 1020038.00, 110320.00, 30198.00, -4547.00, 77807.00, 23356.00, -31785.00, 125604.00, -30488.00, 432926.00, 1032546.00, 51752.00, 73106.00, -10784.00, 672.00],

+ 4 - 4
manpower/styles/index.css

@@ -96,7 +96,7 @@ a {
   background-size: 100% 100%;
   text-align: center;
   font-weight: bold;
-  font-size: 56px;
+  font-size: 60px;
   font-weight: 600;
 }
 .my-header span {
@@ -234,7 +234,7 @@ a {
   background-size: 100% 100%;
 }
 .panel-title .text {
-  font-size: 22px;
+  font-size: 26px;
   font-weight: 600;
   color: #daf9ff;
 }
@@ -335,12 +335,12 @@ a {
   margin-left: 10px;
 }
 .dv-scroll-board .header {
-  font-size: 18px !important;
+  font-size: 20px !important;
   font-weight: 600 !important;
   background-color: rgba(105, 192, 255, 0.1) !important;
 }
 .dv-scroll-board .rows .row-item {
-  font-size: 18px !important;
+  font-size: 20px !important;
 }
 .tip-window {
   margin-right: 50px;