|
@@ -5,7 +5,9 @@ let app = new Vue({
|
|
|
count: 0, //重点项目两线指标轮到哪个
|
|
count: 0, //重点项目两线指标轮到哪个
|
|
|
list: [], //重点项目两线指标数组
|
|
list: [], //重点项目两线指标数组
|
|
|
countType: 0, //重点项目两线指标数组
|
|
countType: 0, //重点项目两线指标数组
|
|
|
- mapShow: true, // false为中国地图 true为山西地图
|
|
|
|
|
|
|
+ mapShow: false, // false为中国地图 true为山西地图
|
|
|
|
|
+ titleUrl: '',// 标题弹窗显示的内容
|
|
|
|
|
+ titleName: '', // 弹窗的名字显示
|
|
|
leftEcharts1: "",
|
|
leftEcharts1: "",
|
|
|
leftEcharts2: "",
|
|
leftEcharts2: "",
|
|
|
leftEcharts3: "",
|
|
leftEcharts3: "",
|
|
@@ -22,8 +24,11 @@ let app = new Vue({
|
|
|
leftEcharts14: '',
|
|
leftEcharts14: '',
|
|
|
leftEcharts15: '',
|
|
leftEcharts15: '',
|
|
|
leftEcharts17: '', //投资产业分布中间的水球图
|
|
leftEcharts17: '', //投资产业分布中间的水球图
|
|
|
- stageTitle:'', // 投资阶段分析圆环图内容
|
|
|
|
|
- stageTitle2:'', // 投资阶段分析圆环图内容
|
|
|
|
|
|
|
+ leftEcharts18: '', //单个柱状图弹窗
|
|
|
|
|
+ tipShow1: false, // 标题弹窗显示
|
|
|
|
|
+ tipShow2: false, // 单柱状图弹窗
|
|
|
|
|
+ stageTitle: '', // 投资阶段分析圆环图内容
|
|
|
|
|
+ stageTitle2: '', // 投资阶段分析圆环图内容
|
|
|
echartR2Fd: true, // 投后进度成本偏差防抖
|
|
echartR2Fd: true, // 投后进度成本偏差防抖
|
|
|
leftEcharts16: '', // 中国地图背景地球
|
|
leftEcharts16: '', // 中国地图背景地球
|
|
|
rightEcharts1: '', // 投后进度成本偏差
|
|
rightEcharts1: '', // 投后进度成本偏差
|
|
@@ -485,42 +490,71 @@ let app = new Vue({
|
|
|
clearInterval(this.time2);
|
|
clearInterval(this.time2);
|
|
|
},
|
|
},
|
|
|
mounted () {
|
|
mounted () {
|
|
|
- let that = this
|
|
|
|
|
- this.time4s();
|
|
|
|
|
- this.timeNs();
|
|
|
|
|
- this.filterLpData();
|
|
|
|
|
- this.lpRotate();
|
|
|
|
|
- setTimeout(() => {
|
|
|
|
|
- if (that.mapShow) {
|
|
|
|
|
- that.leftEcharts12Fun()
|
|
|
|
|
- that.leftEcharts14Fun()
|
|
|
|
|
- that.leftEcharts9Fun()
|
|
|
|
|
- that.leftEcharts15Fun()
|
|
|
|
|
- that.leftEcharts13Fun()
|
|
|
|
|
- that.shanxiEchartsFun()
|
|
|
|
|
- that.leftEcharts17Fun()
|
|
|
|
|
- } else {
|
|
|
|
|
- that.chinaEchartsFun()
|
|
|
|
|
- that.leftEcharts16Fun() // 中国地图背景地球
|
|
|
|
|
- }
|
|
|
|
|
- this.leftEcharts1Fun();
|
|
|
|
|
- this.leftEcharts2Fun();
|
|
|
|
|
- this.leftEcharts3Fun();
|
|
|
|
|
- this.leftEcharts4Fun();
|
|
|
|
|
- this.leftEcharts5Fun();
|
|
|
|
|
- this.leftEcharts6Fun();
|
|
|
|
|
- this.leftEcharts7Fun();
|
|
|
|
|
- this.leftEcharts8Fun();
|
|
|
|
|
- this.leftEcharts10Fun();
|
|
|
|
|
- this.leftEcharts11Fun();
|
|
|
|
|
- this.rightEcharts1Fun();
|
|
|
|
|
- this.initChartR2();
|
|
|
|
|
- this.initChartR4();
|
|
|
|
|
- });
|
|
|
|
|
|
|
+ this.getUrlParams()
|
|
|
},
|
|
},
|
|
|
methods: {
|
|
methods: {
|
|
|
|
|
+ // 获取地址栏参数
|
|
|
|
|
+ getUrlParams (id) {
|
|
|
|
|
+ let url = window.location.href
|
|
|
|
|
+ // 通过 ? 分割获取后面的参数字符串
|
|
|
|
|
+ let urlStr = url.split('?')[1]
|
|
|
|
|
+ if (!urlStr) {
|
|
|
|
|
+ this.comeIn()
|
|
|
|
|
+ return
|
|
|
|
|
+ }
|
|
|
|
|
+ // 创建空对象存储参数
|
|
|
|
|
+ let obj = {};
|
|
|
|
|
+ // 再通过 & 将每一个参数单独分割出来
|
|
|
|
|
+ let paramsArr = urlStr.split('&')
|
|
|
|
|
+ for (let i = 0, len = paramsArr.length; i < len; i++) {
|
|
|
|
|
+ // 再通过 = 将每一个参数分割为 key:value 的形式
|
|
|
|
|
+ let arr = paramsArr[i].split('=')
|
|
|
|
|
+ obj[arr[0]] = arr[1];
|
|
|
|
|
+ }
|
|
|
|
|
+ if (obj.model) {
|
|
|
|
|
+ obj.model == 'A' || obj.model == 'a' ? this.mockData = false : this.mockData = true
|
|
|
|
|
+ }
|
|
|
|
|
+ obj.env && (this.env = obj.env)
|
|
|
|
|
+ this.goUrl = (obj.env == 'SIT' || obj.env == 'sit') ? '172.21.3.68:8081' : (obj.env == 'UAT' || obj.env == 'uat') ? '172.21.3.149:8081' : '172.21.3.242:8081'
|
|
|
|
|
+ this.accountId = obj.accountid
|
|
|
|
|
+ this.comeIn()
|
|
|
|
|
+ },
|
|
|
|
|
+ comeIn () {
|
|
|
|
|
+ let that = this
|
|
|
|
|
+ this.time4s();
|
|
|
|
|
+ this.timeNs();
|
|
|
|
|
+ this.filterLpData();
|
|
|
|
|
+ this.lpRotate();
|
|
|
|
|
+ setTimeout(() => {
|
|
|
|
|
+ if (that.mapShow) {
|
|
|
|
|
+ that.leftEcharts17Fun()
|
|
|
|
|
+ that.leftEcharts12Fun()
|
|
|
|
|
+ that.leftEcharts14Fun()
|
|
|
|
|
+ that.leftEcharts9Fun()
|
|
|
|
|
+ that.leftEcharts15Fun()
|
|
|
|
|
+ that.leftEcharts13Fun()
|
|
|
|
|
+ that.shanxiEchartsFun()
|
|
|
|
|
+ } else {
|
|
|
|
|
+ that.chinaEchartsFun()
|
|
|
|
|
+ that.leftEcharts16Fun() // 中国地图背景地球
|
|
|
|
|
+ }
|
|
|
|
|
+ this.leftEcharts1Fun();
|
|
|
|
|
+ this.leftEcharts2Fun();
|
|
|
|
|
+ this.leftEcharts3Fun();
|
|
|
|
|
+ this.leftEcharts4Fun();
|
|
|
|
|
+ this.leftEcharts5Fun();
|
|
|
|
|
+ this.leftEcharts6Fun();
|
|
|
|
|
+ this.leftEcharts7Fun();
|
|
|
|
|
+ this.leftEcharts8Fun();
|
|
|
|
|
+ this.leftEcharts10Fun();
|
|
|
|
|
+ this.leftEcharts11Fun();
|
|
|
|
|
+ this.rightEcharts1Fun();
|
|
|
|
|
+ this.initChartR2();
|
|
|
|
|
+ this.initChartR4();
|
|
|
|
|
+ });
|
|
|
|
|
+ },
|
|
|
// 解决除法是去精度
|
|
// 解决除法是去精度
|
|
|
- numDiv(num1, num2) {
|
|
|
|
|
|
|
+ numDiv (num1, num2) {
|
|
|
var baseNum1 = 0, baseNum2 = 0;
|
|
var baseNum1 = 0, baseNum2 = 0;
|
|
|
var baseNum3, baseNum4;
|
|
var baseNum3, baseNum4;
|
|
|
try {
|
|
try {
|
|
@@ -1620,6 +1654,7 @@ let app = new Vue({
|
|
|
}
|
|
}
|
|
|
}, 2000);
|
|
}, 2000);
|
|
|
},
|
|
},
|
|
|
|
|
+ // 转盘计算角度
|
|
|
filterLpData () {
|
|
filterLpData () {
|
|
|
const angle = 360 / this.investData.investList.length;
|
|
const angle = 360 / this.investData.investList.length;
|
|
|
for (let i in this.investData.investList) {
|
|
for (let i in this.investData.investList) {
|
|
@@ -3189,13 +3224,15 @@ let app = new Vue({
|
|
|
});
|
|
});
|
|
|
let a = window.location.href.split('/')
|
|
let a = window.location.href.split('/')
|
|
|
a.pop()
|
|
a.pop()
|
|
|
- return `<div class="bgTooltip" style="background: url('${a.join('/')}/img/shanxi/${params.dataIndex}.png') no-repeat center center;background-size: 100% 100%;font-size:36px">
|
|
|
|
|
- <div class="flex items-center">
|
|
|
|
|
- <img src="./img/yellowArrow.png" style="width: 12px;height: 22px;margin-right:10px" alt=""><span class="fb">${params.name}</span>
|
|
|
|
|
- </div>
|
|
|
|
|
- <div class="blueIcon flex items-center">项目数量:<span class="fb" style="color:#68BDFF;">${params.value[3]}<span style="font-size:20px" class="fn">个</span></span></div>
|
|
|
|
|
- <div class="blueIcon flex items-center">投资总额:<span class="fb" style="color:#68BDFF">${params.value[2]}<span style="font-size:20px" class="fn">亿</span></span></div>
|
|
|
|
|
- </div>`;
|
|
|
|
|
|
|
+ if (params.value) {
|
|
|
|
|
+ return `<div class="bgTooltip" style="background: url('${a.join('/')}/img/shanxi/${params.dataIndex}.png') no-repeat center center;background-size: 100% 100%;font-size:36px">
|
|
|
|
|
+ <div class="flex items-center">
|
|
|
|
|
+ <img src="./img/yellowArrow.png" style="width: 12px;height: 22px;margin-right:10px" alt=""><span class="fb">${params.name}</span>
|
|
|
|
|
+ </div>
|
|
|
|
|
+ <div class="blueIcon flex items-center">项目数量:<span class="fb" style="color:#68BDFF;">${params.value[3]}<span style="font-size:20px" class="fn">个</span></span></div>
|
|
|
|
|
+ <div class="blueIcon flex items-center">投资总额:<span class="fb" style="color:#68BDFF">${params.value[2]}<span style="font-size:20px" class="fn">亿</span></span></div>
|
|
|
|
|
+ </div>`;
|
|
|
|
|
+ }
|
|
|
},
|
|
},
|
|
|
},
|
|
},
|
|
|
regions: [
|
|
regions: [
|
|
@@ -3615,13 +3652,15 @@ let app = new Vue({
|
|
|
name: params.name,
|
|
name: params.name,
|
|
|
seriesName: "series\u00001",
|
|
seriesName: "series\u00001",
|
|
|
});
|
|
});
|
|
|
- return `<div class="bgTooltip" style="background: rgba(50,50,50,0.7);font-size:36px">
|
|
|
|
|
- <div class="flex items-center">
|
|
|
|
|
- <img src="./img/yellowArrow.png" style="width: 12px;height: 22px;margin-right:10px" alt=""><span class="fb">${params.name}</span>
|
|
|
|
|
- </div>
|
|
|
|
|
- <div class="blueIcon flex items-center">项目数量:<span class="fb" style="color:#68BDFF;">${params.value[3]}<span style="font-size:20px" class="fn">个</span></span></div>
|
|
|
|
|
- <div class="blueIcon flex items-center">投资总额:<span class="fb" style="color:#68BDFF">${params.value[2]}<span style="font-size:20px" class="fn">亿</span></span></div>
|
|
|
|
|
- </div>`;
|
|
|
|
|
|
|
+ if (params.value) {
|
|
|
|
|
+ return `<div class="bgTooltip" style="background: rgba(50,50,50,0.7);font-size:36px">
|
|
|
|
|
+ <div class="flex items-center">
|
|
|
|
|
+ <img src="./img/yellowArrow.png" style="width: 12px;height: 22px;margin-right:10px" alt=""><span class="fb">${params.name}</span>
|
|
|
|
|
+ </div>
|
|
|
|
|
+ <div class="blueIcon flex items-center">项目数量:<span class="fb" style="color:#68BDFF;">${params.value[3]}<span style="font-size:20px" class="fn">个</span></span></div>
|
|
|
|
|
+ <div class="blueIcon flex items-center">投资总额:<span class="fb" style="color:#68BDFF">${params.value[2]}<span style="font-size:20px" class="fn">亿</span></span></div>
|
|
|
|
|
+ </div>`;
|
|
|
|
|
+ }
|
|
|
},
|
|
},
|
|
|
},
|
|
},
|
|
|
regions: [
|
|
regions: [
|
|
@@ -3812,6 +3851,7 @@ let app = new Vue({
|
|
|
that.mapShow = true
|
|
that.mapShow = true
|
|
|
setTimeout(() => {
|
|
setTimeout(() => {
|
|
|
that.leftEcharts12Fun()
|
|
that.leftEcharts12Fun()
|
|
|
|
|
+ that.leftEcharts17Fun()
|
|
|
that.leftEcharts14Fun()
|
|
that.leftEcharts14Fun()
|
|
|
that.leftEcharts9Fun()
|
|
that.leftEcharts9Fun()
|
|
|
that.leftEcharts15Fun()
|
|
that.leftEcharts15Fun()
|
|
@@ -4285,8 +4325,8 @@ let app = new Vue({
|
|
|
show: true,
|
|
show: true,
|
|
|
formatter: function (params) {
|
|
formatter: function (params) {
|
|
|
that.leftEcharts17.dispose()
|
|
that.leftEcharts17.dispose()
|
|
|
- left2[0] = that.numDiv(params.percent+3.2,100)
|
|
|
|
|
that.leftEcharts17Fun()
|
|
that.leftEcharts17Fun()
|
|
|
|
|
+ left2[0] = that.numDiv(params.percent + 3.2, 100)
|
|
|
if (params.seriesIndex === 2) {
|
|
if (params.seriesIndex === 2) {
|
|
|
return null; // 隐藏部分2的tooltip
|
|
return null; // 隐藏部分2的tooltip
|
|
|
} else {
|
|
} else {
|
|
@@ -4381,6 +4421,7 @@ let app = new Vue({
|
|
|
that.leftEcharts12.setOption(option);
|
|
that.leftEcharts12.setOption(option);
|
|
|
},
|
|
},
|
|
|
leftEcharts17Fun () {
|
|
leftEcharts17Fun () {
|
|
|
|
|
+ console.log('就没走了么??')
|
|
|
let that = this;
|
|
let that = this;
|
|
|
this.leftEcharts17 = echarts.init(this.$refs["leftEcharts17"]);
|
|
this.leftEcharts17 = echarts.init(this.$refs["leftEcharts17"]);
|
|
|
var seriesOption = [
|
|
var seriesOption = [
|
|
@@ -4618,7 +4659,7 @@ let app = new Vue({
|
|
|
fontSize: "28", // 文字字体大小
|
|
fontSize: "28", // 文字字体大小
|
|
|
},
|
|
},
|
|
|
formatter: (params) => {
|
|
formatter: (params) => {
|
|
|
- that.stageTitle = params.name
|
|
|
|
|
|
|
+ that.stageTitle = params.name
|
|
|
that.stageTitle2 = params.percent + '%'
|
|
that.stageTitle2 = params.percent + '%'
|
|
|
return `${params.name}:<br/>金额:<b>${totalData[params.seriesIndex].radio}</b>亿<br/>数量:<b>${params.value}</b>个`
|
|
return `${params.name}:<br/>金额:<b>${totalData[params.seriesIndex].radio}</b>亿<br/>数量:<b>${params.value}</b>个`
|
|
|
}
|
|
}
|
|
@@ -5089,5 +5130,234 @@ let app = new Vue({
|
|
|
that.leftEcharts16Fun()
|
|
that.leftEcharts16Fun()
|
|
|
});
|
|
});
|
|
|
},
|
|
},
|
|
|
|
|
+ tipShow1Fun (e, name) {
|
|
|
|
|
+ this.closeTap()
|
|
|
|
|
+ this.titleUrl = e
|
|
|
|
|
+ this.titleName = name
|
|
|
|
|
+ this.$nextTick(() => {
|
|
|
|
|
+ this.tipShow1 = true
|
|
|
|
|
+ })
|
|
|
|
|
+ },
|
|
|
|
|
+ // 关闭所有弹窗的方法
|
|
|
|
|
+ closeTap () {
|
|
|
|
|
+ this.tipShow1 = false
|
|
|
|
|
+ },
|
|
|
|
|
+ //点击弹窗左半部分
|
|
|
|
|
+ popLeftClick () {
|
|
|
|
|
+ if (this.titleUrl == '2.png') {
|
|
|
|
|
+ this.titleUrl = '3.png'
|
|
|
|
|
+ } else if (this.titleUrl == '7.png') {
|
|
|
|
|
+ this.titleUrl = '8.png'
|
|
|
|
|
+ } else if (this.titleUrl == '3.png') {
|
|
|
|
|
+ this.titleUrl = '2.png'
|
|
|
|
|
+ } else if (this.titleUrl == '8.png') {
|
|
|
|
|
+ this.titleUrl = '7.png'
|
|
|
|
|
+ } else if (this.titleUrl == '5.png') {
|
|
|
|
|
+ this.titleUrl = '2.png'
|
|
|
|
|
+ } else if (this.titleUrl == '10.png') {
|
|
|
|
|
+ this.titleUrl = '7.png'
|
|
|
|
|
+ }
|
|
|
|
|
+ },
|
|
|
|
|
+ //点击弹窗右半部分
|
|
|
|
|
+ poprightClick () {
|
|
|
|
|
+ if (this.titleUrl == '2.png') {
|
|
|
|
|
+ this.titleUrl = '5.png'
|
|
|
|
|
+ } else if (this.titleUrl == '7.png') {
|
|
|
|
|
+ this.titleUrl = '10.png'
|
|
|
|
|
+ } else if (this.titleUrl == '5.png') {
|
|
|
|
|
+ this.titleUrl = '2.png'
|
|
|
|
|
+ } else if (this.titleUrl == '10.png') {
|
|
|
|
|
+ this.titleUrl = '7.png'
|
|
|
|
|
+ } else if (this.titleUrl == '3.png') {
|
|
|
|
|
+ this.titleUrl = '2.png'
|
|
|
|
|
+ } else if (this.titleUrl == '8.png') {
|
|
|
|
|
+ this.titleUrl = '7.png'
|
|
|
|
|
+ }
|
|
|
|
|
+ },
|
|
|
|
|
+ // 单个柱状图的弹窗
|
|
|
|
|
+ showChartLTipSingle (e, location, type, param, mdnb_textfield11, mdnb_textfield13, mdnb_textfield16, mdnb_textfield23, typeCTwo, paramCTwo, portType, num) {
|
|
|
|
|
+ this.projectNum = num
|
|
|
|
|
+ this.closeTap()
|
|
|
|
|
+ this.titleName = e
|
|
|
|
|
+ this.echartSingleTipShow = true
|
|
|
|
|
+ if (this.versions) {
|
|
|
|
|
+ if (location == 'center') {
|
|
|
|
|
+ this.centerPenetrateOne(type, param, 1, typeCTwo, paramCTwo, portType)
|
|
|
|
|
+ }
|
|
|
|
|
+ if (location == 'left') {
|
|
|
|
|
+ this.leftPenetrateOne(mdnb_textfield11, mdnb_textfield13, mdnb_textfield16, mdnb_textfield23, 1, type, param)
|
|
|
|
|
+ }
|
|
|
|
|
+ } else {
|
|
|
|
|
+ setTimeout(() => {
|
|
|
|
|
+ this.initChartLTip(location)
|
|
|
|
|
+ })
|
|
|
|
|
+ }
|
|
|
|
|
+ },
|
|
|
|
|
+ initChartLTip (location, mdnb_textfield11, mdnb_textfield13, mdnb_textfield16, mdnb_textfield23, typeCTwo, paramCTwo, portType) {
|
|
|
|
|
+ this.myChartTip1 = echarts.init(document.getElementById("echartSingleTip"));
|
|
|
|
|
+ if (!(this.titleName == '项目数量' || this.titleName == '项目总数')) {
|
|
|
|
|
+ common3 = common3.map((item) => Number(item) + 1)
|
|
|
|
|
+ }
|
|
|
|
|
+ let option = {
|
|
|
|
|
+ grid: {
|
|
|
|
|
+ top: 40,
|
|
|
|
|
+ right: 0,
|
|
|
|
|
+ left: 60,
|
|
|
|
|
+ bottom: 70,
|
|
|
|
|
+ },
|
|
|
|
|
+ tooltip: {
|
|
|
|
|
+ show: true,
|
|
|
|
|
+ trigger: "axis",
|
|
|
|
|
+ axisPointer: {
|
|
|
|
|
+ // 坐标轴指示器,坐标轴触发有效
|
|
|
|
|
+ type: "shadow", // 默认为直线,可选为:'line' | 'shadow'
|
|
|
|
|
+ },
|
|
|
|
|
+ formatter: data => {
|
|
|
|
|
+ if (this.titleName == '项目数量' || this.titleName == '项目总数') {
|
|
|
|
|
+ return `${data[0].name}</br>${data[0].seriesName}:${that.numFormat(data[0].value)}个`
|
|
|
|
|
+ } else {
|
|
|
|
|
+ return `${data[0].name}</br>${data[0].seriesName}:${that.numFormat(that.numSub(data[0].value, 1))}亿`
|
|
|
|
|
+ }
|
|
|
|
|
+ },
|
|
|
|
|
+ textStyle: {
|
|
|
|
|
+ color: '#FFF', // 文字的颜色
|
|
|
|
|
+ fontSize: '20', // 文字字体大小
|
|
|
|
|
+ fontFamily: 'Microsoft YaHei'
|
|
|
|
|
+ },
|
|
|
|
|
+ },
|
|
|
|
|
+ xAxis: {
|
|
|
|
|
+ data: commonCompany,
|
|
|
|
|
+ axisTick: {
|
|
|
|
|
+ show: false,
|
|
|
|
|
+ },
|
|
|
|
|
+ // x轴的字体颜色
|
|
|
|
|
+ axisLabel: {
|
|
|
|
|
+ rotate: 40,
|
|
|
|
|
+ textStyle: {
|
|
|
|
|
+ color: "white",
|
|
|
|
|
+ fontSize: '20',
|
|
|
|
|
+ fontFamily: 'Microsoft YaHei'
|
|
|
|
|
+ },
|
|
|
|
|
+ },
|
|
|
|
|
+ //y轴线的颜色以及宽度
|
|
|
|
|
+ axisLine: {
|
|
|
|
|
+ show: true,
|
|
|
|
|
+ lineStyle: {
|
|
|
|
|
+ color: "#1E5389",
|
|
|
|
|
+ width: 1,
|
|
|
|
|
+ type: "solid",
|
|
|
|
|
+ },
|
|
|
|
|
+ },
|
|
|
|
|
+ },
|
|
|
|
|
+ yAxis: {
|
|
|
|
|
+ minInterval: 1,
|
|
|
|
|
+ // onZero:true,
|
|
|
|
|
+ name: (this.titleName == '项目数量' || this.titleName == '项目总数') ? '个' : '亿',
|
|
|
|
|
+ nameTextStyle: {//y轴上方单位的颜色
|
|
|
|
|
+ color: '#fff',
|
|
|
|
|
+ fontSize: '20',
|
|
|
|
|
+ fontFamily: 'Microsoft YaHei'
|
|
|
|
|
+ },
|
|
|
|
|
+ axisTick: {
|
|
|
|
|
+ lineStyle: {
|
|
|
|
|
+ color: "#18416F",
|
|
|
|
|
+ },
|
|
|
|
|
+ },
|
|
|
|
|
+ // y轴的字体颜色
|
|
|
|
|
+ axisLabel: {
|
|
|
|
|
+ textStyle: {
|
|
|
|
|
+ color: "white",
|
|
|
|
|
+ fontSize: '20'
|
|
|
|
|
+ },
|
|
|
|
|
+ formatter: function (value) {
|
|
|
|
|
+ if (that.titleName == '项目数量' || that.titleName == '项目总数') {
|
|
|
|
|
+ return value
|
|
|
|
|
+ } else {
|
|
|
|
|
+ return value === 1 ? 0 : value
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ },
|
|
|
|
|
+ splitLine: {
|
|
|
|
|
+ show: true,
|
|
|
|
|
+ lineStyle: {
|
|
|
|
|
+ color: '#68b4dd66',
|
|
|
|
|
+ type: 'dashed',
|
|
|
|
|
+ },
|
|
|
|
|
+ },
|
|
|
|
|
+ //y轴线的颜色以及宽度
|
|
|
|
|
+ axisLine: {
|
|
|
|
|
+ show: true,
|
|
|
|
|
+ lineStyle: {
|
|
|
|
|
+ color: "#1E5389",
|
|
|
|
|
+ width: 1,
|
|
|
|
|
+ type: "solid",
|
|
|
|
|
+ },
|
|
|
|
|
+ },
|
|
|
|
|
+ },
|
|
|
|
|
+ series: [
|
|
|
|
|
+ {
|
|
|
|
|
+ name: (this.titleName == '项目数量' || this.titleName == '项目总数') ? '总数量' : "总额度",
|
|
|
|
|
+ type: "bar",
|
|
|
|
|
+ data: common3,
|
|
|
|
|
+ showBackground: false,
|
|
|
|
|
+ backgroundStyle: {
|
|
|
|
|
+ color: "#18416F",
|
|
|
|
|
+ },
|
|
|
|
|
+ barWidth: "30%",
|
|
|
|
|
+ itemStyle: {
|
|
|
|
|
+ // barBorderRadius: [10, 10, 0, 0],
|
|
|
|
|
+ color: new echarts.graphic.LinearGradient(0, 1, 0, 0, [
|
|
|
|
|
+ {
|
|
|
|
|
+ offset: 0,
|
|
|
|
|
+ color: '#082550',
|
|
|
|
|
+ },
|
|
|
|
|
+ {
|
|
|
|
|
+ offset: 1,
|
|
|
|
|
+ color: '#957DFF',
|
|
|
|
|
+
|
|
|
|
|
+ },
|
|
|
|
|
+ ]),
|
|
|
|
|
+ },
|
|
|
|
|
+ },
|
|
|
|
|
+ ],
|
|
|
|
|
+ legend: {
|
|
|
|
|
+ // data: ["2022年额度", "2023年额度"],
|
|
|
|
|
+ data: (this.titleName == '项目数量' || this.titleName == '项目总数') ? ["总数量"] : ["总额度"],
|
|
|
|
|
+ textStyle: {
|
|
|
|
|
+ // 图列内容样式
|
|
|
|
|
+ color: "#fff", // 字体颜色
|
|
|
|
|
+ fontSize: "20",
|
|
|
|
|
+ fontFamily: 'Microsoft YaHei'
|
|
|
|
|
+ },
|
|
|
|
|
+ right: 'center',
|
|
|
|
|
+ y: 5,
|
|
|
|
|
+ // 小图标的宽高
|
|
|
|
|
+ },
|
|
|
|
|
+ };
|
|
|
|
|
+ if (!(this.titleName == '项目数量' || this.titleName == '项目总数')) {
|
|
|
|
|
+ option.yAxis.min = 1
|
|
|
|
|
+ option.yAxis.type = 'log'
|
|
|
|
|
+ option.yAxis.logBase = 5
|
|
|
|
|
+ }
|
|
|
|
|
+ tools.loopShowTooltip(this.myChartTip1, option, {
|
|
|
|
|
+ interval: 2000,
|
|
|
|
|
+ loopSeries: true,
|
|
|
|
|
+ })
|
|
|
|
|
+ let that = this
|
|
|
|
|
+ that.myChartTip1.on('click', function (param) {
|
|
|
|
|
+ if (that.versions) {
|
|
|
|
|
+ if (location == 'right') {
|
|
|
|
|
+ that.rightPenetrateTwo(that.rightPenetrateTwo.modelName, '', that.findCode(param.name))
|
|
|
|
|
+ } else if (location == 'left') {
|
|
|
|
|
+ that.leftPenetrateTwo(mdnb_textfield11, mdnb_textfield13, mdnb_textfield16, mdnb_textfield23, param.name, that.projectNum)
|
|
|
|
|
+ } else if (location == 'center') {
|
|
|
|
|
+ that.centerPenetrateTwo(typeCTwo, paramCTwo, that.findCode(param.name), portType)
|
|
|
|
|
+ }
|
|
|
|
|
+ } else {
|
|
|
|
|
+ that.projectListTipShow = true
|
|
|
|
|
+ }
|
|
|
|
|
+ })
|
|
|
|
|
+ that.myChartTip1.setOption(option);
|
|
|
|
|
+ },
|
|
|
},
|
|
},
|
|
|
});
|
|
});
|