Pārlūkot izejas kodu

树形控件BUG修复、图表类BUG修复、部分页面数据调整、BUG修复。

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 7 mēneši atpakaļ
vecāks
revīzija
0dded6c55a

+ 7 - 7
.env.development

@@ -11,28 +11,28 @@ VUE_APP_TITLE = '页面标题'
 # 马力军
 # VUE_APP_LOGIN_URL = 'http://192.168.2.45:48080'
 # 王波
-VUE_APP_LOGIN_URL = 'http://192.168.2.232:48080'
+VUE_APP_LOGIN_URL = 'http://192.168.0.105:48080'
 
 # 发电能力分析
-# VUE_APP_GENERAT_URL = 'http://123.60.219.66:9002'
+VUE_APP_GENERAT_URL = 'http://192.168.0.105:9002'
 # 马力军
 # VUE_APP_GENERAT_URL = 'http://192.168.2.45:9002'
 # 王波
-VUE_APP_GENERAT_URL = 'http://192.168.2.232:9002'
+# VUE_APP_GENERAT_URL = 'http://192.168.2.232:9002'
 
 # 智能报表
-# VUE_APP_REPORT_URL = 'http://123.60.219.66:9001'
+VUE_APP_REPORT_URL = 'http://192.168.0.105:9001'
 # 马力军
 # VUE_APP_REPORT_URL = 'http://192.168.2.45:9001'
 # 王波
-VUE_APP_REPORT_URL = 'http://192.168.2.232:9001'
+# VUE_APP_REPORT_URL = 'http://192.168.2.232:9001'
 
 # 功率预测
-# VUE_APP_BASE_URL = 'http://123.60.219.66:8086'
+VUE_APP_BASE_URL = 'http://192.168.0.105:8086'
 # 马力军
 # VUE_APP_BASE_URL = 'http://192.168.2.45:8086'
 # 王波
-VUE_APP_BASE_URL = 'http://192.168.2.232:8086'
+# VUE_APP_BASE_URL = 'http://192.168.2.232:8086'
 
 # 百度地图KEY
 VUE_APP_BAIDU_MAP_KEY = ''

+ 4 - 4
.env.production

@@ -13,7 +13,7 @@ VUE_APP_TITLE = '页面标题'
 
 # 登录
 # VUE_APP_LOGIN_URL = 'http://123.60.219.66:48080'
-VUE_APP_LOGIN_URL = 'http://10.127.7.241:48080'
+VUE_APP_LOGIN_URL = 'http://192.168.0.105:48080'
 # VUE_APP_LOGIN_URL = 'http://172.16.12.101:48080'
 # VUE_APP_LOGIN_URL = 'http://192.168.2.231:48080'
 # VUE_APP_LOGIN_URL = 'http://127.0.0.1:48080'
@@ -22,21 +22,21 @@ VUE_APP_LOGIN_URL = 'http://10.127.7.241:48080'
 
 # 发电能力分析
 # VUE_APP_GENERAT_URL = 'http://123.60.219.66:9002'
-VUE_APP_GENERAT_URL = 'http://10.127.7.241:9002'
+VUE_APP_GENERAT_URL = 'http://192.168.0.105:9002'
 # VUE_APP_GENERAT_URL = 'http://172.16.12.101:9002'
 # VUE_APP_GENERAT_URL = 'http://192.168.2.231:9002'
 # VUE_APP_GENERAT_URL = 'http://127.0.0.1:9002'
 
 # 智能报表
 # VUE_APP_REPORT_URL = 'http://123.60.219.66:9001'
-VUE_APP_REPORT_URL = 'http://10.127.7.241:9001'
+VUE_APP_REPORT_URL = 'http://192.168.0.105:9001'
 # VUE_APP_REPORT_URL = 'http://172.16.12.101:9001'
 # VUE_APP_REPORT_URL = 'http://192.168.2.231:9001'
 # VUE_APP_REPORT_URL = 'http://127.0.0.1:9001'
 
 # 功率预测
 # VUE_APP_BASE_URL = 'http://123.60.219.66:8086'
-VUE_APP_BASE_URL = 'http://10.127.7.241:8086'
+VUE_APP_BASE_URL = 'http://192.168.0.105:8086'
 # VUE_APP_BASE_URL = 'http://172.16.12.101:8086'
 # VUE_APP_BASE_URL = 'http://192.168.2.231:8086'
 # VUE_APP_BASE_URL = 'http://127.0.0.1:8086'

+ 2 - 2
public/static/config/modeConfig.js

@@ -18,8 +18,8 @@ const tilesMaxLevel = 18;
 // 切换模块时是否提示当前模块名称(用于对内介绍项目时便捷显示模块名称)
 const showModuleName = 0;
 
-// const reportBaseUrl = "http://10.127.7.241:8083";
-const reportBaseUrl = "http://172.16.12.101:8083";
+const reportBaseUrl = "http://10.127.7.241:8083";
+// const reportBaseUrl = "http://172.16.12.101:8083";
 
 // if (localTest) {
 //     baseURL = "http://192.168.10.8:9002/" // 联机调试 

+ 44 - 2
src/components/generatingCapacityComponent/tree.vue

@@ -34,7 +34,7 @@
         @check="funCheckChange"
         node-key="id"
         :expand-on-click-node="false"
-        :current-node-key="''"
+        :current-node-key="activeNode"
         :class="showCheckbox ? 'elTreeSty' : ''"
       >
         <template #default="{ node, data }">
@@ -65,7 +65,11 @@
           >
             <span
               class="el-dropdown-link"
-              :class="node.isCurrent ? 'changenodeLabel' : 'nodeLabel'"
+              :class="
+                node.isCurrent || activeNode === data.id
+                  ? 'changenodeLabel'
+                  : 'nodeLabel'
+              "
             >
               {{ node.label }}
             </span>
@@ -141,6 +145,12 @@ export default {
         return "wind";
       },
     },
+    currentNodeKey: {
+      type: String,
+      default: () => {
+        return "";
+      },
+    },
     dropdownMenu: {
       type: Array,
       default: () => {
@@ -154,6 +164,7 @@ export default {
       },
     },
   },
+
   data() {
     return {
       // treeJson: treeJson,
@@ -172,6 +183,11 @@ export default {
     filterText(val) {
       this.$refs.tree.filter(val);
     },
+    currentNodeKey(value) {
+      this.activeNode = value;
+      const node = this.getTreeItem(value, this.data?.[0]) || null;
+      this.$refs.tree.setChecked(node, true);
+    },
   },
   mounted() {
     // this.treeJsonFn()
@@ -195,6 +211,32 @@ export default {
         };
       });
     },
+    getTreeItem(id = "", data = {}) {
+      if (!id) {
+        return {};
+      }
+
+      if (data.id === id) {
+        return data;
+      } else {
+        if (data?.children?.length) {
+          for (let i = 0; i < data.children.length; i++) {
+            const ele = data.children[i];
+            if (ele.id === id) {
+              return ele;
+            } else {
+              if (ele.children?.length) {
+                return this.getTreeItem(id, ele);
+              } else {
+                return {};
+              }
+            }
+          }
+        } else {
+          return {};
+        }
+      }
+    },
     shuFn(node, data) {
       // debugger
     },

