|
@@ -1,48 +1,55 @@
|
|
|
<template>
|
|
|
- <div class="dataAnalysisCom">
|
|
|
- <p>风电数据处理</p>
|
|
|
- <search-cop @submit="funSubmit">
|
|
|
- </search-cop>
|
|
|
- <div class="main">
|
|
|
- <div class="treeDataMain">
|
|
|
- <tree-cop :data="treeData" @checkChange="funTreeCheckChange" :show-checkbox="true" :height="treeHeight"
|
|
|
- @currentChange="funCurrentChange" @refresh="funGetTree">
|
|
|
- </tree-cop>
|
|
|
- <tree-cop :dropdownMenu="['export','delete','save']" :data="processTreeData" :height="treeHeight"
|
|
|
- @currentChange="funProcessCurrentChange" @refresh="funGetProcessTree">
|
|
|
- </tree-cop>
|
|
|
- </div>
|
|
|
- <div class="excelDataMain">
|
|
|
- <div class="excelDataMain_top">
|
|
|
- <excel-cop :checkIds="excelCheckIds" :showCheckbox="excelCheckboxShow" :data="excelList"
|
|
|
- :height="excelHeight" @excelChange="funExcelChange" @checkChange="funExcelCheckChange">
|
|
|
- </excel-cop>
|
|
|
+ <div class="dataAnalysisCom" :class="!theme ? 'themeDark' : 'themeLight'">
|
|
|
+ <div class="dataAnalysisComMain">
|
|
|
+ <p>风电数据处理</p>
|
|
|
+ <search-cop @submit="funSubmit">
|
|
|
+ </search-cop>
|
|
|
+ <div class="main">
|
|
|
+ <div class="treeDataMain">
|
|
|
+ <tree-cop :data="treeData" @checkChange="funTreeCheckChange" :show-checkbox="true"
|
|
|
+ :height="treeHeight" @currentChange="funCurrentChange" @refresh="funGetTree">
|
|
|
+ </tree-cop>
|
|
|
+ <tree-cop :dropdownMenu="['export','delete','save']" :data="processTreeData" :height="treeHeight"
|
|
|
+ @currentChange="funProcessCurrentChange" @refresh="funGetProcessTree">
|
|
|
+ </tree-cop>
|
|
|
</div>
|
|
|
- <div class="excelDataMain_bot">
|
|
|
- <excel-cop :data="excelFitList" :height="excelHeight" @excelChange="funExcelChange">
|
|
|
- </excel-cop>
|
|
|
+ <div class="excelDataMain">
|
|
|
+ <div class="excelDataMain_top">
|
|
|
+ <excel-cop :checkIds="excelCheckIds" :showCheckbox="excelCheckboxShow" :data="excelList"
|
|
|
+ :theme="theme" :height="excelHeight" @excelChange="funExcelChange"
|
|
|
+ @checkChange="funExcelCheckChange">
|
|
|
+ </excel-cop>
|
|
|
+ </div>
|
|
|
+ <div class="excelDataMain_bot">
|
|
|
+ <excel-cop :data="excelFitList" :height="excelHeight" :theme="theme"
|
|
|
+ @excelChange="funExcelChange">
|
|
|
+ </excel-cop>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="tableDataMain">
|
|
|
+ <SubmitBtn class="butten_com" desc="区域划分" v-if="activeTab === '2' && excelType === 'fitting'"
|
|
|
+ @click="funChartArea">
|
|
|
+ </SubmitBtn>
|
|
|
+ <el-tabs v-model="activeTab" @tab-click="handleClick">
|
|
|
+ <el-tab-pane label="表格数据" name="1">
|
|
|
+ <table-cop :data="tableData" :column="tableColumn" :theme="theme" :loading="tableLoading"
|
|
|
+ :height="tableHeight" :tableId="tableShowId" :tableName="tableName">
|
|
|
+ </table-cop>
|
|
|
+ </el-tab-pane>
|
|
|
+ <el-tab-pane label="图表展示" name="2">
|
|
|
+ <div
|
|
|
+ :style="{ height: typeof tableHeight === 'string' ? tableHeight : tableHeight + 'px' }">
|
|
|
+ <CurrentScatterChart ref="chartRef" width="100%"
|
|
|
+ :height="`calc( ${tableHeight} - 20px )`"
|
|
|
+ :chartTitle="avgObj.title+ ' ' +'平均Cp值:'+avgObj.cpavg+'; 静风频率:'+avgObj.frequency+'%; 曲线偏差率:'+avgObj.pcratio+'%'"
|
|
|
+ :xAxisData="xAxisData" :yAxisData="{ splitLine: { show: false } }"
|
|
|
+ :seriesData="seriesData" :showLegend="true" :brushSelected="!isChartArea"
|
|
|
+ :theme="theme" :echartsTheme="echartsTheme" :dataSet="dataSet"
|
|
|
+ @getSelected="funChartSelect" />
|
|
|
+ </div>
|
|
|
+ </el-tab-pane>
|
|
|
+ </el-tabs>
|
|
|
</div>
|
|
|
- </div>
|
|
|
- <div class="tableDataMain">
|
|
|
- <SubmitBtn class="butten_com" desc="区域划分" v-if="activeTab === '2' && excelType === 'fitting'"
|
|
|
- @click="funChartArea">
|
|
|
- </SubmitBtn>
|
|
|
- <el-tabs v-model="activeTab" @tab-click="handleClick">
|
|
|
- <el-tab-pane label="表格数据" name="1">
|
|
|
- <table-cop :data="tableData" :column="tableColumn" :loading="tableLoading" :height="tableHeight"
|
|
|
- :tableId="tableShowId" :tableName="tableName">
|
|
|
- </table-cop>
|
|
|
- </el-tab-pane>
|
|
|
- <el-tab-pane label="图表展示" name="2">
|
|
|
- <div :style="{ height: typeof tableHeight === 'string' ? tableHeight : tableHeight + 'px' }">
|
|
|
- <CurrentScatterChart ref="chartRef" width="100%" :height="`calc( ${tableHeight} - 20px )`"
|
|
|
- :chartTitle="avgObj.title+ ' ' +'平均Cp值:'+avgObj.cpavg+'; 静风频率:'+avgObj.frequency+'%; 曲线偏差率:'+avgObj.pcratio+'%'"
|
|
|
- :xAxisData="xAxisData" :yAxisData="{ splitLine: { show: false } }"
|
|
|
- :seriesData="seriesData" :showLegend="true" :brushSelected="!isChartArea"
|
|
|
- :dataSet="dataSet" @getSelected="funChartSelect" />
|
|
|
- </div>
|
|
|
- </el-tab-pane>
|
|
|
- </el-tabs>
|
|
|
</div>
|
|
|
</div>
|
|
|
<el-dialog v-model="wtDialog" draggable title="风机功率点位">
|
|
@@ -99,8 +106,12 @@
|
|
|
nextTick,
|
|
|
onActivated,
|
|
|
onMounted,
|
|
|
- reactive
|
|
|
+ reactive,
|
|
|
+ watch
|
|
|
} from 'vue'
|
|
|
+ import {
|
|
|
+ useStore
|
|
|
+ } from 'vuex';
|
|
|
import httpRequest from '@/utils/request.js'
|
|
|
import {
|
|
|
ElMessage
|
|
@@ -668,10 +679,23 @@
|
|
|
/**created */
|
|
|
// funGetTree()
|
|
|
// funGetProcessTree()
|
|
|
+ const theme = ref(null)
|
|
|
+ const echartsTheme = ref('')
|
|
|
+ const store = useStore()
|
|
|
+ watch(() => store.state.theme, (newVal, oldVal) => {
|
|
|
+ theme.value = newVal
|
|
|
+ echartsTheme.value = !newVal ? 'dark' : ''
|
|
|
+ funGetTree()
|
|
|
+ funGetProcessTree()
|
|
|
+ }, {
|
|
|
+ deep: true
|
|
|
+ })
|
|
|
/**mounted */
|
|
|
onMounted(() => {
|
|
|
funGetTree()
|
|
|
funGetProcessTree()
|
|
|
+ theme.value = store.state.theme
|
|
|
+ echartsTheme.value = !theme.value ? 'dark' : ''
|
|
|
dataRadom.value = (new Date().getTime()).toString()
|
|
|
tableHeight.value = window.innerHeight - 260 + 'px'
|
|
|
excelHeight.value = (window.innerHeight - 220) / 2 + 'px'
|
|
@@ -697,7 +721,6 @@
|
|
|
|
|
|
p {
|
|
|
font-size: 16px;
|
|
|
- color: #fff;
|
|
|
margin-left: 20px;
|
|
|
}
|
|
|
|
|
@@ -710,7 +733,6 @@
|
|
|
.treeDataMain,
|
|
|
.excelDataMain,
|
|
|
.tableDataMain {
|
|
|
- background: #161f1e;
|
|
|
padding: 10px;
|
|
|
border-radius: 10px;
|
|
|
}
|
|
@@ -718,17 +740,6 @@
|
|
|
.treeDataMain {
|
|
|
width: calc(20% - 20px);
|
|
|
|
|
|
- .el-tree-node {
|
|
|
- .el-tree-node__content {
|
|
|
- .el-dropdown:hover {
|
|
|
- color: #fff;
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- .el-tree-node__content:hover {
|
|
|
- background-color: transparent;
|
|
|
- }
|
|
|
}
|
|
|
|
|
|
.excelDataMain {
|
|
@@ -756,4 +767,39 @@
|
|
|
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
+ .themeDark {
|
|
|
+
|
|
|
+ p {
|
|
|
+ color: #fff;
|
|
|
+ }
|
|
|
+
|
|
|
+ .treeDataMain,
|
|
|
+ .excelDataMain,
|
|
|
+ .tableDataMain {
|
|
|
+ background: #161f1e;
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ .themeLight {
|
|
|
+ padding: 0;
|
|
|
+
|
|
|
+ p {
|
|
|
+ color: #000;
|
|
|
+ }
|
|
|
+
|
|
|
+ .treeDataMain,
|
|
|
+ .excelDataMain,
|
|
|
+ .tableDataMain {
|
|
|
+ background: #edeffb;
|
|
|
+ }
|
|
|
+
|
|
|
+ .dataAnalysisComMain {
|
|
|
+ padding: 20px 0;
|
|
|
+ border-radius: 10px;
|
|
|
+ background: #fff;
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
</style>
|