|  | @@ -5,13 +5,8 @@
 | 
	
		
			
				|  |  |        <i class="icon-search">
 | 
	
		
			
				|  |  |          <SvgIcon class="icon" size="14" name="toggle" />
 | 
	
		
			
				|  |  |        </i>
 | 
	
		
			
				|  |  | -      <a-select
 | 
	
		
			
				|  |  | -        v-model:value="searchValue"
 | 
	
		
			
				|  |  | -        style="width: 180px; margin-right: 10px"
 | 
	
		
			
				|  |  | -        :options="lineTypeList"
 | 
	
		
			
				|  |  | -        aria-placeholder="请选择"
 | 
	
		
			
				|  |  | -        @change="changeSelect"
 | 
	
		
			
				|  |  | -      />
 | 
	
		
			
				|  |  | +      <a-select v-model:value="searchValue" style="width: 180px; margin-right: 10px" :options="lineTypeList"
 | 
	
		
			
				|  |  | +        aria-placeholder="请选择" @change="changeSelect" />
 | 
	
		
			
				|  |  |      </div>
 | 
	
		
			
				|  |  |      <div class="line-echart">
 | 
	
		
			
				|  |  |        <div class="line" ref="line"></div>
 | 
	
	
		
			
				|  | @@ -45,407 +40,489 @@
 | 
	
		
			
				|  |  |  </template>
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  <script lang="ts" setup>
 | 
	
		
			
				|  |  | -  import { ref, reactive, onMounted, nextTick, defineProps, watch } from 'vue';
 | 
	
		
			
				|  |  | -  import { SvgIcon } from '/@/components/Icon';
 | 
	
		
			
				|  |  | -  import * as echarts from 'echarts';
 | 
	
		
			
				|  |  | -  const emit = defineEmits(['goDetail'])
 | 
	
		
			
				|  |  | +import { ref, reactive, onMounted, nextTick, defineProps, watch } from 'vue';
 | 
	
		
			
				|  |  | +import { SvgIcon } from '/@/components/Icon';
 | 
	
		
			
				|  |  | +import * as echarts from 'echarts';
 | 
	
		
			
				|  |  | +const emit = defineEmits(['goDetail'])
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -  let props = defineProps({
 | 
	
		
			
				|  |  | -    lineList: Array,
 | 
	
		
			
				|  |  | -  });
 | 
	
		
			
				|  |  | +let props = defineProps({
 | 
	
		
			
				|  |  | +  lineList: Array,
 | 
	
		
			
				|  |  | +});
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -  //获取dom节点
 | 
	
		
			
				|  |  | -  let line = ref<any>();
 | 
	
		
			
				|  |  | -  let lineData = reactive<any[]>([]);
 | 
	
		
			
				|  |  | -  let searchValue = ref('');
 | 
	
		
			
				|  |  | -  const lineTypeList = reactive<any[]>([]);
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -  let echartData = reactive<any[]>([
 | 
	
		
			
				|  |  | -    { name: '进风区', value: 0 },
 | 
	
		
			
				|  |  | -    { name: '用风区', value: 0 },
 | 
	
		
			
				|  |  | -    { name: '回风区', value: 0 },
 | 
	
		
			
				|  |  | -  ]);
 | 
	
		
			
				|  |  | -  let xData = reactive<any[]>([]);
 | 
	
		
			
				|  |  | -  let yData = reactive<any[]>([]);
 | 
	
		
			
				|  |  | -  let percentE = ref<any>(0);
 | 
	
		
			
				|  |  | -  let percentF = ref<any>(0);
 | 
	
		
			
				|  |  | -  let percentT = ref<any>(0);
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -  let tabList = reactive<any[]>([
 | 
	
		
			
				|  |  | -    { name: '总风量(m³/min)', val: 0 },
 | 
	
		
			
				|  |  | -    { name: '总阻力(Pa)', val: 0 },
 | 
	
		
			
				|  |  | -    { name: '等积孔(m²)', val: 0 },
 | 
	
		
			
				|  |  | -  ]);
 | 
	
		
			
				|  |  | -  //跳转详情
 | 
	
		
			
				|  |  | -  function getDetail() {
 | 
	
		
			
				|  |  | -    console.log('跳转详情');
 | 
	
		
			
				|  |  | -    emit('goDetail', 'majorpath')
 | 
	
		
			
				|  |  | -  }
 | 
	
		
			
				|  |  | -  //选项切换
 | 
	
		
			
				|  |  | -  function changeSelect(val) {
 | 
	
		
			
				|  |  | -    switch (val) {
 | 
	
		
			
				|  |  | -      case '1号回风斜井':
 | 
	
		
			
				|  |  | -        // echartData[0].value = lineData[0].majorpath.drag_1;
 | 
	
		
			
				|  |  | -        // echartData[1].value = lineData[0].majorpath.drag_2;
 | 
	
		
			
				|  |  | -        // echartData[2].value = lineData[0].majorpath.drag_3;
 | 
	
		
			
				|  |  | -        // tabList[0].val = lineData[0].majorpath.drag_total;
 | 
	
		
			
				|  |  | -        // tabList[1].val = lineData[0].majorpath.m3_total;
 | 
	
		
			
				|  |  | -        echartData[0].value = Math.floor(Math.random()*(629-620+1))+620;
 | 
	
		
			
				|  |  | -        echartData[1].value =  Math.floor(Math.random()*(949-940+1))+940;
 | 
	
		
			
				|  |  | -        echartData[2].value =  Math.floor(Math.random()*(855-850+1))+850;
 | 
	
		
			
				|  |  | -        tabList[0].val =  Math.floor(Math.random()*(10700-10600+1))+10600;
 | 
	
		
			
				|  |  | -        tabList[1].val =  Math.floor(Math.random()*(2433-2423+1))+2423;
 | 
	
		
			
				|  |  | -        tabList[2].val = 0.56;
 | 
	
		
			
				|  |  | -        percentF.value = ((echartData[0].value / (echartData[0].value + echartData[1].value + echartData[2].value)) * 100).toFixed(2);
 | 
	
		
			
				|  |  | -        percentT.value = ((echartData[1].value / (echartData[0].value + echartData[1].value + echartData[2].value)) * 100).toFixed(2);
 | 
	
		
			
				|  |  | -        percentE.value = ((echartData[2].value / (echartData[0].value + echartData[1].value + echartData[2].value)) * 100).toFixed(2);
 | 
	
		
			
				|  |  | -        getOption();
 | 
	
		
			
				|  |  | -        break;
 | 
	
		
			
				|  |  | -      case '2号回风立井':
 | 
	
		
			
				|  |  | -        // echartData[0].value = lineData[1].majorpath.drag_1;
 | 
	
		
			
				|  |  | -        // echartData[1].value = lineData[1].majorpath.drag_2;
 | 
	
		
			
				|  |  | -        // echartData[2].value = lineData[1].majorpath.drag_3;
 | 
	
		
			
				|  |  | -        // tabList[0].val = lineData[1].majorpath.drag_total;
 | 
	
		
			
				|  |  | -        // tabList[1].val = lineData[1].majorpath.m3_total;
 | 
	
		
			
				|  |  | -        echartData[0].value = Math.floor(Math.random()*(830-820+1))+820;
 | 
	
		
			
				|  |  | -        echartData[1].value =  Math.floor(Math.random()*(620-600+1))+600;
 | 
	
		
			
				|  |  | -        echartData[2].value =  Math.floor(Math.random()*(860-800+1))+800;
 | 
	
		
			
				|  |  | -        tabList[0].val =  Math.floor(Math.random()*(10100-10000+1))+10000;
 | 
	
		
			
				|  |  | -        tabList[1].val =  Math.floor(Math.random()*(2310-2210+1))+2210;
 | 
	
		
			
				|  |  | -        tabList[2].val = 0.78;
 | 
	
		
			
				|  |  | -        percentF.value = ((echartData[0].value / (echartData[0].value + echartData[1].value + echartData[2].value)) * 100).toFixed(2);
 | 
	
		
			
				|  |  | -        percentT.value = ((echartData[1].value / (echartData[0].value + echartData[1].value + echartData[2].value)) * 100).toFixed(2);
 | 
	
		
			
				|  |  | -        percentE.value = ((echartData[2].value / (echartData[0].value + echartData[1].value + echartData[2].value)) * 100).toFixed(2);
 | 
	
		
			
				|  |  | -        getOption();
 | 
	
		
			
				|  |  | -        break;
 | 
	
		
			
				|  |  | -    }
 | 
	
		
			
				|  |  | +//获取dom节点
 | 
	
		
			
				|  |  | +let line = ref<any>();
 | 
	
		
			
				|  |  | +let lineData = reactive<any[]>([]);
 | 
	
		
			
				|  |  | +let searchValue = ref('');
 | 
	
		
			
				|  |  | +const lineTypeList = reactive<any[]>([]);
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +let echartData = reactive<any[]>([
 | 
	
		
			
				|  |  | +  { name: '进风区', value: 0 },
 | 
	
		
			
				|  |  | +  { name: '用风区', value: 0 },
 | 
	
		
			
				|  |  | +  { name: '回风区', value: 0 },
 | 
	
		
			
				|  |  | +]);
 | 
	
		
			
				|  |  | +let xData = reactive<any[]>([]);
 | 
	
		
			
				|  |  | +let yData = reactive<any[]>([]);
 | 
	
		
			
				|  |  | +let percentE = ref<any>(0);
 | 
	
		
			
				|  |  | +let percentF = ref<any>(0);
 | 
	
		
			
				|  |  | +let percentT = ref<any>(0);
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +let tabList = reactive<any[]>([
 | 
	
		
			
				|  |  | +  { name: '总风量(m³/min)', val: 0 },
 | 
	
		
			
				|  |  | +  { name: '总阻力(Pa)', val: 0 },
 | 
	
		
			
				|  |  | +  { name: '等积孔(m²)', val: 0 },
 | 
	
		
			
				|  |  | +]);
 | 
	
		
			
				|  |  | +//跳转详情
 | 
	
		
			
				|  |  | +function getDetail() {
 | 
	
		
			
				|  |  | +  console.log('跳转详情');
 | 
	
		
			
				|  |  | +  emit('goDetail', 'majorpath')
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +//选项切换
 | 
	
		
			
				|  |  | +function changeSelect(val) {
 | 
	
		
			
				|  |  | +  searchValue.value = val;
 | 
	
		
			
				|  |  | +  switch (val) {
 | 
	
		
			
				|  |  | +    case 'bet关键路线1':
 | 
	
		
			
				|  |  | +      echartData[0].value = lineData[0].majorpath.drag_1 || 0;
 | 
	
		
			
				|  |  | +      echartData[1].value = lineData[0].majorpath.drag_2 || 0;
 | 
	
		
			
				|  |  | +      echartData[2].value = lineData[0].majorpath.drag_3 || 0;
 | 
	
		
			
				|  |  | +      tabList[0].val = lineData[0].majorpath.drag_total || 0;
 | 
	
		
			
				|  |  | +      tabList[1].val = lineData[0].majorpath.m3_total || 0;
 | 
	
		
			
				|  |  | +      tabList[2].val = 0.78;
 | 
	
		
			
				|  |  | +      percentF.value = ((echartData[0].value / (echartData[0].value + echartData[1].value + echartData[2].value)) * 100).toFixed(2) || 0;
 | 
	
		
			
				|  |  | +      percentT.value = ((echartData[1].value / (echartData[0].value + echartData[1].value + echartData[2].value)) * 100).toFixed(2) || 0;
 | 
	
		
			
				|  |  | +      percentE.value = ((echartData[2].value / (echartData[0].value + echartData[1].value + echartData[2].value)) * 100).toFixed(2) || 0;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +      // echartData[0].value = Math.floor(Math.random() * (629 - 620 + 1)) + 620;
 | 
	
		
			
				|  |  | +      // echartData[1].value = Math.floor(Math.random() * (949 - 940 + 1)) + 940;
 | 
	
		
			
				|  |  | +      // echartData[2].value = Math.floor(Math.random() * (855 - 850 + 1)) + 850;
 | 
	
		
			
				|  |  | +      // tabList[0].val = Math.floor(Math.random() * (10700 - 10600 + 1)) + 10600;
 | 
	
		
			
				|  |  | +      // tabList[1].val = Math.floor(Math.random() * (2433 - 2423 + 1)) + 2423;
 | 
	
		
			
				|  |  | +      // tabList[2].val = 0.56;
 | 
	
		
			
				|  |  | +      // percentF.value = ((echartData[0].value / (echartData[0].value + echartData[1].value + echartData[2].value)) * 100).toFixed(2);
 | 
	
		
			
				|  |  | +      // percentT.value = ((echartData[1].value / (echartData[0].value + echartData[1].value + echartData[2].value)) * 100).toFixed(2);
 | 
	
		
			
				|  |  | +      // percentE.value = ((echartData[2].value / (echartData[0].value + echartData[1].value + echartData[2].value)) * 100).toFixed(2);
 | 
	
		
			
				|  |  | +      getOption();
 | 
	
		
			
				|  |  | +      break;
 | 
	
		
			
				|  |  | +    case 'bet关键路线2':
 | 
	
		
			
				|  |  | +      echartData[0].value = lineData[1].majorpath.drag_1 || 0;
 | 
	
		
			
				|  |  | +      echartData[1].value = lineData[1].majorpath.drag_2 || 0;
 | 
	
		
			
				|  |  | +      echartData[2].value = lineData[1].majorpath.drag_3 || 0;
 | 
	
		
			
				|  |  | +      tabList[0].val = lineData[1].majorpath.drag_total || 0;
 | 
	
		
			
				|  |  | +      tabList[1].val = lineData[1].majorpath.m3_total || 0;
 | 
	
		
			
				|  |  | +      tabList[2].val = 0.83;
 | 
	
		
			
				|  |  | +      percentF.value = ((echartData[0].value / (echartData[0].value + echartData[1].value + echartData[2].value)) * 100).toFixed(2) || 0;
 | 
	
		
			
				|  |  | +      percentT.value = ((echartData[1].value / (echartData[0].value + echartData[1].value + echartData[2].value)) * 100).toFixed(2) || 0;
 | 
	
		
			
				|  |  | +      percentE.value = ((echartData[2].value / (echartData[0].value + echartData[1].value + echartData[2].value)) * 100).toFixed(2) || 0;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +      // echartData[0].value = Math.floor(Math.random() * (830 - 820 + 1)) + 820;
 | 
	
		
			
				|  |  | +      // echartData[1].value = Math.floor(Math.random() * (620 - 600 + 1)) + 600;
 | 
	
		
			
				|  |  | +      // echartData[2].value = Math.floor(Math.random() * (860 - 800 + 1)) + 800;
 | 
	
		
			
				|  |  | +      // tabList[0].val = Math.floor(Math.random() * (10100 - 10000 + 1)) + 10000;
 | 
	
		
			
				|  |  | +      // tabList[1].val = Math.floor(Math.random() * (2310 - 2210 + 1)) + 2210;
 | 
	
		
			
				|  |  | +      // tabList[2].val = 0.78;
 | 
	
		
			
				|  |  | +      // percentF.value = ((echartData[0].value / (echartData[0].value + echartData[1].value + echartData[2].value)) * 100).toFixed(2);
 | 
	
		
			
				|  |  | +      // percentT.value = ((echartData[1].value / (echartData[0].value + echartData[1].value + echartData[2].value)) * 100).toFixed(2);
 | 
	
		
			
				|  |  | +      // percentE.value = ((echartData[2].value / (echartData[0].value + echartData[1].value + echartData[2].value)) * 100).toFixed(2);
 | 
	
		
			
				|  |  | +      getOption();
 | 
	
		
			
				|  |  | +      break;
 | 
	
		
			
				|  |  | +    case 'sw关键路线1':
 | 
	
		
			
				|  |  | +      echartData[0].value = lineData[2].majorpath.drag_1 || 0;
 | 
	
		
			
				|  |  | +      echartData[1].value = lineData[2].majorpath.drag_2 || 0;
 | 
	
		
			
				|  |  | +      echartData[2].value = lineData[2].majorpath.drag_3 || 0;
 | 
	
		
			
				|  |  | +      tabList[0].val = lineData[2].majorpath.drag_total || 0;
 | 
	
		
			
				|  |  | +      tabList[1].val = lineData[2].majorpath.m3_total || 0;
 | 
	
		
			
				|  |  | +      tabList[2].val = 0.88;
 | 
	
		
			
				|  |  | +      percentF.value = ((echartData[0].value / (echartData[0].value + echartData[1].value + echartData[2].value)) * 100).toFixed(2) || 0;
 | 
	
		
			
				|  |  | +      percentT.value = ((echartData[1].value / (echartData[0].value + echartData[1].value + echartData[2].value)) * 100).toFixed(2) || 0;
 | 
	
		
			
				|  |  | +      percentE.value = ((echartData[2].value / (echartData[0].value + echartData[1].value + echartData[2].value)) * 100).toFixed(2) || 0;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +      // echartData[0].value = Math.floor(Math.random() * (830 - 820 + 1)) + 820;
 | 
	
		
			
				|  |  | +      // echartData[1].value = Math.floor(Math.random() * (620 - 600 + 1)) + 600;
 | 
	
		
			
				|  |  | +      // echartData[2].value = Math.floor(Math.random() * (860 - 800 + 1)) + 800;
 | 
	
		
			
				|  |  | +      // tabList[0].val = Math.floor(Math.random() * (10100 - 10000 + 1)) + 10000;
 | 
	
		
			
				|  |  | +      // tabList[1].val = Math.floor(Math.random() * (2310 - 2210 + 1)) + 2210;
 | 
	
		
			
				|  |  | +      // tabList[2].val = 0.78;
 | 
	
		
			
				|  |  | +      // percentF.value = ((echartData[0].value / (echartData[0].value + echartData[1].value + echartData[2].value)) * 100).toFixed(2);
 | 
	
		
			
				|  |  | +      // percentT.value = ((echartData[1].value / (echartData[0].value + echartData[1].value + echartData[2].value)) * 100).toFixed(2);
 | 
	
		
			
				|  |  | +      // percentE.value = ((echartData[2].value / (echartData[0].value + echartData[1].value + echartData[2].value)) * 100).toFixed(2);
 | 
	
		
			
				|  |  | +      getOption();
 | 
	
		
			
				|  |  | +      break;
 | 
	
		
			
				|  |  | +    case 'sw关键路线2':
 | 
	
		
			
				|  |  | +      echartData[0].value = lineData[3].majorpath.drag_1 || 0;
 | 
	
		
			
				|  |  | +      echartData[1].value = lineData[3].majorpath.drag_2 || 0;
 | 
	
		
			
				|  |  | +      echartData[2].value = lineData[3].majorpath.drag_3 || 0;
 | 
	
		
			
				|  |  | +      tabList[0].val = lineData[3].majorpath.drag_total || 0;
 | 
	
		
			
				|  |  | +      tabList[1].val = lineData[3].majorpath.m3_total || 0;
 | 
	
		
			
				|  |  | +      tabList[2].val = 0.93;
 | 
	
		
			
				|  |  | +      percentF.value = ((echartData[0].value / (echartData[0].value + echartData[1].value + echartData[2].value)) * 100).toFixed(2) || 0;
 | 
	
		
			
				|  |  | +      percentT.value = ((echartData[1].value / (echartData[0].value + echartData[1].value + echartData[2].value)) * 100).toFixed(2) || 0;
 | 
	
		
			
				|  |  | +      percentE.value = ((echartData[2].value / (echartData[0].value + echartData[1].value + echartData[2].value)) * 100).toFixed(2) || 0;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +      // echartData[0].value = Math.floor(Math.random() * (830 - 820 + 1)) + 820;
 | 
	
		
			
				|  |  | +      // echartData[1].value = Math.floor(Math.random() * (620 - 600 + 1)) + 600;
 | 
	
		
			
				|  |  | +      // echartData[2].value = Math.floor(Math.random() * (860 - 800 + 1)) + 800;
 | 
	
		
			
				|  |  | +      // tabList[0].val = Math.floor(Math.random() * (10100 - 10000 + 1)) + 10000;
 | 
	
		
			
				|  |  | +      // tabList[1].val = Math.floor(Math.random() * (2310 - 2210 + 1)) + 2210;
 | 
	
		
			
				|  |  | +      // tabList[2].val = 0.78;
 | 
	
		
			
				|  |  | +      // percentF.value = ((echartData[0].value / (echartData[0].value + echartData[1].value + echartData[2].value)) * 100).toFixed(2);
 | 
	
		
			
				|  |  | +      // percentT.value = ((echartData[1].value / (echartData[0].value + echartData[1].value + echartData[2].value)) * 100).toFixed(2);
 | 
	
		
			
				|  |  | +      // percentE.value = ((echartData[2].value / (echartData[0].value + echartData[1].value + echartData[2].value)) * 100).toFixed(2);
 | 
	
		
			
				|  |  | +      getOption();
 | 
	
		
			
				|  |  | +      break;
 | 
	
		
			
				|  |  |    }
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -  function getOption() {
 | 
	
		
			
				|  |  | -    nextTick(() => {
 | 
	
		
			
				|  |  | -      function deepCopy(obj) {
 | 
	
		
			
				|  |  | -        if (typeof obj !== 'object') {
 | 
	
		
			
				|  |  | -          return obj;
 | 
	
		
			
				|  |  | -        }
 | 
	
		
			
				|  |  | -        var newobj = {};
 | 
	
		
			
				|  |  | -        for (var attr in obj) {
 | 
	
		
			
				|  |  | -          newobj[attr] = obj[attr];
 | 
	
		
			
				|  |  | -        }
 | 
	
		
			
				|  |  | -        return newobj;
 | 
	
		
			
				|  |  | +function getOption() {
 | 
	
		
			
				|  |  | +  nextTick(() => {
 | 
	
		
			
				|  |  | +    function deepCopy(obj) {
 | 
	
		
			
				|  |  | +      if (typeof obj !== 'object') {
 | 
	
		
			
				|  |  | +        return obj;
 | 
	
		
			
				|  |  | +      }
 | 
	
		
			
				|  |  | +      var newobj = {};
 | 
	
		
			
				|  |  | +      for (var attr in obj) {
 | 
	
		
			
				|  |  | +        newobj[attr] = obj[attr];
 | 
	
		
			
				|  |  |        }
 | 
	
		
			
				|  |  | +      return newobj;
 | 
	
		
			
				|  |  | +    }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -      echartData.map((a, b) => {
 | 
	
		
			
				|  |  | -        xData.push(a.name);
 | 
	
		
			
				|  |  | -        yData.push(a.value);
 | 
	
		
			
				|  |  | -      });
 | 
	
		
			
				|  |  | -      var startColor = ['rgba(255, 224, 28,.6)', 'rgba(31, 248, 251,.6)', 'rgba(154, 255, 168,.6)'];
 | 
	
		
			
				|  |  | -      var borderStartColor = ['#ffe01c', '#1ff8fb', '#9affa8'];
 | 
	
		
			
				|  |  | -      var RealData = [];
 | 
	
		
			
				|  |  | -      var borderData = [];
 | 
	
		
			
				|  |  | -      echartData.map((item, index) => {
 | 
	
		
			
				|  |  | -        var newobj = deepCopy(item);
 | 
	
		
			
				|  |  | -        var newobj1 = deepCopy(item);
 | 
	
		
			
				|  |  | -        RealData.push(newobj);
 | 
	
		
			
				|  |  | -        borderData.push(newobj1);
 | 
	
		
			
				|  |  | -      });
 | 
	
		
			
				|  |  | -      RealData.map((item, index) => {
 | 
	
		
			
				|  |  | -        item.itemStyle = {
 | 
	
		
			
				|  |  | -          normal: {
 | 
	
		
			
				|  |  | -            color: startColor[index],
 | 
	
		
			
				|  |  | +    echartData.map((a, b) => {
 | 
	
		
			
				|  |  | +      xData.push(a.name);
 | 
	
		
			
				|  |  | +      yData.push(a.value);
 | 
	
		
			
				|  |  | +    });
 | 
	
		
			
				|  |  | +    var startColor = ['rgba(255, 224, 28,.6)', 'rgba(31, 248, 251,.6)', 'rgba(154, 255, 168,.6)'];
 | 
	
		
			
				|  |  | +    var borderStartColor = ['#ffe01c', '#1ff8fb', '#9affa8'];
 | 
	
		
			
				|  |  | +    var RealData = [];
 | 
	
		
			
				|  |  | +    var borderData = [];
 | 
	
		
			
				|  |  | +    echartData.map((item, index) => {
 | 
	
		
			
				|  |  | +      var newobj = deepCopy(item);
 | 
	
		
			
				|  |  | +      var newobj1 = deepCopy(item);
 | 
	
		
			
				|  |  | +      RealData.push(newobj);
 | 
	
		
			
				|  |  | +      borderData.push(newobj1);
 | 
	
		
			
				|  |  | +    });
 | 
	
		
			
				|  |  | +    RealData.map((item, index) => {
 | 
	
		
			
				|  |  | +      item.itemStyle = {
 | 
	
		
			
				|  |  | +        normal: {
 | 
	
		
			
				|  |  | +          color: startColor[index],
 | 
	
		
			
				|  |  | +        },
 | 
	
		
			
				|  |  | +      };
 | 
	
		
			
				|  |  | +    });
 | 
	
		
			
				|  |  | +    borderData.map((item, index) => {
 | 
	
		
			
				|  |  | +      item.itemStyle = {
 | 
	
		
			
				|  |  | +        normal: {
 | 
	
		
			
				|  |  | +          color: borderStartColor[index],
 | 
	
		
			
				|  |  | +        },
 | 
	
		
			
				|  |  | +      };
 | 
	
		
			
				|  |  | +    });
 | 
	
		
			
				|  |  | +    const myChart = echarts.init(line.value);
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    let option = {
 | 
	
		
			
				|  |  | +      legend: [
 | 
	
		
			
				|  |  | +        {
 | 
	
		
			
				|  |  | +          // orient: 'vertical',
 | 
	
		
			
				|  |  | +          x: '50%',
 | 
	
		
			
				|  |  | +          y: '12%',
 | 
	
		
			
				|  |  | +          itemWidth: 10,
 | 
	
		
			
				|  |  | +          itemHeight: 10,
 | 
	
		
			
				|  |  | +          align: 'left',
 | 
	
		
			
				|  |  | +          textStyle: {
 | 
	
		
			
				|  |  | +            fontSize: 14,
 | 
	
		
			
				|  |  | +            color: '#b3b8cc',
 | 
	
		
			
				|  |  |            },
 | 
	
		
			
				|  |  | -        };
 | 
	
		
			
				|  |  | -      });
 | 
	
		
			
				|  |  | -      borderData.map((item, index) => {
 | 
	
		
			
				|  |  | -        item.itemStyle = {
 | 
	
		
			
				|  |  | -          normal: {
 | 
	
		
			
				|  |  | -            color: borderStartColor[index],
 | 
	
		
			
				|  |  | +          data: ['进风区'],
 | 
	
		
			
				|  |  | +        },
 | 
	
		
			
				|  |  | +        {
 | 
	
		
			
				|  |  | +          // orient: 'vertical',
 | 
	
		
			
				|  |  | +          x: '50%',
 | 
	
		
			
				|  |  | +          y: '42%',
 | 
	
		
			
				|  |  | +          itemWidth: 10,
 | 
	
		
			
				|  |  | +          itemHeight: 10,
 | 
	
		
			
				|  |  | +          align: 'left',
 | 
	
		
			
				|  |  | +          textStyle: {
 | 
	
		
			
				|  |  | +            fontSize: 14,
 | 
	
		
			
				|  |  | +            color: '#b3b8cc',
 | 
	
		
			
				|  |  |            },
 | 
	
		
			
				|  |  | -        };
 | 
	
		
			
				|  |  | -      });
 | 
	
		
			
				|  |  | -      const myChart = echarts.init(line.value);
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -      let option = {
 | 
	
		
			
				|  |  | -        legend: [
 | 
	
		
			
				|  |  | -          {
 | 
	
		
			
				|  |  | -            // orient: 'vertical',
 | 
	
		
			
				|  |  | -            x: '50%',
 | 
	
		
			
				|  |  | -            y: '12%',
 | 
	
		
			
				|  |  | -            itemWidth: 10,
 | 
	
		
			
				|  |  | -            itemHeight: 10,
 | 
	
		
			
				|  |  | -            align: 'left',
 | 
	
		
			
				|  |  | -            textStyle: {
 | 
	
		
			
				|  |  | -              fontSize: 14,
 | 
	
		
			
				|  |  | -              color: '#b3b8cc',
 | 
	
		
			
				|  |  | +          data: ['用风区'],
 | 
	
		
			
				|  |  | +        },
 | 
	
		
			
				|  |  | +        {
 | 
	
		
			
				|  |  | +          // orient: 'vertical',
 | 
	
		
			
				|  |  | +          x: '50%',
 | 
	
		
			
				|  |  | +          y: '70%',
 | 
	
		
			
				|  |  | +          itemWidth: 10,
 | 
	
		
			
				|  |  | +          itemHeight: 10,
 | 
	
		
			
				|  |  | +          align: 'left',
 | 
	
		
			
				|  |  | +          textStyle: {
 | 
	
		
			
				|  |  | +            fontSize: 14,
 | 
	
		
			
				|  |  | +            color: '#b3b8cc',
 | 
	
		
			
				|  |  | +          },
 | 
	
		
			
				|  |  | +          data: ['回风区'],
 | 
	
		
			
				|  |  | +        },
 | 
	
		
			
				|  |  | +      ],
 | 
	
		
			
				|  |  | +      tooltip: {
 | 
	
		
			
				|  |  | +        formatter: '{b}:{c}',
 | 
	
		
			
				|  |  | +      },
 | 
	
		
			
				|  |  | +      series: [
 | 
	
		
			
				|  |  | +        // 主要展示层的
 | 
	
		
			
				|  |  | +        {
 | 
	
		
			
				|  |  | +          radius: ['40%', '80%'],
 | 
	
		
			
				|  |  | +          center: ['25%', '50%'],
 | 
	
		
			
				|  |  | +          type: 'pie',
 | 
	
		
			
				|  |  | +          z: 10,
 | 
	
		
			
				|  |  | +          label: {
 | 
	
		
			
				|  |  | +            normal: {
 | 
	
		
			
				|  |  | +              show: false,
 | 
	
		
			
				|  |  | +            },
 | 
	
		
			
				|  |  | +            emphasis: {
 | 
	
		
			
				|  |  | +              show: false,
 | 
	
		
			
				|  |  |              },
 | 
	
		
			
				|  |  | -            data: ['进风区'],
 | 
	
		
			
				|  |  |            },
 | 
	
		
			
				|  |  | -          {
 | 
	
		
			
				|  |  | -            // orient: 'vertical',
 | 
	
		
			
				|  |  | -            x: '50%',
 | 
	
		
			
				|  |  | -            y: '42%',
 | 
	
		
			
				|  |  | -            itemWidth: 10,
 | 
	
		
			
				|  |  | -            itemHeight: 10,
 | 
	
		
			
				|  |  | -            align: 'left',
 | 
	
		
			
				|  |  | -            textStyle: {
 | 
	
		
			
				|  |  | -              fontSize: 14,
 | 
	
		
			
				|  |  | -              color: '#b3b8cc',
 | 
	
		
			
				|  |  | +          labelLine: {
 | 
	
		
			
				|  |  | +            normal: {
 | 
	
		
			
				|  |  | +              show: false,
 | 
	
		
			
				|  |  | +            },
 | 
	
		
			
				|  |  | +            emphasis: {
 | 
	
		
			
				|  |  | +              show: false,
 | 
	
		
			
				|  |  |              },
 | 
	
		
			
				|  |  | -            data: ['用风区'],
 | 
	
		
			
				|  |  |            },
 | 
	
		
			
				|  |  | -          {
 | 
	
		
			
				|  |  | -            // orient: 'vertical',
 | 
	
		
			
				|  |  | -            x: '50%',
 | 
	
		
			
				|  |  | -            y: '70%',
 | 
	
		
			
				|  |  | -            itemWidth: 10,
 | 
	
		
			
				|  |  | -            itemHeight: 10,
 | 
	
		
			
				|  |  | -            align: 'left',
 | 
	
		
			
				|  |  | -            textStyle: {
 | 
	
		
			
				|  |  | -              fontSize: 14,
 | 
	
		
			
				|  |  | -              color: '#b3b8cc',
 | 
	
		
			
				|  |  | +          itemStyle: {
 | 
	
		
			
				|  |  | +            normal: {
 | 
	
		
			
				|  |  | +              borderWidth: 5,
 | 
	
		
			
				|  |  | +              borderColor: 'rgba(5, 45, 99)',
 | 
	
		
			
				|  |  |              },
 | 
	
		
			
				|  |  | -            data: ['回风区'],
 | 
	
		
			
				|  |  |            },
 | 
	
		
			
				|  |  | -        ],
 | 
	
		
			
				|  |  | -        tooltip: {
 | 
	
		
			
				|  |  | -          formatter: '{b}:{c}',
 | 
	
		
			
				|  |  | +          data: RealData,
 | 
	
		
			
				|  |  |          },
 | 
	
		
			
				|  |  | -        series: [
 | 
	
		
			
				|  |  | -          // 主要展示层的
 | 
	
		
			
				|  |  | -          {
 | 
	
		
			
				|  |  | -            radius: ['40%', '80%'],
 | 
	
		
			
				|  |  | -            center: ['25%', '50%'],
 | 
	
		
			
				|  |  | -            type: 'pie',
 | 
	
		
			
				|  |  | -            z: 10,
 | 
	
		
			
				|  |  | -            label: {
 | 
	
		
			
				|  |  | -              normal: {
 | 
	
		
			
				|  |  | -                show: false,
 | 
	
		
			
				|  |  | -              },
 | 
	
		
			
				|  |  | -              emphasis: {
 | 
	
		
			
				|  |  | -                show: false,
 | 
	
		
			
				|  |  | -              },
 | 
	
		
			
				|  |  | -            },
 | 
	
		
			
				|  |  | -            labelLine: {
 | 
	
		
			
				|  |  | -              normal: {
 | 
	
		
			
				|  |  | -                show: false,
 | 
	
		
			
				|  |  | -              },
 | 
	
		
			
				|  |  | -              emphasis: {
 | 
	
		
			
				|  |  | -                show: false,
 | 
	
		
			
				|  |  | -              },
 | 
	
		
			
				|  |  | +        // 边框的设置
 | 
	
		
			
				|  |  | +        {
 | 
	
		
			
				|  |  | +          radius: ['45%', '52%'],
 | 
	
		
			
				|  |  | +          center: ['25%', '50%'],
 | 
	
		
			
				|  |  | +          type: 'pie',
 | 
	
		
			
				|  |  | +          z: 5,
 | 
	
		
			
				|  |  | +          label: {
 | 
	
		
			
				|  |  | +            normal: {
 | 
	
		
			
				|  |  | +              show: false,
 | 
	
		
			
				|  |  |              },
 | 
	
		
			
				|  |  | -            itemStyle: {
 | 
	
		
			
				|  |  | -              normal: {
 | 
	
		
			
				|  |  | -                borderWidth: 5,
 | 
	
		
			
				|  |  | -                borderColor: 'rgba(2, 39, 115)',
 | 
	
		
			
				|  |  | -              },
 | 
	
		
			
				|  |  | +            emphasis: {
 | 
	
		
			
				|  |  | +              show: false,
 | 
	
		
			
				|  |  |              },
 | 
	
		
			
				|  |  | -            data: RealData,
 | 
	
		
			
				|  |  |            },
 | 
	
		
			
				|  |  | -          // 边框的设置
 | 
	
		
			
				|  |  | -          {
 | 
	
		
			
				|  |  | -            radius: ['45%', '52%'],
 | 
	
		
			
				|  |  | -            center: ['25%', '50%'],
 | 
	
		
			
				|  |  | -            type: 'pie',
 | 
	
		
			
				|  |  | -            z: 5,
 | 
	
		
			
				|  |  | -            label: {
 | 
	
		
			
				|  |  | -              normal: {
 | 
	
		
			
				|  |  | -                show: false,
 | 
	
		
			
				|  |  | -              },
 | 
	
		
			
				|  |  | -              emphasis: {
 | 
	
		
			
				|  |  | -                show: false,
 | 
	
		
			
				|  |  | -              },
 | 
	
		
			
				|  |  | -            },
 | 
	
		
			
				|  |  | -            labelLine: {
 | 
	
		
			
				|  |  | -              normal: {
 | 
	
		
			
				|  |  | -                show: false,
 | 
	
		
			
				|  |  | -              },
 | 
	
		
			
				|  |  | -              emphasis: {
 | 
	
		
			
				|  |  | -                show: false,
 | 
	
		
			
				|  |  | -              },
 | 
	
		
			
				|  |  | +          labelLine: {
 | 
	
		
			
				|  |  | +            normal: {
 | 
	
		
			
				|  |  | +              show: false,
 | 
	
		
			
				|  |  |              },
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -            animation: false,
 | 
	
		
			
				|  |  | -            tooltip: {
 | 
	
		
			
				|  |  | +            emphasis: {
 | 
	
		
			
				|  |  |                show: false,
 | 
	
		
			
				|  |  |              },
 | 
	
		
			
				|  |  | -            data: borderData,
 | 
	
		
			
				|  |  |            },
 | 
	
		
			
				|  |  | -        ],
 | 
	
		
			
				|  |  | -      };
 | 
	
		
			
				|  |  | -      myChart.setOption(option);
 | 
	
		
			
				|  |  | -      window.onresize = function () {
 | 
	
		
			
				|  |  | -        myChart.resize();
 | 
	
		
			
				|  |  | -      };
 | 
	
		
			
				|  |  | -    });
 | 
	
		
			
				|  |  | -  }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -  watch(
 | 
	
		
			
				|  |  | -    () => props.lineList,
 | 
	
		
			
				|  |  | -    (val) => {
 | 
	
		
			
				|  |  | -      console.log(val, '关键路线数据');
 | 
	
		
			
				|  |  | -      lineData = val;
 | 
	
		
			
				|  |  | -      lineTypeList.length = 0;
 | 
	
		
			
				|  |  | -      lineData.forEach((el) => {
 | 
	
		
			
				|  |  | -        lineTypeList.push({
 | 
	
		
			
				|  |  | -          label: el.deviceName,
 | 
	
		
			
				|  |  | -          value: el.deviceName,
 | 
	
		
			
				|  |  | -        });
 | 
	
		
			
				|  |  | +          animation: false,
 | 
	
		
			
				|  |  | +          tooltip: {
 | 
	
		
			
				|  |  | +            show: false,
 | 
	
		
			
				|  |  | +          },
 | 
	
		
			
				|  |  | +          data: borderData,
 | 
	
		
			
				|  |  | +        },
 | 
	
		
			
				|  |  | +      ],
 | 
	
		
			
				|  |  | +    };
 | 
	
		
			
				|  |  | +    myChart.setOption(option);
 | 
	
		
			
				|  |  | +    window.onresize = function () {
 | 
	
		
			
				|  |  | +      myChart.resize();
 | 
	
		
			
				|  |  | +    };
 | 
	
		
			
				|  |  | +  });
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +watch(
 | 
	
		
			
				|  |  | +  () => props.lineList,
 | 
	
		
			
				|  |  | +  (val) => {
 | 
	
		
			
				|  |  | +    console.log(val, '关键路线数据');
 | 
	
		
			
				|  |  | +    lineData = val;
 | 
	
		
			
				|  |  | +    lineTypeList.length = 0;
 | 
	
		
			
				|  |  | +    lineData.forEach((el) => {
 | 
	
		
			
				|  |  | +      lineTypeList.push({
 | 
	
		
			
				|  |  | +        label: el.deviceName,
 | 
	
		
			
				|  |  | +        value: el.deviceName,
 | 
	
		
			
				|  |  |        });
 | 
	
		
			
				|  |  | -      searchValue.value = lineTypeList[0].value;
 | 
	
		
			
				|  |  | +    });
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +    if (searchValue.value) {
 | 
	
		
			
				|  |  | +      changeSelect(searchValue.value);
 | 
	
		
			
				|  |  | +    } else {
 | 
	
		
			
				|  |  | +      searchValue.value = lineTypeList[0].value;
 | 
	
		
			
				|  |  |        changeSelect(searchValue.value);
 | 
	
		
			
				|  |  | -    },
 | 
	
		
			
				|  |  | -    {
 | 
	
		
			
				|  |  | -      deep: true,
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  | -  );
 | 
	
		
			
				|  |  | +  },
 | 
	
		
			
				|  |  | +  {
 | 
	
		
			
				|  |  | +    deep: true,
 | 
	
		
			
				|  |  | +  }
 | 
	
		
			
				|  |  | +);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -  onMounted(() => {});
 | 
	
		
			
				|  |  | +onMounted(() => { });
 | 
	
		
			
				|  |  |  </script>
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  <style lang="less" scoped>
 | 
	
		
			
				|  |  | -  @font-face {
 | 
	
		
			
				|  |  | +@font-face {
 | 
	
		
			
				|  |  | +  font-family: 'douyuFont';
 | 
	
		
			
				|  |  | +  src: url('../../../../../assets/font/douyuFont.otf');
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +.windLine {
 | 
	
		
			
				|  |  | +  width: 100%;
 | 
	
		
			
				|  |  | +  height: 100%;
 | 
	
		
			
				|  |  | +  position: relative;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +  .title-top {
 | 
	
		
			
				|  |  | +    position: absolute;
 | 
	
		
			
				|  |  | +    top: 9px;
 | 
	
		
			
				|  |  | +    left: 46px;
 | 
	
		
			
				|  |  | +    color: #fff;
 | 
	
		
			
				|  |  | +    font-size: 16px;
 | 
	
		
			
				|  |  |      font-family: 'douyuFont';
 | 
	
		
			
				|  |  | -    src: url('../../../../../assets/font/douyuFont.otf');
 | 
	
		
			
				|  |  | +    cursor: pointer;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    &:hover {
 | 
	
		
			
				|  |  | +      color: #66ffff;
 | 
	
		
			
				|  |  | +    }
 | 
	
		
			
				|  |  |    }
 | 
	
		
			
				|  |  | -  .windLine {
 | 
	
		
			
				|  |  | -    width: 100%;
 | 
	
		
			
				|  |  | -    height: 100%;
 | 
	
		
			
				|  |  | -    position: relative;
 | 
	
		
			
				|  |  | -    .title-top {
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +  .toggle-search {
 | 
	
		
			
				|  |  | +    position: absolute;
 | 
	
		
			
				|  |  | +    left: 9px;
 | 
	
		
			
				|  |  | +    top: 37px;
 | 
	
		
			
				|  |  | +    display: flex;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    .icon-search {
 | 
	
		
			
				|  |  |        position: absolute;
 | 
	
		
			
				|  |  | -      top: 9px;
 | 
	
		
			
				|  |  | -      left: 46px;
 | 
	
		
			
				|  |  | -      color: #fff;
 | 
	
		
			
				|  |  | -      font-size: 16px;
 | 
	
		
			
				|  |  | -      font-family: 'douyuFont';
 | 
	
		
			
				|  |  | -      cursor: pointer;
 | 
	
		
			
				|  |  | -      &:hover {
 | 
	
		
			
				|  |  | -        color: #66ffff;
 | 
	
		
			
				|  |  | -      }
 | 
	
		
			
				|  |  | +      top: 50%;
 | 
	
		
			
				|  |  | +      left: 5px;
 | 
	
		
			
				|  |  | +      transform: translate(0%, -50%);
 | 
	
		
			
				|  |  | +    }
 | 
	
		
			
				|  |  | +  }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +  .line-echart {
 | 
	
		
			
				|  |  | +    position: absolute;
 | 
	
		
			
				|  |  | +    top: 66px;
 | 
	
		
			
				|  |  | +    left: 0;
 | 
	
		
			
				|  |  | +    width: 100%;
 | 
	
		
			
				|  |  | +    height: 120px;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    .line {
 | 
	
		
			
				|  |  | +      width: 100%;
 | 
	
		
			
				|  |  | +      height: 100%;
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  | -    .toggle-search {
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    .pic {
 | 
	
		
			
				|  |  | +      height: 100%;
 | 
	
		
			
				|  |  |        position: absolute;
 | 
	
		
			
				|  |  | -      left: 9px;
 | 
	
		
			
				|  |  | -      top: 37px;
 | 
	
		
			
				|  |  | +      left: 45%;
 | 
	
		
			
				|  |  | +      top: 0;
 | 
	
		
			
				|  |  |        display: flex;
 | 
	
		
			
				|  |  | -      .icon-search {
 | 
	
		
			
				|  |  | -        position: absolute;
 | 
	
		
			
				|  |  | -        top: 50%;
 | 
	
		
			
				|  |  | -        left: 5px;
 | 
	
		
			
				|  |  | -        transform: translate(0%, -50%);
 | 
	
		
			
				|  |  | +      align-items: center;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +      img {
 | 
	
		
			
				|  |  | +        height: 60%;
 | 
	
		
			
				|  |  |        }
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  | -    .line-echart {
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    .percent {
 | 
	
		
			
				|  |  |        position: absolute;
 | 
	
		
			
				|  |  | -      top: 66px;
 | 
	
		
			
				|  |  | -      left: 0;
 | 
	
		
			
				|  |  | -      width: 100%;
 | 
	
		
			
				|  |  | -      height: 120px;
 | 
	
		
			
				|  |  | -      .line {
 | 
	
		
			
				|  |  | -        width: 100%;
 | 
	
		
			
				|  |  | -        height: 100%;
 | 
	
		
			
				|  |  | -      }
 | 
	
		
			
				|  |  | -      .pic {
 | 
	
		
			
				|  |  | -        height: 100%;
 | 
	
		
			
				|  |  | -        position: absolute;
 | 
	
		
			
				|  |  | -        left: 45%;
 | 
	
		
			
				|  |  | -        top: 0;
 | 
	
		
			
				|  |  | -        display: flex;
 | 
	
		
			
				|  |  | -        align-items: center;
 | 
	
		
			
				|  |  | -        img {
 | 
	
		
			
				|  |  | -          height: 60%;
 | 
	
		
			
				|  |  | +      left: 75%;
 | 
	
		
			
				|  |  | +      top: 0;
 | 
	
		
			
				|  |  | +      width: 45px;
 | 
	
		
			
				|  |  | +      height: 100%;
 | 
	
		
			
				|  |  | +      display: flex;
 | 
	
		
			
				|  |  | +      flex-direction: column;
 | 
	
		
			
				|  |  | +      // justify-content: space-between;
 | 
	
		
			
				|  |  | +      align-items: center;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +      .percent-box {
 | 
	
		
			
				|  |  | +        font-size: 14px;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +        // color: #b3b8cc;
 | 
	
		
			
				|  |  | +        &:nth-child(1) {
 | 
	
		
			
				|  |  | +          position: absolute;
 | 
	
		
			
				|  |  | +          top: 12%;
 | 
	
		
			
				|  |  | +          color: #ffe01c;
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  | -      }
 | 
	
		
			
				|  |  | -      .percent {
 | 
	
		
			
				|  |  | -        position: absolute;
 | 
	
		
			
				|  |  | -        left: 75%;
 | 
	
		
			
				|  |  | -        top: 0;
 | 
	
		
			
				|  |  | -        width: 45px;
 | 
	
		
			
				|  |  | -        height: 100%;
 | 
	
		
			
				|  |  | -        display: flex;
 | 
	
		
			
				|  |  | -        flex-direction: column;
 | 
	
		
			
				|  |  | -        // justify-content: space-between;
 | 
	
		
			
				|  |  | -        align-items: center;
 | 
	
		
			
				|  |  | -        .percent-box {
 | 
	
		
			
				|  |  | -          font-size: 14px;
 | 
	
		
			
				|  |  | -          // color: #b3b8cc;
 | 
	
		
			
				|  |  | -          &:nth-child(1) {
 | 
	
		
			
				|  |  | -            position: absolute;
 | 
	
		
			
				|  |  | -            top: 12%;
 | 
	
		
			
				|  |  | -            color: #ffe01c;
 | 
	
		
			
				|  |  | -          }
 | 
	
		
			
				|  |  | -          &:nth-child(2) {
 | 
	
		
			
				|  |  | -            position: absolute;
 | 
	
		
			
				|  |  | -            top: 42%;
 | 
	
		
			
				|  |  | -            color: #1ff8fb;
 | 
	
		
			
				|  |  | -          }
 | 
	
		
			
				|  |  | -          &:nth-child(3) {
 | 
	
		
			
				|  |  | -            position: absolute;
 | 
	
		
			
				|  |  | -            top: 70%;
 | 
	
		
			
				|  |  | -            color: #9affa8;
 | 
	
		
			
				|  |  | -          }
 | 
	
		
			
				|  |  | -          .dw {
 | 
	
		
			
				|  |  | -            color: #b3b8cc;
 | 
	
		
			
				|  |  | -            margin-left: 5px;
 | 
	
		
			
				|  |  | -          }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +        &:nth-child(2) {
 | 
	
		
			
				|  |  | +          position: absolute;
 | 
	
		
			
				|  |  | +          top: 42%;
 | 
	
		
			
				|  |  | +          color: #1ff8fb;
 | 
	
		
			
				|  |  | +        }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +        &:nth-child(3) {
 | 
	
		
			
				|  |  | +          position: absolute;
 | 
	
		
			
				|  |  | +          top: 70%;
 | 
	
		
			
				|  |  | +          color: #9affa8;
 | 
	
		
			
				|  |  | +        }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +        .dw {
 | 
	
		
			
				|  |  | +          color: #b3b8cc;
 | 
	
		
			
				|  |  | +          margin-left: 5px;
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |        }
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  | -    .line-card {
 | 
	
		
			
				|  |  | -      position: absolute;
 | 
	
		
			
				|  |  | -      top: 186px;
 | 
	
		
			
				|  |  | -      left: 0;
 | 
	
		
			
				|  |  | -      width: 100%;
 | 
	
		
			
				|  |  | -      height: calc(100% - 186px);
 | 
	
		
			
				|  |  | -      padding: 0px 15px 15px 15px;
 | 
	
		
			
				|  |  | -      box-sizing: border-box;
 | 
	
		
			
				|  |  | +  }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +  .line-card {
 | 
	
		
			
				|  |  | +    position: absolute;
 | 
	
		
			
				|  |  | +    top: 186px;
 | 
	
		
			
				|  |  | +    left: 0;
 | 
	
		
			
				|  |  | +    width: 100%;
 | 
	
		
			
				|  |  | +    height: calc(100% - 186px);
 | 
	
		
			
				|  |  | +    padding: 0px 15px 15px 15px;
 | 
	
		
			
				|  |  | +    box-sizing: border-box;
 | 
	
		
			
				|  |  | +    display: flex;
 | 
	
		
			
				|  |  | +    justify-content: space-around;
 | 
	
		
			
				|  |  | +    align-items: center;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    .card-item {
 | 
	
		
			
				|  |  |        display: flex;
 | 
	
		
			
				|  |  | -      justify-content: space-around;
 | 
	
		
			
				|  |  | +      flex: 1;
 | 
	
		
			
				|  |  | +      justify-content: center;
 | 
	
		
			
				|  |  |        align-items: center;
 | 
	
		
			
				|  |  | -      .card-item {
 | 
	
		
			
				|  |  | -        display: flex;
 | 
	
		
			
				|  |  | -        flex: 1;
 | 
	
		
			
				|  |  | -        justify-content: center;
 | 
	
		
			
				|  |  | -        align-items: center;
 | 
	
		
			
				|  |  | -        height: 100%;
 | 
	
		
			
				|  |  | -        .item-s {
 | 
	
		
			
				|  |  | -          position: relative;
 | 
	
		
			
				|  |  | -          width: 105px;
 | 
	
		
			
				|  |  | -          height: 58px;
 | 
	
		
			
				|  |  | -          margin-top: 20px;
 | 
	
		
			
				|  |  | -          background: url('../../../../../assets/images/home-container/line-val.png') no-repeat;
 | 
	
		
			
				|  |  | -          background-size: 100% 90%;
 | 
	
		
			
				|  |  | -          .item-label {
 | 
	
		
			
				|  |  | -            width: 100%;
 | 
	
		
			
				|  |  | -            text-align: center;
 | 
	
		
			
				|  |  | -            color: #b3b8cc;
 | 
	
		
			
				|  |  | -            font-size: 12px;
 | 
	
		
			
				|  |  | -          }
 | 
	
		
			
				|  |  | -          .item-val {
 | 
	
		
			
				|  |  | -            position: absolute;
 | 
	
		
			
				|  |  | -            left: 50%;
 | 
	
		
			
				|  |  | -            top: 26px;
 | 
	
		
			
				|  |  | -            font-size: 14px;
 | 
	
		
			
				|  |  | -            font-family: 'douyuFont';
 | 
	
		
			
				|  |  | -            color: #fff;
 | 
	
		
			
				|  |  | -            transform: translate(-50%, 0);
 | 
	
		
			
				|  |  | -          }
 | 
	
		
			
				|  |  | +      height: 100%;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +      .item-s {
 | 
	
		
			
				|  |  | +        position: relative;
 | 
	
		
			
				|  |  | +        width: 105px;
 | 
	
		
			
				|  |  | +        height: 58px;
 | 
	
		
			
				|  |  | +        margin-top: 20px;
 | 
	
		
			
				|  |  | +        background: url('../../../../../assets/images/home-container/line-val.png') no-repeat;
 | 
	
		
			
				|  |  | +        background-size: 100% 90%;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +        .item-label {
 | 
	
		
			
				|  |  | +          width: 100%;
 | 
	
		
			
				|  |  | +          text-align: center;
 | 
	
		
			
				|  |  | +          color: #b3b8cc;
 | 
	
		
			
				|  |  | +          font-size: 12px;
 | 
	
		
			
				|  |  | +        }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +        .item-val {
 | 
	
		
			
				|  |  | +          position: absolute;
 | 
	
		
			
				|  |  | +          left: 50%;
 | 
	
		
			
				|  |  | +          top: 26px;
 | 
	
		
			
				|  |  | +          font-size: 14px;
 | 
	
		
			
				|  |  | +          font-family: 'douyuFont';
 | 
	
		
			
				|  |  | +          color: #fff;
 | 
	
		
			
				|  |  | +          transform: translate(-50%, 0);
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |        }
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  |    }
 | 
	
		
			
				|  |  | -  :deep .zxm-select-selector {
 | 
	
		
			
				|  |  | -    width: 100%;
 | 
	
		
			
				|  |  | -    height: 30px !important;
 | 
	
		
			
				|  |  | -    padding: 0 11px 0px 25px !important;
 | 
	
		
			
				|  |  | -    background-color: rgba(8, 148, 255, 0.3) !important;
 | 
	
		
			
				|  |  | -    border: 1px solid #1d80da !important;
 | 
	
		
			
				|  |  | -  }
 | 
	
		
			
				|  |  | -  :deep .zxm-select-selection-item {
 | 
	
		
			
				|  |  | -    color: #fff !important;
 | 
	
		
			
				|  |  | -    line-height: 28px !important;
 | 
	
		
			
				|  |  | -  }
 | 
	
		
			
				|  |  | -  :deep .zxm-select-arrow {
 | 
	
		
			
				|  |  | -    color: #fff !important;
 | 
	
		
			
				|  |  | -  }
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +:deep .zxm-select-selector {
 | 
	
		
			
				|  |  | +  width: 100%;
 | 
	
		
			
				|  |  | +  height: 30px !important;
 | 
	
		
			
				|  |  | +  padding: 0 11px 0px 25px !important;
 | 
	
		
			
				|  |  | +  background-color: rgba(8, 148, 255, 0.3) !important;
 | 
	
		
			
				|  |  | +  border: 1px solid #1d80da !important;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +:deep .zxm-select-selection-item {
 | 
	
		
			
				|  |  | +  color: #fff !important;
 | 
	
		
			
				|  |  | +  line-height: 28px !important;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +:deep .zxm-select-arrow {
 | 
	
		
			
				|  |  | +  color: #fff !important;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  |  </style>
 |