+ 471 - 444
src/views/generatingCapacity/dataAnalysis/angleAnalysis/index.vue

@@ -1,471 +1,498 @@
 <template>
-    <div class="dataAnalysisAngleAna" :class="!theme ? 'themeDark' : 'themeLight'">
-        <div class="dataAnalysisAngleAnaMain">
-            <div class="main_top">
-                <p class="topPsty">浆距角分析</p>
+  <div
+    class="dataAnalysisAngleAna"
+    :class="!theme ? 'themeDark' : 'themeLight'"
+  >
+    <div class="dataAnalysisAngleAnaMain">
+      <div class="main_top">
+        <p class="topPsty">浆距角分析</p>
+      </div>
+      <div class="main">
+        <div class="treeDataMain">
+          <tree-cop
+            :data="treeData"
+            :height="treeHeight"
+            @currentChange="funCurrentChange"
+            @refresh="funGetTree"
+          >
+          </tree-cop>
+        </div>
+        <div class="excelDataMain">
+          <excel-cop
+            :data="excelList"
+            :height="excelHeight"
+            :theme="theme"
+            @excelChange="funExcelChange"
+          >
+          </excel-cop>
+        </div>
+        <div class="tableDataMain">
+          <el-tabs v-model="activeTab">
+            <el-tab-pane label="图表展示" name="1"> </el-tab-pane>
+            <el-tab-pane label="桨距角风速曲线" name="2"> </el-tab-pane>
+            <el-tab-pane label="表格数据" name="3"> </el-tab-pane>
+            <div v-if="activeTab === '3'" :style="{ height: tableHeight }">
+              <table-cop
+                class=""
+                :data="tableData"
+                :column="tableColumn"
+                :theme="theme"
+                :height="tableHeight"
+                tableId="1"
+                :tableName="tableName"
+                :rowstyle="true"
+              ></table-cop>
+            </div>
+            <div v-if="activeTab === '1'" :style="{ height: tableHeight }">
+              <!-- :height="`calc( ${tableHeight})`" -->
+              <CurrentScatterChart
+                ref="chartRef"
+                width="100%"
+                height="75vh"
+                :chartTitle="''"
+                style="margin-top: 3vh"
+                :xAxisData="xAxisData"
+                :yAxisData="{ splitLine: { show: false } }"
+                :seriesData="seriesData"
+                :seriesAllData="seriesAllData"
+                :showLegend="true"
+                :brushSelected="false"
+                :dataSet="dataSet"
+                :theme="theme"
+                :echartsTheme="echartsTheme"
+                @getSelected="funChartSelect"
+              />
             </div>
-            <div class="main">
-                <div class="treeDataMain">
-                    <tree-cop :data="treeData" :height="treeHeight" @currentChange="funCurrentChange"
-                        @refresh="funGetTree">
-                    </tree-cop>
-                </div>
-                <div class="excelDataMain">
-                    <excel-cop :data="excelList" :height="excelHeight" :theme="theme" @excelChange="funExcelChange">
-                    </excel-cop>
-                </div>
-                <div class="tableDataMain">
-                    <el-tabs v-model="activeTab">
-                        <el-tab-pane label="图表展示" name="1">
-                        </el-tab-pane>
-                        <el-tab-pane label="桨距角风速曲线" name="2">
-                        </el-tab-pane>
-                        <el-tab-pane label="表格数据" name="3">
-                        </el-tab-pane>
-                        <div v-if="activeTab === '3'" :style="{ height: tableHeight }">
-                            <table-cop class="" :data="tableData" :column="tableColumn" :theme="theme"
-                                :height="tableHeight" tableId="1" :tableName="tableName" :rowstyle="true"></table-cop>
-                        </div>
-                        <div v-if="activeTab === '1'" :style="{ height: tableHeight }">
-                            <!-- :height="`calc( ${tableHeight})`" -->
-                            <CurrentScatterChart ref="chartRef" width="100%" height="75vh" :chartTitle="''"
-                                style="margin-top:3vh" :xAxisData="xAxisData"
-                                :yAxisData="{ splitLine: { show: false } }" :seriesData="seriesData"
-                                :seriesAllData="seriesAllData" :showLegend="true" :brushSelected="false"
-                                :dataSet="dataSet" :theme="theme" :echartsTheme="echartsTheme"
-                                @getSelected="funChartSelect" />
-                        </div>
-                        <div v-if="activeTab === '2'" :style="{ height: tableHeight }">
-                            <!-- <div id="speedLine" style="width:100%;height:100%"></div> -->
-                            <bar-chart-cop width="100%" height="100%" :theme="theme" :echartsTheme="echartsTheme"
-                                :xAxis="linexAxis" :yAxis="lineyAxis" :series="lineSeries"></bar-chart-cop>
-                        </div>
-                    </el-tabs>
-                </div>
+            <div v-if="activeTab === '2'" :style="{ height: tableHeight }">
+              <!-- <div id="speedLine" style="width:100%;height:100%"></div> -->
+              <bar-chart-cop
+                width="100%"
+                height="100%"
+                :theme="theme"
+                :echartsTheme="echartsTheme"
+                :xAxis="linexAxis"
+                :yAxis="lineyAxis"
+                :series="lineSeries"
+              ></bar-chart-cop>
             </div>
+          </el-tabs>
         </div>
+      </div>
     </div>
+  </div>
 </template>
 <script setup name="prepare">
