{"remainingRequest":"D:\\jenkins\\workspace\\xypm-web\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!D:\\jenkins\\workspace\\xypm-web\\src\\components\\charts\\GanttChart.vue?vue&type=script&lang=js&","dependencies":[{"path":"D:\\jenkins\\workspace\\xypm-web\\src\\components\\charts\\GanttChart.vue","mtime":1675214576448},{"path":"D:\\jenkins\\workspace\\xypm-web\\node_modules\\babel-loader\\lib\\index.js","mtime":315532800000},{"path":"D:\\jenkins\\workspace\\xypm-web\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\jenkins\\workspace\\xypm-web\\node_modules\\vue-loader\\lib\\index.js","mtime":499162500000}],"contextDependencies":[],"result":["//\n//\n//\n//\n//\n//\n\r\nimport * as echarts from 'echarts'\r\nexport default {\r\n  mounted() {\r\n    this.draw()\r\n  },\r\n  methods: {\r\n    draw() {\r\n      var chartDom = document.getElementById('mainGantt')\r\n      var myChart = echarts.init(chartDom)\r\n      var option\r\n\r\n      let xAxisData = []\r\n      let dataX = [[], [], [], [], [], [], [], [], [], [], [], [], []]\r\n      let data = [\r\n        'W分区H4路(一期)',\r\n        'W分区2号路',\r\n        '西科四路',\r\n        '师牛路工程',\r\n        '西永大道拓宽改造',\r\n        'M分区A4路',\r\n        'M分区B2路',\r\n        'M分区B5路',\r\n        'W分区Z3路',\r\n        'L分区永源路',\r\n        'W分区H7路'\r\n      ]\r\n      for (let i = 0; i < 10; i++) {\r\n        xAxisData.push(data[i])\r\n        if (i < 1) {\r\n          for (let j = 0; j < 13; j++) {\r\n            if (j == 9) {\r\n              dataX[j].push(4)\r\n            } else {\r\n              dataX[j].push(0.5)\r\n            }\r\n          }\r\n        } else if (i < 2) {\r\n          for (let j = 0; j < 12; j++) {\r\n            if (j == 9) {\r\n              dataX[j].push(4)\r\n            } else {\r\n              dataX[j].push(0.5)\r\n            }\r\n          }\r\n        } else if (i < 3) {\r\n          for (let j = 0; j < 11; j++) {\r\n            if (j == 9) {\r\n              dataX[j].push(4)\r\n            } else {\r\n              dataX[j].push(0.5)\r\n            }\r\n          }\r\n        } else if (i < 4) {\r\n          for (let j = 0; j < 10; j++) {\r\n            if (j == 9) {\r\n              dataX[j].push(4)\r\n            } else {\r\n              dataX[j].push(0.5)\r\n            }\r\n          }\r\n        } else if (i < 5) {\r\n          for (let j = 0; j < 9; j++) {\r\n            if (j == 9) {\r\n              dataX[j].push(4)\r\n            } else {\r\n              dataX[j].push(0.5)\r\n            }\r\n          }\r\n        } else if (i < 6) {\r\n          for (let j = 0; j < 8; j++) {\r\n            if (j == 9) {\r\n              dataX[j].push(4)\r\n            } else {\r\n              dataX[j].push(0.5)\r\n            }\r\n          }\r\n        } else if (i < 7) {\r\n          for (let j = 0; j < 7; j++) {\r\n            if (j == 9) {\r\n              dataX[j].push(4)\r\n            } else {\r\n              dataX[j].push(0.5)\r\n            }\r\n          }\r\n        } else if (i < 8) {\r\n          for (let j = 0; j < 6; j++) {\r\n            if (j == 9) {\r\n              dataX[j].push(4)\r\n            } else {\r\n              dataX[j].push(0.5)\r\n            }\r\n          }\r\n        } else if (i < 9) {\r\n          for (let j = 0; j < 5; j++) {\r\n            if (j == 9) {\r\n              dataX[j].push(4)\r\n            } else {\r\n              dataX[j].push(0.5)\r\n            }\r\n          }\r\n        } else {\r\n          for (let j = 0; j < 4; j++) {\r\n            if (j == 9) {\r\n              dataX[j].push(4)\r\n            } else {\r\n              dataX[j].push(0.5)\r\n            }\r\n          }\r\n        }\r\n      }\r\n      var emphasisStyle = {\r\n        itemStyle: {\r\n          shadowBlur: 10,\r\n          shadowColor: 'rgba(0,0,0,0.3)'\r\n        }\r\n      }\r\n      option = {\r\n        tooltip: {\r\n          axisPointer: {\r\n            type: ''\r\n          },\r\n          formatter: function(value) {\r\n            let kg = '2020-05-06'\r\n            let jg = '2021-07-09'\r\n            let hh = '<br/>'\r\n            return (\r\n              value.name +\r\n              hh +\r\n              value.marker +\r\n              '项目状态：' +\r\n              value.seriesName +\r\n              hh +\r\n              value.marker +\r\n              '开工时间：' +\r\n              kg +\r\n              hh +\r\n              value.marker +\r\n              '竣工时间：' +\r\n              jg\r\n            )\r\n          }\r\n        },\r\n        xAxis: {\r\n          name: '项目状态',\r\n          nameTextStyle: {\r\n            color: '#9FA1A7',\r\n            fontSize: 16\r\n          },\r\n          type: 'value',\r\n          axisTick: {\r\n            // y轴刻度线\r\n            show: false\r\n          },\r\n          type: 'value',\r\n          interval: 0.5,\r\n          min: 0,\r\n          max: 10,\r\n          axisLabel: {\r\n            show: true,\r\n            textStyle: {\r\n              color: '#9FA1A7'\r\n            },\r\n            fontSize: 16,\r\n            rotate: 30,\r\n            // 这里重新定义就可以\r\n            formatter: function(value) {\r\n              var texts = []\r\n              if (value === 0.5 || value === '0.5') {\r\n                texts.push('立项')\r\n              } else if (value === 1 || value === '1') {\r\n                texts.push('可研')\r\n              } else if (value === 1.5 || value === '1.5') {\r\n                texts.push('规划')\r\n              } else if (value === 2 || value === '2') {\r\n                texts.push('初设')\r\n              } else if (value === 2.5 || value === '2.5') {\r\n                texts.push('概算')\r\n              } else if (value === 3 || value === '3') {\r\n                texts.push('施工图设计')\r\n              } else if (value === 3.5 || value === '3.5') {\r\n                texts.push('招投标')\r\n              } else if (value === 4 || value === '4') {\r\n                texts.push('合同')\r\n              } else if (value === 4.5 || value === '4.5') {\r\n                texts.push('施工许可')\r\n              } else if (value === 7 || value === '7') {\r\n                texts.push('工程施工')\r\n              } else if (value === 9 || value === '9') {\r\n                texts.push('竣工验收')\r\n              } else if (value === 9.5 || value === '9.5') {\r\n                texts.push('结算')\r\n              } else if (value === 10 || value === '10') {\r\n                texts.push('决算')\r\n              } \r\n              return texts\r\n            }\r\n          },\r\n          axisLine: {\r\n            lineStyle: {\r\n              type: 'solid',\r\n              color: 'rgba(255, 255, 255, 0.37)' // 左边线的颜色\r\n            }\r\n          }\r\n        },\r\n        yAxis: {\r\n          data: xAxisData,\r\n          name: '项目名称',\r\n          nameTextStyle: {\r\n            fontSize: 16\r\n          },\r\n          axisLine: {onZero: true},\r\n          splitLine: {show: false},\r\n          splitArea: {show: false},\r\n          triggerEvent: true,\r\n          axisLabel: {\r\n            fontSize: 16,\r\n            formatter: a => {\r\n              return a.substring(0, 4) + '...'\r\n            }\r\n          }\r\n        },\r\n        grid: {\r\n          bottom: 100\r\n        },\r\n        series: [\r\n          {\r\n            name: '立项',\r\n            type: 'bar',\r\n            stack: 'one',         \r\n            emphasis: emphasisStyle,\r\n            data: dataX[0],\r\n            itemStyle: {\r\n              normal: {\r\n                // barBorderRadius: [0, 10, 10, 0],\r\n                color: new echarts.graphic.LinearGradient(1, 0, 0, 1, [\r\n                  {\r\n                    offset: 0,\r\n                    color: '#5470c6'\r\n                  },\r\n                  {\r\n                    offset: 1,\r\n                    color: '#50c48f'\r\n                  }\r\n                ])\r\n              }\r\n            }\r\n          },\r\n          {\r\n            name: '可研',\r\n            type: 'bar',\r\n            stack: 'one',\r\n            emphasis: emphasisStyle,\r\n            data: dataX[1],\r\n            itemStyle: {\r\n              normal: {\r\n                // barBorderRadius: [0, 10, 10, 0],\r\n                color: new echarts.graphic.LinearGradient(1, 0, 0, 1, [\r\n                  {\r\n                    offset: 0,\r\n                    color: '#91cc75'\r\n                  },\r\n                  {\r\n                    offset: 1,\r\n                    color: '#26ccd8'\r\n                  }\r\n                ])\r\n              }\r\n            }\r\n          },\r\n          {\r\n            name: '规划',\r\n            type: 'bar',\r\n            stack: 'one',\r\n            emphasis: emphasisStyle,\r\n            data: dataX[2],\r\n            itemStyle: {\r\n              normal: {\r\n                // barBorderRadius: [0, 10, 10, 0],\r\n                color: new echarts.graphic.LinearGradient(1, 0, 0, 1, [\r\n                  {\r\n                    offset: 0,\r\n                    color: '#fac858'\r\n                  },\r\n                  {\r\n                    offset: 1,\r\n                    color: '#3685fe'\r\n                  }\r\n                ])\r\n              }\r\n            }\r\n          },\r\n          {\r\n            name: '初设',\r\n            type: 'bar',\r\n            stack: 'one',\r\n            emphasis: emphasisStyle,\r\n            data: dataX[3],\r\n            itemStyle: {\r\n              normal: {\r\n                // barBorderRadius: [0, 10, 10, 0],\r\n                color: new echarts.graphic.LinearGradient(1, 0, 0, 1, [\r\n                  {\r\n                    offset: 0,\r\n                    color: '#9977ef'\r\n                  },\r\n                  {\r\n                    offset: 1,\r\n                    color: '#ee6666'\r\n                  }\r\n                ])\r\n              }\r\n            }\r\n          },\r\n          {\r\n            name: '概算',\r\n            type: 'bar',\r\n            stack: 'one',\r\n            emphasis: emphasisStyle,\r\n            data: dataX[4],\r\n            itemStyle: {\r\n              normal: {\r\n                // barBorderRadius: [0, 10, 10, 0],\r\n                color: new echarts.graphic.LinearGradient(1, 0, 0, 1, [\r\n                  {\r\n                    offset: 0,\r\n                    color: '#73c0de'\r\n                  },\r\n                  {\r\n                    offset: 1,\r\n                    color: '#f5616f'\r\n                  }\r\n                ])\r\n              }\r\n            }\r\n          },\r\n          {\r\n            name: '施工图设计',\r\n            type: 'bar',\r\n            stack: 'one',\r\n            emphasis: emphasisStyle,\r\n            data: dataX[5],\r\n            itemStyle: {\r\n              normal: {\r\n                // barBorderRadius: [0, 10, 10, 0],\r\n                color: new echarts.graphic.LinearGradient(1, 0, 0, 1, [\r\n                  {\r\n                    offset: 0,\r\n                    color: '#3ba272'\r\n                  },\r\n                  {\r\n                    offset: 1,\r\n                    color: '#f7b13f'\r\n                  }\r\n                ])\r\n              }\r\n            }\r\n          },\r\n          {\r\n            name: '招投标',\r\n            type: 'bar',\r\n            stack: 'one',\r\n            emphasis: emphasisStyle,\r\n            data: dataX[6],\r\n            itemStyle: {\r\n              normal: {\r\n                // barBorderRadius: [0, 10, 10, 0],\r\n                color: new echarts.graphic.LinearGradient(1, 0, 0, 1, [\r\n                  {\r\n                    offset: 0,\r\n                    color: '#fc8452'\r\n                  },\r\n                  {\r\n                    offset: 1,\r\n                    color: '#f9e264'\r\n                  }\r\n                ])\r\n              }\r\n            }\r\n          },\r\n          {\r\n            name: '合同',\r\n            type: 'bar',\r\n            stack: 'one',\r\n            emphasis: emphasisStyle,\r\n            data: dataX[7],\r\n            itemStyle: {\r\n              normal: {\r\n                // barBorderRadius: [0, 10, 10, 0],\r\n                color: new echarts.graphic.LinearGradient(1, 0, 0, 1, [\r\n                  {\r\n                    offset: 0,\r\n                    color: '#9a60b4'\r\n                  },\r\n                  {\r\n                    offset: 1,\r\n                    color: '#f47a75'\r\n                  }\r\n                ])\r\n              }\r\n            }\r\n          },\r\n          {\r\n            name: '施工许可',\r\n            type: 'bar',\r\n            stack: 'one',\r\n            emphasis: emphasisStyle,\r\n            data: dataX[8],\r\n            itemStyle: {\r\n              normal: {\r\n                // barBorderRadius: [0, 10, 10, 0],\r\n                color: new echarts.graphic.LinearGradient(1, 0, 0, 1, [\r\n                  {\r\n                    offset: 0,\r\n                    color: '#ea7ccc'\r\n                  },\r\n                  {\r\n                    offset: 1,\r\n                    color: '#009db2'\r\n                  }\r\n                ])\r\n              }\r\n            }\r\n          },\r\n          {\r\n            name: '工程施工',\r\n            type: 'bar',\r\n            stack: 'one',\r\n            emphasis: emphasisStyle,\r\n            data: dataX[9],\r\n            itemStyle: {\r\n              normal: {\r\n                // barBorderRadius: [0, 10, 10, 0],\r\n                color: new echarts.graphic.LinearGradient(1, 0, 0, 1, [\r\n                  {\r\n                    offset: 0,\r\n                    color: '#f89588'\r\n                  },\r\n                  {\r\n                    offset: 1,\r\n                    color: '#7cd6cf'\r\n                  }\r\n                ])\r\n              }\r\n            }\r\n          },\r\n          {\r\n            name: '竣工验收',\r\n            type: 'bar',\r\n            stack: 'one',\r\n            emphasis: emphasisStyle,\r\n            data: dataX[10],\r\n            itemStyle: {\r\n              normal: {\r\n                // barBorderRadius: [0, 10, 10, 0],\r\n                color: new echarts.graphic.LinearGradient(1, 0, 0, 1, [\r\n                  {\r\n                    offset: 0,\r\n                    color: '#91cc75'\r\n                  },\r\n                  {\r\n                    offset: 1,\r\n                    color: '#0780cf'\r\n                  }\r\n                ])\r\n              }\r\n            }\r\n          },\r\n          {\r\n            name: '结算',\r\n            type: 'bar',\r\n            stack: 'one',\r\n            emphasis: emphasisStyle,\r\n            data: dataX[11],\r\n            itemStyle: {\r\n              normal: {\r\n                // barBorderRadius: [0, 10, 10, 0],\r\n                color: new echarts.graphic.LinearGradient(1, 0, 0, 1, [\r\n                  {\r\n                    offset: 0,\r\n                    color: '#fac858'\r\n                  },\r\n                  {\r\n                    offset: 1,\r\n                    color: '#765005'\r\n                  }\r\n                ])\r\n              }\r\n            }\r\n          },\r\n          {\r\n            name: '决算',\r\n            type: 'bar',\r\n            stack: 'one',\r\n            emphasis: emphasisStyle,\r\n            data: dataX[12],\r\n            itemStyle: {\r\n              normal: {\r\n                barBorderRadius: [0, 10, 10, 0],\r\n                color: new echarts.graphic.LinearGradient(1, 0, 0, 1, [\r\n                  {\r\n                    offset: 0,\r\n                    color: '#ee6666'\r\n                  },\r\n                  {\r\n                    offset: 1,\r\n                    color: '#63b2ee'\r\n                  }\r\n                ])\r\n              }\r\n            }\r\n          }\r\n        ]\r\n      }\r\n      myChart.on('brushSelected', function(params) {\r\n        var brushed = []\r\n        var brushComponent = params.batch[0]\r\n        for (var sIdx = 0; sIdx < brushComponent.selected.length; sIdx++) {\r\n          var rawIndices = brushComponent.selected[sIdx].dataIndex\r\n          brushed.push('[Series ' + sIdx + '] ' + rawIndices.join(', '))\r\n        }\r\n        myChart.setOption({\r\n          title: {\r\n            backgroundColor: '#333',\r\n            text: '数据: \\n' + brushed.join('\\n'),\r\n            bottom: 0,\r\n            right: '10%',\r\n            width: 100,\r\n            textStyle: {\r\n              fontSize: 12,\r\n              color: '#fff'\r\n            }\r\n          }\r\n        })\r\n      })\r\n\r\n      option && myChart.setOption(option)\r\n      // //提示泡\r\n      // myChart.on('mouseover', function(params) {\r\n      //   if(params.componentType === 'yAxis') {\r\n      //     let offsetX = params.event.event.offsetX\r\n      //     let offsetY = params.event.event.offsetY\r\n      //     let xAxisTip= document.querySelector('.x-axis-tip')\r\n      //     xAxisTip.innerHTML = params.value.split('#')[0]\r\n      //     xAxisTip.style.left = offsetX + 'px'\r\n      //     xAxisTip.style.top = offsetY + 'px'\r\n      //     xAxisTip.style.display = 'block'\r\n      //   }\r\n      // })\r\n      // myChart.on('mousemove', function(params) {\r\n      //   if(params.componentType === 'yAxis') {\r\n      //     let offsetX = params.event.event.offsetX\r\n      //     let offsetY = params.event.event.offsetY\r\n      //     let xAxisTip= document.querySelector('.x-axis-tip')\r\n      //     xAxisTip.innerHTML = params.value.substring(0,2)\r\n      //     xAxisTip.style.left = offsetX + 30 + 'px'\r\n      //     xAxisTip.style.top = offsetY + 10 + 'px'\r\n      //     xAxisTip.style.display = 'block'\r\n      //   }\r\n      // })\r\n      // myChart.on('mouseout', function(params) {\r\n      //   let xAxisTip = document.querySelector('.x-axis-tip')\r\n      //   xAxisTip.style.display = 'none'\r\n      // })\r\n    }\r\n  }\r\n}\r\n",null]}