-    import excelCop from '@/components/generatingCapacityComponent/excel.vue'
-    import treeCop from '@/components/generatingCapacityComponent/tree.vue'
-    import tableCop from '@/components/generatingCapacityComponent/table.vue'
-    import barChartCop from '../spaceAnalysis/components/barChart.vue'
-    import * as echarts from 'echarts'
-    import {
-        ElMessage
-    } from 'element-plus';
-    import {
-        onMounted,
-        ref,
-        reactive,
-        onActivated,
-        watch
-    } from 'vue'
-    import {
-        useStore
-    } from 'vuex';
-    import CurrentScatterChart from './components/current-scatter-chart.vue'
-    import httpRequest from '@/utils/request.js'
-    /**配置参数 */
-    const tableHeight = ref(window.innerHeight - 170 + 'px')
-    const treeHeight = ref(window.innerHeight - 120 + 'px') //tree高度
-    const excelHeight = ref(window.innerHeight - 120 + 'px') //excel高度
-    /**excel 开始 */
-    const excelList = ref([])
-    const speedParams = ref({})
-    const funExcelChange = async (obj) => { //点击excel项时
-        funSubmit({
-            ids: obj.id
-        })
-        tableName.value = obj.name
-        getSpeedLine({
-            ids: obj.id
-        })
-        speedParams.value = {
-            ids: obj.id
+import excelCop from "@/components/generatingCapacityComponent/excel.vue";
+import treeCop from "@/components/generatingCapacityComponent/tree.vue";
+import tableCop from "@/components/generatingCapacityComponent/table.vue";
+import barChartCop from "../spaceAnalysis/components/barChart.vue";
+import * as echarts from "echarts";
+import { ElMessage } from "element-plus";
+import { onMounted, ref, reactive, onActivated, watch } from "vue";
+import { useStore } from "vuex";
+import CurrentScatterChart from "./components/current-scatter-chart.vue";
+import httpRequest from "@/utils/request.js";
+/**配置参数 */
+const tableHeight = ref(window.innerHeight - 170 + "px");
+const treeHeight = ref(window.innerHeight - 120 + "px"); //tree高度
+const excelHeight = ref(window.innerHeight - 120 + "px"); //excel高度
+/**excel 开始 */
+const excelList = ref([]);
+const speedParams = ref({});
+const currentNodeKey = ref("");
+const funExcelChange = async (obj) => {
+  //点击excel项时
+  funSubmit({
+    ids: obj.id,
+  });
+  tableName.value = obj.name;
+  getSpeedLine({
+    ids: obj.id,
+  });
+  speedParams.value = {
+    ids: obj.id,
+  };
+};
+/**tree 开始 */
+const treeData = ref([]);
+const actTreeNode = ref(null); //当前激活的treeNode
+const funRepeatMap = (arr, type) => {
+  return arr.map((o) => {
+    if (o.children) {
+      const findIndex = o.children.findIndex((p) => !!p.type);
+      if (findIndex !== -1) {
+        o.childs = o.children;
+        o.children = [];
+        if (!actTreeNode.value && type === "prepare") {
+          //判断当且仅有process获取tree时 赋值
+          actTreeNode.value = o;
+          
         }
+      }
     }
-    /**tree 开始 */
-    const treeData = ref([])
-    const actTreeNode = ref(null) //当前激活的treeNode
-    const funRepeatMap = (arr, type) => {
-        return arr.map(o => {
-            if (o.children) {
-                const findIndex = o.children.findIndex(p => !!p.type)
-                if (findIndex !== -1) {
-                    o.childs = o.children
-                    o.children = []
-                    if (!actTreeNode.value && type === 'prepare') { //判断当且仅有process获取tree时 赋值
-                        actTreeNode.value = o
-                    }
-                }
-            }
-            return {
-                ...o,
-                children: o.children.length ? funRepeatMap(o.children, type) : []
-            }
-        })
+    return {
+      ...o,
+      children: o.children.length ? funRepeatMap(o.children, type) : [],
+    };
+  });
+};
+
+const funGetTree = async () => {
+  const res = await httpRequest.get("/power/prepare/treepitch");
+  treeData.value = funRepeatMap(res.data, "prepare");
+  excelList.value = [];
+  if (actTreeNode.value) {
+    funCurrentChange({
+      current: actTreeNode.value,
+      currentNode: null,
+    });
+    const child = actTreeNode.value.childs[0];
+    const obj = {
+      id: child.id,
+      interval: child.interval,
+      path: child.path,
+      prepareid: child.prepareid,
+      station: child.station,
+      time: child.time,
+      type: child.type,
+      windturbine: child.windturbine,
+      name: child.path.substring(
+        child.path.indexOf(child.station + "_") + (child.station + "_").length
+      ),
+    };
+    funExcelChange(obj);
+  }
+};
+const funCurrentChange = ({ current, currentNode }) => {
+  if (current.childs) {
+    excelList.value = current.childs.map((o) => {
+      return {
+        id: o.id,
+        interval: o.interval,
+        path: o.path,
+        prepareid: o.prepareid,
+        station: o.station,
+        time: o.time,
+        type: o.type,
+        windturbine: o.windturbine,
+        name: o.path.substring(
+          o.path.indexOf(o.station + "_") + (o.station + "_").length
+        ),
+      };
+    });
+    if (excelList.value.length > 0) {
+      funExcelChange(excelList.value[0]);
     }
-    const funGetTree = async () => {
-        const res = await httpRequest.get("/power/prepare/tree")
-        treeData.value = funRepeatMap(res.data, 'prepare')
-        excelList.value = []
-        if (actTreeNode.value) {
-            funCurrentChange({
-                current: actTreeNode.value,
-                currentNode: null
-            })
-            const child = actTreeNode.value.childs[0]
-            const obj = {
-                id: child.id,
-                interval: child.interval,
-                path: child.path,
-                prepareid: child.prepareid,
-                station: child.station,
-                time: child.time,
-                type: child.type,
-                windturbine: child.windturbine,
-                name: child.path.substring(child.path.indexOf(child.station + '_') + (child.station + '_')
-                    .length)
-            }
-            funExcelChange(obj)
-        }
-    }
-    const funCurrentChange = ({
-        current,
-        currentNode
-    }) => {
-        if (current.childs) {
-            excelList.value = current.childs.map(o => {
-                return {
-                    id: o.id,
-                    interval: o.interval,
-                    path: o.path,
-                    prepareid: o.prepareid,
-                    station: o.station,
-                    time: o.time,
-                    type: o.type,
-                    windturbine: o.windturbine,
-                    name: o.path.substring(o.path.indexOf(o.station + '_') + (o.station + '_').length)
-                }
-            })
-            if (excelList.value.length > 0) {
-                funExcelChange(excelList.value[0])
-            }
-        } else {
-            excelList.value = []
-        }
+  } else {
+    excelList.value = [];
+  }
+};
+/**table 开始 */
+const tableShowId = ref("");
+const tableName = ref("");
+const tableColumn = ref([
+  {
+    prop: "time",
+    label: "时间",
+  },
+  {
+    prop: "yp1",
+    label: "叶片一",
+  },
+  {
+    prop: "yp2",
+    label: "叶片二",
+  },
+  {
+    prop: "yp3",
+    label: "叶片三",
+  },
+]);
+const tableLoading = ref(false);
+const tableData = ref([]);
+/**tab  */
+const activeTab = ref("1");
+/**chart Data */
+const xAxisData = ref([]);
+const chartRef = ref(); //chart 的ref
+const seriesData = ref([]);
+const seriesAllData = ref([]);
+const dataSet = ref("");
+const funChartSelect = async (batch) => {
+  return false;
+};
+/**submit */
+const funSubmit = async (params) => {
+  const res = await httpRequest.get("/blade/angle", {
+    params: params,
+  });
+  if (res.code !== 200) {
+    return false;
+  }
+
+  let exTime = [];
+  let yp1 = [],
+    yp2 = [],
+    yp3 = [],
+    speed = [];
+  res.data.bw.forEach((it) => {
+    exTime.push(it.time);
+    yp1.push(it.yp1);
+    yp2.push(it.yp2);
+    yp3.push(it.yp3);
+    speed.push(it.speed);
+  });
+  tableData.value = res.data.bw;
+  seriesAllData.value = res.data.bw;
+  // res.data.bw.forEach(it => {
+  //     yp2.push(it.yp2)
+  // })
+  xAxisData.value = exTime;
+
+  seriesData.value = [
+    // {
+    //     name: "并网(绿)/停机(红)",
+    //     type: "line",
+    //     symbol: "line", //设定为实心点
+    //     symbolSize: 0, //设定实心点的大小
+    //     smooth: false, //这个是把线变成曲线
+    //     data: yp1,
+    //     xAxisIndex: 0,
+    // },
+    {
+      name: "叶片1",
+      type: "line",
+      symbol: "line", //设定为实心点
+      symbolSize: 0, //设定实心点的大小
+      smooth: false, //这个是把线变成曲线
+      data: yp1,
+      xAxisIndex: 0,
+    },
+    {
+      name: "叶片2",
+      type: "line",
+      symbol: "line", //设定为实心点
+      symbolSize: 0, //设定实心点的大小
+      smooth: false, //这个是把线变成曲线
+      data: yp2,
+      xAxisIndex: 0,
+    },
+    {
+      name: "叶片3",
+      type: "line",
+      symbol: "line", //设定为实心点
+      symbolSize: 0, //设定实心点的大小
+      smooth: false, //这个是把线变成曲线
+      data: yp3,
+      xAxisIndex: 0,
+    },
+    {
+      name: "风速",
+      type: "line",
+      yAxisIndex: 1,
+      symbol: "line", //设定为实心点
+      symbolSize: 0, //设定实心点的大小
+      smooth: false, //这个是把线变成曲线
+      data: speed,
+      xAxisIndex: 0,
+    },
+  ];
+};
+const linexAxis = reactive({
+  type: "category",
+  name: "风速",
+  data: [],
+});
+const lineyAxis = reactive({
+  type: "value",
+  name: "度",
+  splitLine: {
+    show: false,
+  },
+  axisTick: {
+    show: true,
+  },
+  axisLine: {
+    onZero: false,
+  },
+});
+const lineSeries = reactive([
+  {
+    name: "桨距角风速曲线",
+    type: "line",
+    data: [],
+    symbol: "line", //设定为实心点
+    symbolSize: 0, //设定实心点的大小
+  },
+]);
+const getSpeedLine = async (params) => {
+  const speedRes = await httpRequest.get("/blade/curve", {
+    params: params,
+  });
+  if (speedRes.code === 200) {
+    if (speedRes.data) {
+      let xAsis = [];
+      let series = [];
+      for (const item in speedRes.data) {
+        xAsis.push(item);
+        series.push(speedRes.data[item]);
+      }
+      linexAxis.data = xAsis;
+      lineSeries[0].data = series;
     }
-    /**table 开始 */
-    const tableShowId = ref('')
-    const tableName = ref('')
-    const tableColumn = ref([{
-            prop: 'time',
-            label: '时间'
-        },
-        {
-            prop: 'yp1',
-            label: '叶片一'
-        },
-        {
-            prop: 'yp2',
-            label: '叶片二'
-        },
-        {
-            prop: 'yp3',
-            label: '叶片三'
-        }
-    ])
-    const tableLoading = ref(false)
-    const tableData = ref([])
-    /**tab  */
-    const activeTab = ref('1')
-    /**chart Data */
-    const xAxisData = ref([])
-    const chartRef = ref() //chart 的ref
-    const seriesData = ref([])
-    const seriesAllData = ref([])
-    const dataSet = ref('')
-    const funChartSelect = async (batch) => {
-        return false
-    }
-    /**submit */
-    const funSubmit = async (params) => {
-        const res = await httpRequest.get('/blade/angle', {
-            params: params
-        })
-        if (res.code !== 200) {
-            return false
-        }
-
-        let exTime = []
-        let yp1 = [],
-            yp2 = [],
-            yp3 = [],
-            speed = []
-        res.data.bw.forEach(it => {
-            exTime.push(it.time)
-            yp1.push(it.yp1)
-            yp2.push(it.yp2)
-            yp3.push(it.yp3)
-            speed.push(it.speed)
-        })
-        tableData.value = res.data.bw
-        seriesAllData.value = res.data.bw
-        // res.data.bw.forEach(it => {
-        //     yp2.push(it.yp2)
-        // })
-        xAxisData.value = exTime
-
-        seriesData.value = [
-            // {
-            //     name: "并网(绿)/停机(红)",
-            //     type: "line",
-            //     symbol: "line", //设定为实心点
-            //     symbolSize: 0, //设定实心点的大小
-            //     smooth: false, //这个是把线变成曲线
-            //     data: yp1,
-            //     xAxisIndex: 0,
-            // },
-            {
-                name: "叶片1",
-                type: "line",
-                symbol: "line", //设定为实心点
-                symbolSize: 0, //设定实心点的大小
-                smooth: false, //这个是把线变成曲线
-                data: yp1,
-                xAxisIndex: 0,
-            },
-            {
-                name: "叶片2",
-                type: "line",
-                symbol: "line", //设定为实心点
-                symbolSize: 0, //设定实心点的大小
-                smooth: false, //这个是把线变成曲线
-                data: yp2,
-                xAxisIndex: 0,
-            },
-            {
-                name: "叶片3",
-                type: "line",
-                symbol: "line", //设定为实心点
-                symbolSize: 0, //设定实心点的大小
-                smooth: false, //这个是把线变成曲线
-                data: yp3,
-                xAxisIndex: 0,
-            },
-            {
-                name: "风速",
-                type: "line",
-                yAxisIndex: 1,
-                symbol: "line", //设定为实心点
-                symbolSize: 0, //设定实心点的大小
-                smooth: false, //这个是把线变成曲线
-                data: speed,
-                xAxisIndex: 0,
-            }
-        ]
-    }
-    const linexAxis = reactive({
-        type: 'category',
-        name: '风速',
-        data: []
-    })
-    const lineyAxis = reactive({
-        type: 'value',
-        name: '度',
-        splitLine: {
-            show: false
-        },
-        axisTick: {
-            show: true
-        },
-        axisLine: {
-            onZero: false
-        }
-    })
-    const lineSeries = reactive([{
-        name: "桨距角风速曲线",
-        type: "line",
-        data: [],
-        symbol: "line", //设定为实心点
-        symbolSize: 0, //设定实心点的大小
-    }])
-    const getSpeedLine = async (params) => {
-        const speedRes = await httpRequest.get('/blade/curve', {
-            params: params
-        })
-        if (speedRes.code === 200) {
-            if (speedRes.data) {
-                let xAsis = []
-                let series = []
-                for (const item in speedRes.data) {
-                    xAsis.push(item)
-                    series.push(speedRes.data[item])
-                }
-                linexAxis.data = xAsis
-                lineSeries[0].data = series
-            }
-        }
-    }
-    /**created */
-    // funGetTree()
-    const theme = ref(null)
-    const echartsTheme = ref('')
-    const store = useStore()
-    watch(() => store.state.theme, (newVal, oldVal) => {
-        theme.value = newVal
-        echartsTheme.value = !newVal ? 'dark' : ''
-        funGetTree()
-    }, {
-        deep: true
-    })
-    /**mounted */
-    onMounted(() => {
-        funGetTree()
-        theme.value = store.state.theme
-        echartsTheme.value = !theme.value ? 'dark' : ''
-        tableHeight.value = window.innerHeight - 170 + 'px'
-        excelHeight.value = window.innerHeight - 120 + 'px'
-        treeHeight.value = window.innerHeight - 120 + 'px'
-        window.addEventListener('resize', () => {
-            tableHeight.value = window.innerHeight - 170 + 'px'
-            excelHeight.value = window.innerHeight - 120 + 'px'
-            treeHeight.value = window.innerHeight - 120 + 'px'
-        })
-    })
-    /**activated */
-    onActivated(() => {
-        // funGetTree()
-        // funSubmit()
-    })
+  }
+};
+/**created */
+// funGetTree()
+const theme = ref(null);
+const echartsTheme = ref("");
+const store = useStore();
+watch(
+  () => store.state.theme,
+  (newVal, oldVal) => {
+    theme.value = newVal;
+    echartsTheme.value = !newVal ? "dark" : "";
+    funGetTree();
+  },
+  {
+    deep: true,
+  }
+);
+/**mounted */
+onMounted(() => {
+  funGetTree();
+  theme.value = store.state.theme;
+  echartsTheme.value = !theme.value ? "dark" : "";
+  tableHeight.value = window.innerHeight - 170 + "px";
+  excelHeight.value = window.innerHeight - 120 + "px";
+  treeHeight.value = window.innerHeight - 120 + "px";
+  window.addEventListener("resize", () => {
+    tableHeight.value = window.innerHeight - 170 + "px";
+    excelHeight.value = window.innerHeight - 120 + "px";
+    treeHeight.value = window.innerHeight - 120 + "px";
+  });
+});
+/**activated */
+onActivated(() => {
+  // funGetTree()
+  // funSubmit()
+});
 </script>
 <style lang="less" scoped>
-    .dataAnalysisAngleAna {
-        height: 100%;
-
-        .dataAnalysisAngleAnaMain {
-            height: 100%;
-
-            .main_top {
-                height: 40px;
-                display: flex;
-                align-items: center;
-
-                .topPsty {
-                    position: relative;
-                    top: 5px;
-                    padding: 7px 20px;
-                    font-size: 12px;
-                    font-weight: 600;
-                    margin-left: 10px;
-                    border-radius: 3px;
-                }
-            }
-
-            .main {
-                display: flex;
-                width: 100%;
-
-                .treeDataMain,
-                .excelDataMain,
-                .tableDataMain {
-                    border-radius: 10px;
-                }
-
-                .treeDataMain {
-                    margin-right: 10px;
-                    padding: 10px 0 10px 10px;
-                    width: calc(19% - 20px);
-
-                }
-
-                .excelDataMain {
-                    margin-right: 10px;
-                    padding: 10px 0 10px 10px;
-                    width: calc(15% - 20px);
-                }
-
-                .tableDataMain {
-                    padding: 10px;
-                    width: calc(66% - 20px);
-                    position: relative;
-
-                    .butten_com {
-                        position: absolute;
-                        right: 20px;
-                        z-index: 111111;
-                    }
-                }
-
-            }
-        }
-
-
+.dataAnalysisAngleAna {
+  height: 100%;
+
+  .dataAnalysisAngleAnaMain {
+    height: 100%;
+
+    .main_top {
+      height: 40px;
+      display: flex;
+      align-items: center;
+
+      .topPsty {
+        position: relative;
+        top: 5px;
+        padding: 7px 20px;
+        font-size: 12px;
+        font-weight: 600;
+        margin-left: 10px;
+        border-radius: 3px;
+      }
     }
 
-    .themeDark {
-
-        .dataAnalysisAngleAnaMain {
-            .main_top {
-
-                .topPsty {
-                    color: #1C99FF;
-                    background: #1E2126;
-                }
-            }
-
-            .main {
-                background: #13171e;
-
-                .treeDataMain {
-                    background: transparent;
-                }
-
-                .excelDataMain {
-                    background: #313233;
-                }
-
-                .tableDataMain {
-                    margin-top: 5px;
-                    background: #212223;
-                }
-            }
-
+    .main {
+      display: flex;
+      width: 100%;
+
+      .treeDataMain,
+      .excelDataMain,
+      .tableDataMain {
+        border-radius: 10px;
+      }
+
+      .treeDataMain {
+        margin-right: 10px;
+        padding: 10px 0 10px 10px;
+        width: calc(19% - 20px);
+      }
+
+      .excelDataMain {
+        margin-right: 10px;
+        padding: 10px 0 10px 10px;
+        width: calc(15% - 20px);
+      }
+
+      .tableDataMain {
+        padding: 10px;
+        width: calc(66% - 20px);
+        position: relative;
+
+        .butten_com {
+          position: absolute;
+          right: 20px;
+          z-index: 111111;
         }
-
+      }
+    }
+  }
+}
+
+.themeDark {
+  .dataAnalysisAngleAnaMain {
+    .main_top {
+      .topPsty {
+        color: #1c99ff;
+        background: #1e2126;
+      }
     }
 
-    .themeLight {
-        padding: 0;
+    .main {
+      background: #13171e;
 
-        .dataAnalysisAngleAnaMain {
-            .main_top {
+      .treeDataMain {
+        background: transparent;
+      }
 
-                .topPsty {
-                    color: #2778FF;
-                    background: #FFFFFF;
-                }
-            }
+      .excelDataMain {
+        background: #313233;
+      }
 
-            .main {
-                background: #E6E8F2;
+      .tableDataMain {
+        margin-top: 5px;
+        background: #212223;
+      }
+    }
+  }
+}
+
+.themeLight {
+  padding: 0;
+
+  .dataAnalysisAngleAnaMain {
+    .main_top {
+      .topPsty {
+        color: #2778ff;
+        background: #ffffff;
+      }
+    }
 
-                .treeDataMain {
-                    background: transparent;
-                }
+    .main {
+      background: #e6e8f2;
 
-                .excelDataMain {
-                    background: #F4F6FB;
-                }
+      .treeDataMain {
+        background: transparent;
+      }
 
-                .tableDataMain {
-                    background: #fff;
-                    margin-top: 5px;
-                }
-            }
-        }
+      .excelDataMain {
+        background: #f4f6fb;
+      }
 
+      .tableDataMain {
+        background: #fff;
+        margin-top: 5px;
+      }
     }
+  }
+}
 </style>

Failā izmaiņas netiks attēlotas, jo tās ir par lielu
+ 953 - 833
src/views/generatingCapacity/dataAnalysis/combine/index.vue


Failā izmaiņas netiks attēlotas, jo tās ir par lielu
+ 943 - 775
src/views/generatingCapacity/dataAnalysis/lineAnalysis/index.vue


Failā izmaiņas netiks attēlotas, jo tās ir par lielu
+ 1237 - 1015
src/views/generatingCapacity/dataAnalysis/rateAnalysis/index.vue


+ 345 - 331
src/views/generatingCapacity/dataFilter/prepare/index.vue

@@ -1,356 +1,370 @@
 <template>
-    <div class="dataFilePrepare" :class="!theme ? 'themeDark' : 'themeLight'">
-        <div class="dataFilePrepareMain">
-            <div class="main_top">
-                <p class="topPsty">风电数据准备</p>
-                <search-cop @submit="funSubmit">
-                </search-cop>
-            </div>
-            <div class="main">
-                <div class="treeDataMain">
-                    <tree-cop :data="treeData" :height="treeHeight" @currentChange="funCurrentChange"
-                        @refresh="funGetTree">
-                    </tree-cop>
-                </div>
-                <div class="excelDataMain">
-                    <excel-cop :data="excelList" :height="excelHeight" @excelChange="funExcelChange" :theme="theme">
-                    </excel-cop>
-                </div>
-                <div class="tableDataMain">
-                    <table-cop class="" :data="tableData" :column="tableColumn" :loading="tableLoading" :theme="theme"
-                        :height="tableHeight" :tableId="tableShowId" :tableName="tableName" @export="funExport">
-                    </table-cop>
-                </div>
-            </div>
+  <div class="dataFilePrepare" :class="!theme ? 'themeDark' : 'themeLight'">
+    <div class="dataFilePrepareMain">
+      <div class="main_top">
+        <p class="topPsty">风电数据准备</p>
+        <search-cop @submit="funSubmit"> </search-cop>
+      </div>
+      <div class="main">
+        <div class="treeDataMain">
+          <tree-cop
+            :data="treeData"
+            :height="treeHeight"
+            :currentNodeKey="currentNodeKey"
+            @currentChange="funCurrentChange"
+            @refresh="funGetTree"
+          >
+          </tree-cop>
         </div>
-
-        <el-progress :percentage="progress" v-if="progress" :indeterminate="false" color="rgb(19,206,102)"
-            :stroke-width="4" :show-text="false" />
+        <div class="excelDataMain">
+          <excel-cop
+            :data="excelList"
+            :height="excelHeight"
+            @excelChange="funExcelChange"
+            :theme="theme"
+          >
+          </excel-cop>
+        </div>
+        <div class="tableDataMain">
+          <table-cop
+            class=""
+            :data="tableData"
+            :column="tableColumn"
+            :loading="tableLoading"
+            :theme="theme"
+            :height="tableHeight"
+            :tableId="tableShowId"
+            :tableName="tableName"
+            @export="funExport"
+          >
+          </table-cop>
+        </div>
+      </div>
     </div>
+
+    <el-progress
+      :percentage="progress"
+      v-if="progress"
+      :indeterminate="false"
+      color="rgb(19,206,102)"
+      :stroke-width="4"
+      :show-text="false"
+    />
+  </div>
 </template>
 <script setup name="prepare">
-    import searchCop from './search.vue'
-    import excelCop from '@/components/generatingCapacityComponent/excel.vue'
-    import treeCop from '@/components/generatingCapacityComponent/tree.vue'
-    import tableCop from '@/components/generatingCapacityComponent/table.vue'
-    import {
-        ElMessage
-    } from 'element-plus';
-    import {
-        onMounted,
-        ref,
-        onActivated,
-        watch
-    } from 'vue'
-    import httpRequest from '@/utils/request.js'
-    import {
-        useStore
-    } from 'vuex';
-    import {
-        apiGetpowerpreparetree
-    } from '@/api/gengra'
-    // import {
-    //     baseURL,
-    //     socketURL
-    // } from '@/api/axios.js'
-
-    /**配置参数 */
-    const treeHeight = ref(window.innerHeight - 115 + 'px') //tree高度
-    const excelHeight = ref(window.innerHeight - 115 + 'px') //excel高度
-    const tableHeight = ref(window.innerHeight - 115 + 'px')
-    /**excel 开始 */
-    const excelList = ref([])
-    const funExcelChange = async (obj) => { //点击excel项时
-        tableShowId.value = obj.id
-        tableName.value = obj.name
-        tableLoading.value = true
-        const res = await httpRequest.get('/power/prepare/show', {
-            params: {
-                id: obj.id
-            }
-        })
-        if (res.code === 200) {
-            tableColumn.value = res.data.title.map(o => {
-                return {
-                    prop: o.key,
-                    label: o.des,
-                    width: o.des === '时间' ? 100 : 80,
-                }
-            })
-            tableData.value = res.data.data
-            tableLoading.value = false
-        } else {
-            tableLoading.value = false
+import searchCop from "./search.vue";
+import excelCop from "@/components/generatingCapacityComponent/excel.vue";
+import treeCop from "@/components/generatingCapacityComponent/tree.vue";
+import tableCop from "@/components/generatingCapacityComponent/table.vue";
+import { ElMessage } from "element-plus";
+import { onMounted, ref, onActivated, watch } from "vue";
+import httpRequest from "@/utils/request.js";
+import { useStore } from "vuex";
+import { apiGetpowerpreparetree } from "@/api/gengra";
+// import {
+//     baseURL,
+//     socketURL
+// } from '@/api/axios.js'
+
+/**配置参数 */
+const treeHeight = ref(window.innerHeight - 115 + "px"); //tree高度
+const excelHeight = ref(window.innerHeight - 115 + "px"); //excel高度
+const tableHeight = ref(window.innerHeight - 115 + "px");
+/**excel 开始 */
+const excelList = ref([]);
+const currentNodeKey = ref("");
+const funExcelChange = async (obj) => {
+  //点击excel项时
+  tableShowId.value = obj.id;
+  tableName.value = obj.name;
+  tableLoading.value = true;
+
+  const res = await httpRequest.get("/power/prepare/show", {
+    params: {
+      id: obj.id,
+    },
+  });
+  if (res.code === 200) {
+    tableColumn.value = res.data.title.map((o) => {
+      return {
+        prop: o.key,
+        label: o.des,
+        width: o.des === "时间" ? 100 : 80,
+      };
+    });
+    tableData.value = res.data.data;
+    tableLoading.value = false;
+  } else {
+    tableLoading.value = false;
+  }
+};
+/**tree 开始 */
+const treeData = ref([]);
+const actTreeNode = ref(null); //当前激活的treeNode
+const funRepeatMap = (arr) => {
+  return arr.map((o) => {
+    if (o.children) {
+      const findIndex = o.children.findIndex((p) => !!p.type);
+      if (findIndex !== -1) {
+        o.childs = o.children;
+        o.children = [];
+        if (!actTreeNode.value) {
+          //判断当且仅有process获取tree时 赋值
+          actTreeNode.value = o;
         }
+      }
     }
-    /**tree 开始 */
-    const treeData = ref([])
-    const actTreeNode = ref(null) //当前激活的treeNode
-    const funRepeatMap = (arr) => {
-        return arr.map(o => {
-            if (o.children) {
-                const findIndex = o.children.findIndex(p => !!p.type)
-                if (findIndex !== -1) {
-                    o.childs = o.children
-                    o.children = []
-                    if (!actTreeNode.value) { //判断当且仅有process获取tree时 赋值
-                        actTreeNode.value = o
-                    }
-                }
-            }
-            return {
-                ...o,
-                children: o.children.length ? funRepeatMap(o.children) : []
-            }
-        })
+    return {
+      ...o,
+      children: o.children.length ? funRepeatMap(o.children) : [],
+    };
+  });
+};
+const funGetTree = async () => {
+  actTreeNode.value = null;
+  // const res = await httpRequest.get("/power/prepare/tree")
+  const res = await apiGetpowerpreparetree();
+  treeData.value = funRepeatMap(res.data);
+  excelList.value = [];
+  if (actTreeNode.value) {
+    funCurrentChange({
+      current: actTreeNode.value,
+      currentNode: null,
+    });
+    const child = actTreeNode.value.childs[0];
+    const obj = {
+      id: child.id,
+      interval: child.interval,
+      path: child.path,
+      prepareid: child.prepareid,
+      station: child.station,
+      time: child.time,
+      type: child.type,
+      windturbine: child.windturbine,
+      name: child.path.substring(
+        child.path.indexOf(child.station + "_") + (child.station + "_").length
+      ),
+    };
+    currentNodeKey.value = actTreeNode.value?.id || "";
+    funExcelChange(obj);
+  }
+};
+const funCurrentChange = ({ current, currentNode }) => {
+  if (current.childs) {
+    excelList.value = current.childs.map((o) => {
+      return {
+        id: o.id,
+        interval: o.interval,
+        path: o.path,
+        prepareid: o.prepareid,
+        station: o.station,
+        time: o.time,
+        type: o.type,
+        windturbine: o.windturbine,
+        isCheck: false,
+        name: o.path.substring(
+          o.path.indexOf(o.station + "_") + (o.station + "_").length
+        ),
+      };
+    });
+    if (excelList.value.length > 0) {
+      funExcelChange(excelList.value[0]);
     }
-    const funGetTree = async () => {
-        actTreeNode.value = null
-        // const res = await httpRequest.get("/power/prepare/tree")
-        const res = await apiGetpowerpreparetree()
-        treeData.value = funRepeatMap(res.data)
-        excelList.value = []
-        if (actTreeNode.value) {
-            funCurrentChange({
-                current: actTreeNode.value,
-                currentNode: null
-            })
-            const child = actTreeNode.value.childs[0]
-            const obj = {
-                id: child.id,
-                interval: child.interval,
-                path: child.path,
-                prepareid: child.prepareid,
-                station: child.station,
-                time: child.time,
-                type: child.type,
-                windturbine: child.windturbine,
-                name: child.path.substring(child.path.indexOf(child.station + '_') + (child.station + '_')
-                    .length)
-            }
-            funExcelChange(obj)
-        }
+  } else {
+    excelList.value = [];
+  }
+};
+/**table 开始 */
+const tableShowId = ref("");
+const tableName = ref("");
+const tableColumn = ref([]);
+const tableLoading = ref(false);
+const tableData = ref([]);
+const funExport = async () => {
+  const a = document.createElement("a");
+  // a.href = baseURL + '/power/prepare/download?id=' + tableShowId.value
+  a.href = "/power/prepare/download?id=" + tableShowId.value;
+  a.download = "";
+  a.click();
+};
+/**submit */
+const progress = ref(0);
+const funWebSocket = () => {
+  // const webSocket = new WebSocket(`${socketURL}/ws/powerfitting/admin`)
+  const webSocket = new WebSocket(
+    `ws://10.81.3.155:9002/ws/powerfitting/admin`
+  );
+  webSocket.onerror = () =>
+    setTimeout(() => {
+      funWebSocket();
+    }, 2000);
+
+  webSocket.onmessage = (event) => {
+    const message = JSON.parse(event.data);
+    if (message.code === 200) {
+      progress.value = Number(message.data) * 100;
+      if (progress.value === 100) {
+        ElMessage.success("数据加载完成");
+        funGetTree();
+        progress.value = 0;
+      }
     }
-    const funCurrentChange = ({
-        current,
-        currentNode
-    }) => {
-        if (current.childs) {
-            excelList.value = current.childs.map(o => {
-                return {
-                    id: o.id,
-                    interval: o.interval,
-                    path: o.path,
-                    prepareid: o.prepareid,
-                    station: o.station,
-                    time: o.time,
-                    type: o.type,
-                    windturbine: o.windturbine,
-                    isCheck: false,
-                    name: o.path.substring(o.path.indexOf(o.station + '_') + (o.station + '_').length)
-                }
-            })
-            if (excelList.value.length > 0) {
-                funExcelChange(excelList.value[0])
-            }
-        } else {
-            excelList.value = []
-        }
-    }
-    /**table 开始 */
-    const tableShowId = ref('')
-    const tableName = ref('')
-    const tableColumn = ref([])
-    const tableLoading = ref(false)
-    const tableData = ref([])
-    const funExport = async () => {
-        const a = document.createElement('a')
-        // a.href = baseURL + '/power/prepare/download?id=' + tableShowId.value
-        a.href = '/power/prepare/download?id=' + tableShowId.value
-        a.download = ''
-        a.click()
-    }
-    /**submit */
-    const progress = ref(0)
-    const funWebSocket = () => {
-        // const webSocket = new WebSocket(`${socketURL}/ws/powerfitting/admin`)
-        const webSocket = new WebSocket(`ws://10.81.3.155:9002/ws/powerfitting/admin`)
-        webSocket.onerror = () => setTimeout(() => {
-            funWebSocket()
-        }, 2000)
-
-        webSocket.onmessage = (event) => {
-            const message = JSON.parse(event.data)
-            if (message.code === 200) {
-                progress.value = Number(message.data) * 100
-                if (progress.value === 100) {
-                    ElMessage.success('数据加载完成')
-                    funGetTree()
-                    progress.value = 0
-                }
-            }
-        }
-    }
-    const funSubmit = async (params) => {
-        const res = await httpRequest.get('/power/prepare/data', {
-            params: params
-        })
-        if (res.code === 200) {
-            ElMessage.success(res.msg)
-
-        }
-    }
-    /**created */
-    // funGetTree()
-    const theme = ref(null)
-    const store = useStore()
-    watch(() => store.state.theme, (newVal, oldVal) => {
-        theme.value = newVal
-        // funWebSocket()
-        funGetTree()
-    }, {
-        deep: true
-    })
-    /**mounted */
-    onMounted(() => {
-        // funWebSocket()
-        funGetTree()
-        theme.value = store.state.theme
-        tableHeight.value = window.innerHeight - 115 + 'px'
-        excelHeight.value = window.innerHeight - 115 + 'px'
-        treeHeight.value = window.innerHeight - 115 + 'px'
-        window.addEventListener('resize', () => {
-            tableHeight.value = window.innerHeight - 115 + 'px'
-            excelHeight.value = window.innerHeight - 115 + 'px'
-            treeHeight.value = window.innerHeight - 115 + 'px'
-        })
-    })
-    /**activated */
-    // onActivated(() => {
-    // 	funGetTree()
-    // })
+  };
+};
+const funSubmit = async (params) => {
+  const res = await httpRequest.get("/power/prepare/data", {
+    params: params,
+  });
+  if (res.code === 200) {
+    ElMessage.success(res.msg);
+  }
+};
+/**created */
+// funGetTree()
+const theme = ref(null);
+const store = useStore();
+watch(
+  () => store.state.theme,
+  (newVal, oldVal) => {
+    theme.value = newVal;
+    // funWebSocket()
+    funGetTree();
+  },
+  {
+    deep: true,
+  }
+);
+/**mounted */
+onMounted(() => {
+  // funWebSocket()
+  funGetTree();
+  theme.value = store.state.theme;
+  tableHeight.value = window.innerHeight - 115 + "px";
+  excelHeight.value = window.innerHeight - 115 + "px";
+  treeHeight.value = window.innerHeight - 115 + "px";
+  window.addEventListener("resize", () => {
+    tableHeight.value = window.innerHeight - 115 + "px";
+    excelHeight.value = window.innerHeight - 115 + "px";
+    treeHeight.value = window.innerHeight - 115 + "px";
+  });
+});
+/**activated */
+// onActivated(() => {
+// 	funGetTree()
+// })
 </script>
 
 <style lang="less">
-    .dataFilePrepare {
-        height: 100%;
-
-        .dataFilePrepareMain {
-            height: 100%;
-
-            .main_top {
-                height: 40px;
-                display: flex;
-                align-items: center;
-
-                .topPsty {
-                    position: relative;
-                    top: 5px;
-                    padding: 7px 20px;
-                    font-size: 12px;
-                    font-weight: 600;
-                    margin-left: 10px;
-                    border-radius: 3px;
-                }
-            }
-
-            .main {
-                display: flex;
-                // justify-content: space-between;
-                // width: calc(100% - 50px);
-                width: 100%;
-
-                .treeDataMain,
-                .excelDataMain,
-                .tableDataMain {
-                    border-radius: 10px;
-                }
-
-                .treeDataMain {
-                    margin-right: 10px;
-                    padding: 10px 0 10px 10px;
-                    width: calc(19% - 20px);
-
-                }
-
-                .excelDataMain {
-                    margin-right: 10px;
-                    padding: 10px 0 10px 10px;
-                    width: calc(15% - 20px);
-                }
-
-                .tableDataMain {
-                    padding: 10px;
-                    width: calc(66% - 20px);
-                }
-
-            }
-        }
-
+.dataFilePrepare {
+  height: 100%;
+
+  .dataFilePrepareMain {
+    height: 100%;
+
+    .main_top {
+      height: 40px;
+      display: flex;
+      align-items: center;
+
+      .topPsty {
+        position: relative;
+        top: 5px;
+        padding: 7px 20px;
+        font-size: 12px;
+        font-weight: 600;
+        margin-left: 10px;
+        border-radius: 3px;
+      }
     }
 
-    .themeDark {
-
-        .dataFilePrepareMain {
-            .main_top {
-
-                .topPsty {
-                    color: #1C99FF;
-                    background: #1E2126;
-                }
-            }
-
-            .main {
-                background: #13171e;
-
-                .treeDataMain {
-                    background: transparent;
-                }
-
-                .excelDataMain {
-                    background: #313233;
-                }
-
-                .tableDataMain {
-                    margin-top: 5px;
-                    background: #212223;
-                }
-            }
-
-        }
-
-
+    .main {
+      display: flex;
+      // justify-content: space-between;
+      // width: calc(100% - 50px);
+      width: 100%;
+
+      .treeDataMain,
+      .excelDataMain,
+      .tableDataMain {
+        border-radius: 10px;
+      }
+
+      .treeDataMain {
+        margin-right: 10px;
+        padding: 10px 0 10px 10px;
+        width: calc(19% - 20px);
+      }
+
+      .excelDataMain {
+        margin-right: 10px;
+        padding: 10px 0 10px 10px;
+        width: calc(15% - 20px);
+      }
+
+      .tableDataMain {
+        padding: 10px;
+        width: calc(66% - 20px);
+      }
+    }
+  }
+}
+
+.themeDark {
+  .dataFilePrepareMain {
+    .main_top {
+      .topPsty {
+        color: #1c99ff;
+        background: #1e2126;
+      }
     }
 
-    .themeLight {
-        padding: 0;
+    .main {
+      background: #13171e;
 
-        .dataFilePrepareMain {
-            .main_top {
+      .treeDataMain {
+        background: transparent;
+      }
 
-                .topPsty {
-                    color: #2778FF;
-                    background: #FFFFFF;
-                }
-            }
+      .excelDataMain {
+        background: #313233;
+      }
 
-            .main {
-                background: #E6E8F2;
+      .tableDataMain {
+        margin-top: 5px;
+        background: #212223;
+      }
+    }
+  }
+}
+
+.themeLight {
+  padding: 0;
+
+  .dataFilePrepareMain {
+    .main_top {
+      .topPsty {
+        color: #2778ff;
+        background: #ffffff;
+      }
+    }
 
-                .treeDataMain {
-                    background: transparent;
-                }
+    .main {
+      background: #e6e8f2;
 
-                .excelDataMain {
-                    background: #F4F6FB;
-                }
+      .treeDataMain {
+        background: transparent;
+      }
 
-                .tableDataMain {
-                    background: #fff;
-                    margin-top: 5px;
-                }
-            }
-        }
+      .excelDataMain {
+        background: #f4f6fb;
+      }
 
+      .tableDataMain {
+        background: #fff;
+        margin-top: 5px;
+      }
     }
+  }
+}
 </style>

+ 3 - 0
src/views/generatingCapacity/dataFilter/process/index.vue

@@ -19,6 +19,7 @@
           <tree-cop
             :data="processTreeData"
             :height="treeHeight"
+            :currentNodeKey="currentNodeKey"
             @currentChange="
               (treeItem) => {
                 funProcessCurrentChange(treeItem);
@@ -79,6 +80,7 @@ const excelCheckboxShow = ref(false);
 const excelCheckIds = ref([]);
 const excelList = ref([]);
 const xhrId = ref("");
+const currentNodeKey = ref("");
 const funExcelChange = async (obj) => {
   //点击excel项时
   tableShowId.value = obj.id;
@@ -229,6 +231,7 @@ const funGetProcessTree = async () => {
         child.path.indexOf(child.station + "_") + (child.station + "_").length
       ),
     };
+    currentNodeKey.value = actTreeNode.value?.id || "";
     funExcelChange(obj);
   }
 };

+ 1 - 1
src/views/generatingCapacity/report/index.vue

@@ -117,7 +117,7 @@
       <div style="margin-bottom: 20px">
         <p>
           <span class="ml-5" style="width: 500px"
-            >场站: {{ nbdata.name }}</span
+            >场站: {{ nbdata.name }}&nbsp;</span
           >
           <span class="ml-77">风机型号: {{ nbdata.model }}</span>
         </p>

+ 3 - 2
src/views/home/index.vue

@@ -587,8 +587,9 @@
                             let seriesGl = []
                             let seriesSJ = []
                             res.data['72time'].forEach(it => {
-                                let date = it.time.substring(0, it.time.indexOf('T') + 3)
-                                xAxis.push(date)
+                                // let date = it.time.substring(0, it.time.indexOf('T') + 3)
+                                const timeArr=it.time.split("-")
+                                xAxis.push(`${timeArr[1]}-${timeArr[2]}`)
                                 seriesSpeed.push(it.speed)
                                 seriesGl.push(it.gl)
                                 seriesSJ.push(it.sjgl)