rui.jiang vor 10 Monaten
Ursprung
Commit
56dd268f0e
54 geänderte Dateien mit 402 neuen und 450 gelöschten Zeilen
  1. 12 8
      src/views/overview/components/cp/index.vue
  2. 9 5
      src/views/overview/components/cp_trend/index.vue
  3. 8 4
      src/views/overview/components/cp_windspeed/index.vue
  4. 9 7
      src/views/overview/components/data_integrity_minute/index.vue
  5. 9 6
      src/views/overview/components/data_integrity_second/index.vue
  6. 5 1
      src/views/overview/components/fault_all/index.vue
  7. 5 1
      src/views/overview/components/fault_unit/index.vue
  8. 10 10
      src/views/overview/components/filterChart/index.vue
  9. 7 3
      src/views/overview/components/min_pitch/index.vue
  10. 7 3
      src/views/overview/components/pitch_generator_speed/index.vue
  11. 9 5
      src/views/overview/components/pitch_power/index.vue
  12. 7 3
      src/views/overview/components/pitch_tsr_cp/index.vue
  13. 8 4
      src/views/overview/components/power_curve/index.vue
  14. 6 2
      src/views/overview/components/power_scatter/index.vue
  15. 7 3
      src/views/overview/components/power_scatter_2D/index.vue
  16. 5 1
      src/views/overview/components/production_indicator_all/index.vue
  17. 5 1
      src/views/overview/components/production_indicator_unit/index.vue
  18. 8 4
      src/views/overview/components/rated_power_windspeed/index.vue
  19. 8 4
      src/views/overview/components/rated_windspeed/index.vue
  20. 6 2
      src/views/overview/components/speed_power/index.vue
  21. 5 1
      src/views/overview/components/speed_torque/index.vue
  22. 9 5
      src/views/overview/components/temperature_environment/index.vue
  23. 7 3
      src/views/overview/components/temperature_large_components_Winding_tem/index.vue
  24. 7 3
      src/views/overview/components/temperature_large_components_adriven/index.vue
  25. 7 3
      src/views/overview/components/temperature_large_components_hig/index.vue
  26. 7 3
      src/views/overview/components/temperature_large_components_low/index.vue
  27. 7 3
      src/views/overview/components/temperature_large_components_mid/index.vue
  28. 7 3
      src/views/overview/components/temperature_large_components_min/index.vue
  29. 6 2
      src/views/overview/components/temperature_large_components_tem_deviation/index.vue
  30. 7 3
      src/views/overview/components/temperature_large_components_undriven/index.vue
  31. 8 4
      src/views/overview/components/tsr/index.vue
  32. 7 3
      src/views/overview/components/tsr_cp_power/index.vue
  33. 6 2
      src/views/overview/components/tsr_cp_power_scatter/index.vue
  34. 6 2
      src/views/overview/components/tsr_trend/index.vue
  35. 7 3
      src/views/overview/components/tsr_windspeed/index.vue
  36. 5 1
      src/views/overview/components/wind_direction_frequency/index.vue
  37. 9 5
      src/views/overview/components/wind_speed/index.vue
  38. 5 1
      src/views/overview/components/wind_speed_frequency/index.vue
  39. 12 4
      src/views/overview/components/yaw_error/index.vue
  40. 8 3
      src/views/overview/components/yaw_error_density/index.vue
  41. 47 1
      src/views/overview/index.vue
  42. 2 2
      src/views/performance/components/chartsCom/BarChart.vue
  43. 2 151
      src/views/performance/components/chartsCom/BoxLineCharts.vue
  44. 3 3
      src/views/performance/components/chartsCom/BoxMarkersCharts.vue
  45. 3 3
      src/views/performance/components/chartsCom/GeneratorTemperature.vue
  46. 3 4
      src/views/performance/components/chartsCom/HeatmapCharts.vue
  47. 2 2
      src/views/performance/components/chartsCom/NoColourBandTwoDMarkerChart.vue
  48. 16 4
      src/views/performance/components/chartsCom/TwoDMarkersChart.vue
  49. 5 2
      src/views/performance/components/chartsCom/YewErrorBarChart.vue
  50. 2 2
      src/views/performance/components/chartsCom/lineAndChildLine.vue
  51. 3 3
      src/views/performance/components/chartsCom/lineChartsFen.vue
  52. 14 134
      src/views/performance/components/chartsCom/powerMarkers2DCharts.vue
  53. 5 2
      src/views/performance/components/chartsCom/yawErrorBarSum.vue
  54. 3 3
      src/views/performance/components/chartsCom/yawErrorLine.vue

+ 12 - 8
src/views/overview/components/cp/index.vue

@@ -1,7 +1,7 @@
 <!--
  * @Author: your name
  * @Date: 2025-01-09 18:05:58
- * @LastEditTime: 2025-02-10 14:05:42
+ * @LastEditTime: 2025-02-12 15:08:11
  * @LastEditors: bogon
  * @Description: In User Settings Edit
  * @FilePath: /performance-test/src/views/overview/components/cp/index.vue
@@ -44,9 +44,9 @@
       <el-empty description="暂无分析记录" v-else></el-empty>
       <div v-for="(item, index) in generalFilesDatas">
         <lineAndChildLine
-          :key="item.batchCode + index"
-          :index="index"
-          :ref="item.batchCode"
+          :key="`${new Date().getTime()}` + item.batchCode + index"
+          :index="`${new Date().getTime()}` + index"
+          :ref="`${new Date().getTime()}` + item.batchCode"
           :fileAddr="item.fileAddr"
         >
         </lineAndChildLine>
@@ -60,9 +60,9 @@
       <el-empty description="暂无分析记录" v-else></el-empty>
       <div v-for="(item, index) in diagramRelationsDatas">
         <lineChartsFen
-          :key="item.fieldEngineCode + index"
-          :index="index"
-          :ref="item.fieldEngineCode"
+          :key="`${new Date().getTime()}` + item.fieldEngineCode + index"
+          :index="`${new Date().getTime()}` + index"
+          :ref="`${new Date().getTime()}` + item.fieldEngineCode"
           :fieldEngineCode="item.fieldEngineCode"
           :fileAddr="item.fileAddr"
         >
@@ -105,7 +105,7 @@
         </el-row>
       </el-dialog>
     </div>
-    <div class="right">
+    <div class="right" v-if="isShowTinymceEditorCom">
       <DicCard
         :batchCode="initBatchCode"
         :analysisTypeCode="analysisTypeCode"
@@ -141,6 +141,10 @@ export default {
       default: "",
       type: String,
     },
+    isShowTinymceEditorCom: {
+      default: true,
+      type: Boolean,
+    },
     isShow: {
       default: false,
       type: Boolean,

+ 9 - 5
src/views/overview/components/cp_trend/index.vue

@@ -1,7 +1,7 @@
 <!--
  * @Author: your name
  * @Date: 2025-01-09 18:06:09
- * @LastEditTime: 2025-02-10 13:58:32
+ * @LastEditTime: 2025-02-12 15:14:15
  * @LastEditors: bogon
  * @Description: In User Settings Edit
  * @FilePath: /performance-test/src/views/overview/components/cp_trend/index.vue
@@ -41,9 +41,9 @@
         v-slot="{ item, index }"
       >
         <BoxLineCharts
-          :key="item.fieldEngineCode + index"
-          :index="index"
-          :ref="item.fieldEngineCode"
+          :key="`${new Date().getTime()}` + item.fieldEngineCode + index"
+          :index="`${new Date().getTime()}` + index"
+          :ref="`${new Date().getTime()}` + item.fieldEngineCode"
           :fileAddr="item.fileAddr"
         ></BoxLineCharts>
       </VirtualList>
@@ -84,7 +84,7 @@
         </el-row>
       </el-dialog>
     </div>
-    <div class="right">
+    <div class="right" v-if="isShowTinymceEditorCom">
       <DicCard
         :batchCode="initBatchCode"
         :analysisTypeCode="analysisTypeCode"
@@ -118,6 +118,10 @@ export default {
       default: "",
       type: String,
     },
+    isShowTinymceEditorCom: {
+      default: true,
+      type: Boolean,
+    },
     analysisTypeCode: {
       default: "",
       type: String,

+ 8 - 4
src/views/overview/components/cp_windspeed/index.vue

@@ -1,7 +1,7 @@
 <!--
  * @Author: your name
  * @Date: 2025-01-09 18:08:00
- * @LastEditTime: 2025-02-10 14:03:06
+ * @LastEditTime: 2025-02-12 17:00:19
  * @LastEditors: bogon
  * @Description: In User Settings Edit
  * @FilePath: /performance-test/src/views/overview/components/cp_windspeed/index.vue
@@ -45,7 +45,7 @@
       <div v-for="(item, index) in generalFilesDatas">
         <lineAndChildLine
           :key="item.batchCode + index"
-          :index="index"
+          :index="`${new Date().getTime()}` + index + item.batchCode"
           :ref="item.batchCode"
           :fileAddr="item.fileAddr"
         >
@@ -61,7 +61,7 @@
       <div v-for="(item, index) in diagramRelationsDatas">
         <lineChartsFen
           :key="item.fieldEngineCode + index"
-          :index="index"
+          :index="`${new Date().getTime()}` + index + item.fieldEngineCode"
           :ref="item.fieldEngineCode"
           :fieldEngineCode="item.fieldEngineCode"
           :fileAddr="item.fileAddr"
@@ -105,7 +105,7 @@
         </el-row>
       </el-dialog>
     </div>
-    <div class="right">
+    <div class="right" v-if="isShowTinymceEditorCom">
       <DicCard
         :batchCode="initBatchCode"
         :analysisTypeCode="analysisTypeCode"
@@ -141,6 +141,10 @@ export default {
       default: "",
       type: String,
     },
+    isShowTinymceEditorCom: {
+      default: true,
+      type: Boolean,
+    },
     isShow: {
       default: false,
       type: Boolean,

+ 9 - 7
src/views/overview/components/data_integrity_minute/index.vue

@@ -1,7 +1,7 @@
 <!--
  * @Author: your name
  * @Date: 2025-01-09 17:54:02
- * @LastEditTime: 2025-02-10 13:54:18
+ * @LastEditTime: 2025-02-12 15:02:41
  * @LastEditors: bogon
  * @Description: In User Settings Edit
  * @FilePath: /performance-test/src/views/overview/data_integrity_minute/index.vue
@@ -39,9 +39,9 @@
       <template v-if="generalFilesDatas && generalFilesDatas.length > 0">
         <div v-for="(item, index) in generalFilesDatas">
           <HeatmapCharts
-            :key="item.batchCode + index"
-            :index="item.batchCode + index"
-            :ref="item.batchCode"
+            :key="`${new Date().getTime()}` + item.batchCode + index"
+            :inds="`${new Date().getTime()}` + item.batchCode + index"
+            :ref="`${new Date().getTime()}` + item.batchCode"
             :fileAddr="item.fileAddr"
           ></HeatmapCharts>
         </div>
@@ -64,7 +64,6 @@
               ref="editor"
               v-model="comment"
               @input="handleEditorInput($event)"
-              @onClick="onClick"
             >
             </TinymceEditor>
           </el-tab-pane>
@@ -83,7 +82,7 @@
         </el-row>
       </el-dialog>
     </div>
-    <div class="right">
+    <div class="right" v-if="isShowTinymceEditorCom">
       <DicCard
         :batchCode="initBatchCode"
         :analysisTypeCode="analysisTypeCode"
@@ -116,6 +115,10 @@ export default {
       default: "",
       type: String,
     },
+    isShowTinymceEditorCom: {
+      default: true,
+      type: Boolean,
+    },
     isShow: {
       default: false,
       type: Boolean,
@@ -313,7 +316,6 @@ export default {
       }
       this.$emit("setInitBathCode", this.batchCodeList[index - 1]);
     },
-    onClick() {},
   },
 };
 </script>

+ 9 - 6
src/views/overview/components/data_integrity_second/index.vue

@@ -1,7 +1,7 @@
 <!--
  * @Author: your name
  * @Date: 2025-01-09 17:55:01
- * @LastEditTime: 2025-02-10 14:10:09
+ * @LastEditTime: 2025-02-12 15:45:23
  * @LastEditors: bogon
  * @Description: In User Settings Edit
  * @FilePath: /performance-test/src/views/overview/data_integrity_second/index.vue
@@ -40,15 +40,14 @@
       <template v-if="generalFilesDatas && generalFilesDatas.length > 0">
         <div v-for="(item, index) in generalFilesDatas">
           <HeatmapCharts
-            :key="item.batchCode + index"
-            :index="item.batchCode + index"
-            :ref="item.batchCode"
+            :key="`${new Date().getTime()}` + item.batchCode + index"
+            :index="`${new Date().getTime()}` + item.batchCode + index"
+            :ref="`${new Date().getTime()}` + item.batchCode"
             :fileAddr="item.fileAddr"
           ></HeatmapCharts>
         </div>
       </template>
       <el-empty description="暂无分析记录" v-else></el-empty>
-
       <el-dialog
         v-if="isShowDescription"
         title="添加评论"
@@ -85,7 +84,7 @@
         </el-row>
       </el-dialog>
     </div>
-    <div class="right">
+    <div class="right" v-if="isShowTinymceEditorCom">
       <DicCard
         :batchCode="initBatchCode"
         :analysisTypeCode="analysisTypeCode"
@@ -118,6 +117,10 @@ export default {
       default: "",
       type: String,
     },
+    isShowTinymceEditorCom: {
+      default: true,
+      type: Boolean,
+    },
     isShow: {
       default: false,
       type: Boolean,

+ 5 - 1
src/views/overview/components/fault_all/index.vue

@@ -119,7 +119,7 @@
         </el-row>
       </el-dialog>
     </div>
-    <div class="right">
+    <div class="right" v-if="isShowTinymceEditorCom">
       <DicCard
         :batchCode="initBatchCode"
         :analysisTypeCode="'fault'"
@@ -154,6 +154,10 @@ export default {
       default: "",
       type: String,
     },
+    isShowTinymceEditorCom: {
+      default: true,
+      type: Boolean,
+    },
     isShow: {
       default: false,
       type: Boolean,

+ 5 - 1
src/views/overview/components/fault_unit/index.vue

@@ -112,7 +112,7 @@
         </el-row>
       </el-dialog>
     </div>
-    <div class="right">
+    <div class="right" v-if="isShowTinymceEditorCom">
       <DicCard
         :batchCode="initBatchCode"
         :analysisTypeCode="'fault'"
@@ -147,6 +147,10 @@ export default {
       default: "",
       type: String,
     },
+    isShowTinymceEditorCom: {
+      default: true,
+      type: Boolean,
+    },
     analysisTypeCode: {
       default: "",
       type: String,

+ 10 - 10
src/views/overview/components/filterChart/index.vue

@@ -1,14 +1,14 @@
 <!--
  * @Author: your name
  * @Date: 2025-01-13 14:53:21
- * @LastEditTime: 2025-01-20 17:24:03
- * @LastEditors: milo-MacBook-Pro.local
+ * @LastEditTime: 2025-02-12 13:49:00
+ * @LastEditors: bogon
  * @Description: In User Settings Edit
  * @FilePath: /performance-test/src/views/overview/components/filterChart/index.vue
 -->
 <template>
   <el-form ref="form" :inline="true" :model="form" label-width="100px">
-    <el-form-item label="机组名称:" size="small">
+    <el-form-item label="机组名称:" size="small" v-if="windList.length > 0">
       <el-select
         v-model="form.value2"
         multiple
@@ -25,7 +25,13 @@
       </el-select>
     </el-form-item>
     <el-form-item>
-      <el-button type="primary" size="small" @click="onSearch">查询</el-button>
+      <el-button
+        type="primary"
+        size="small"
+        @click="onSearch"
+        v-if="windList.length > 0"
+        >查询</el-button
+      >
       <el-button type="primary" size="small" @click="onSubmit('handlePrevious')"
         >上一条分析结果</el-button
       >
@@ -53,13 +59,7 @@ export default {
   },
   methods: {
     onSearch() {
-      console.log(this.form.value2);
-      // if (this.form.value2 && this.form.value2.length > 0) {
       this.$emit("getEnfineList", this.form.value2);
-      // }
-      // else {
-      //   this.$message.warning("请选择风机后进行查询");
-      // }
     },
     onSubmit(type) {
       if (type === "handlePrevious") {

+ 7 - 3
src/views/overview/components/min_pitch/index.vue

@@ -1,7 +1,7 @@
 <!--
  * @Author: your name
  * @Date: 2025-01-09 18:08:13
- * @LastEditTime: 2025-02-10 14:50:20
+ * @LastEditTime: 2025-02-12 16:33:16
  * @LastEditors: bogon
  * @Description: In User Settings Edit
  * @FilePath: /performance-test/src/views/overview/components/min_pitch/index.vue
@@ -41,7 +41,7 @@
       >
         <TwoDMarkersChart
           :key="item.fieldEngineCode"
-          :index="index"
+          :index="`${new Date().getTime()}` + index"
           :ref="item.fieldEngineCode"
           :fileAddr="item.fileAddr"
         ></TwoDMarkersChart>
@@ -82,7 +82,7 @@
         </el-row>
       </el-dialog>
     </div>
-    <div class="right">
+    <div class="right" v-if="isShowTinymceEditorCom">
       <DicCard
         :batchCode="initBatchCode"
         :analysisTypeCode="analysisTypeCode"
@@ -116,6 +116,10 @@ export default {
       default: "",
       type: String,
     },
+    isShowTinymceEditorCom: {
+      default: true,
+      type: Boolean,
+    },
     isShow: {
       default: false,
       type: Boolean,

+ 7 - 3
src/views/overview/components/pitch_generator_speed/index.vue

@@ -1,7 +1,7 @@
 <!--
  * @Author: your name
  * @Date: 2025-01-09 18:09:25
- * @LastEditTime: 2025-02-10 14:50:29
+ * @LastEditTime: 2025-02-12 16:34:20
  * @LastEditors: bogon
  * @Description: In User Settings Edit
  * @FilePath: /performance-test/src/views/overview/components/pitch_generator_speed/index.vue
@@ -41,7 +41,7 @@
       >
         <TwoDMarkersChart
           :key="item.fieldEngineCode"
-          :index="index"
+          :index="`${new Date().getTime()}` + index"
           :ref="item.fieldEngineCode"
           :fileAddr="item.fileAddr"
         ></TwoDMarkersChart>
@@ -82,7 +82,7 @@
         </el-row>
       </el-dialog>
     </div>
-    <div class="right">
+    <div class="right" v-if="isShowTinymceEditorCom">
       <DicCard
         :batchCode="initBatchCode"
         :analysisTypeCode="analysisTypeCode"
@@ -116,6 +116,10 @@ export default {
       default: "",
       type: String,
     },
+    isShowTinymceEditorCom: {
+      default: true,
+      type: Boolean,
+    },
     isShow: {
       default: false,
       type: Boolean,

+ 9 - 5
src/views/overview/components/pitch_power/index.vue

@@ -1,7 +1,7 @@
 <!--
  * @Author: your name
  * @Date: 2025-01-09 18:09:41
- * @LastEditTime: 2025-02-10 14:50:37
+ * @LastEditTime: 2025-02-12 16:40:18
  * @LastEditors: bogon
  * @Description: In User Settings Edit
  * @FilePath: /performance-test/src/views/overview/components/pitch_power/index.vue
@@ -40,9 +40,9 @@
         v-slot="{ item, index }"
       >
         <!-- <TwoDMarkersChart
-          :key="item.fieldEngineCode"
-          :index="index"
-          :ref="item.fieldEngineCode"
+          :key="`${new Date().getTime()}` + item.fieldEngineCode"
+          :index="`${new Date().getTime()}` + index"
+          :ref="`${new Date().getTime()}` + item.fieldEngineCode"
           :fileAddr="item.fileAddr"
         ></TwoDMarkersChart> -->
         <TwoDMarkersChart
@@ -98,7 +98,7 @@
         </el-row>
       </el-dialog>
     </div>
-    <div class="right">
+    <div class="right" v-if="isShowTinymceEditorCom">
       <DicCard
         :batchCode="initBatchCode"
         :analysisTypeCode="analysisTypeCode"
@@ -134,6 +134,10 @@ export default {
       default: "",
       type: String,
     },
+    isShowTinymceEditorCom: {
+      default: true,
+      type: Boolean,
+    },
     isShow: {
       default: false,
       type: Boolean,

+ 7 - 3
src/views/overview/components/pitch_tsr_cp/index.vue

@@ -1,7 +1,7 @@
 <!--
  * @Author: your name
  * @Date: 2025-01-09 18:09:55
- * @LastEditTime: 2025-02-10 14:50:45
+ * @LastEditTime: 2025-02-12 16:41:43
  * @LastEditors: bogon
  * @Description: In User Settings Edit
  * @FilePath: /performance-test/src/views/overview/components/pitch_tsr_cp/index.vue
@@ -39,7 +39,7 @@
       >
         <TwoDMarkersChart
           :key="item.fieldEngineCode + index"
-          :index="index"
+          :index="`${new Date().getTime()}` + index"
           :ref="item.fieldEngineCode"
           :fileAddr="item.fileAddr"
         ></TwoDMarkersChart>
@@ -80,7 +80,7 @@
         </el-row>
       </el-dialog>
     </div>
-    <div class="right">
+    <div class="right" v-if="isShowTinymceEditorCom">
       <DicCard
         :batchCode="initBatchCode"
         :analysisTypeCode="analysisTypeCode"
@@ -114,6 +114,10 @@ export default {
       default: "",
       type: String,
     },
+    isShowTinymceEditorCom: {
+      default: true,
+      type: Boolean,
+    },
     isShow: {
       default: false,
       type: Boolean,

+ 8 - 4
src/views/overview/components/power_curve/index.vue

@@ -1,7 +1,7 @@
 <!--
  * @Author: your name
  * @Date: 2025-01-09 18:10:08
- * @LastEditTime: 2025-02-10 16:05:43
+ * @LastEditTime: 2025-02-12 16:17:41
  * @LastEditors: bogon
  * @Description: In User Settings Edit
  * @FilePath: /performance-test/src/views/overview/components/power_curve/index.vue
@@ -77,7 +77,7 @@
                 <PlotlyCharts
                   :lineMarkerData="powerCurveDom.chartsData"
                   :comType="'generalDrawing'"
-                  :inds="`zong${ind}`"
+                  :inds="`${new Date().getTime()}` + `zong${ind}`"
                 ></PlotlyCharts>
               </div>
             </el-col>
@@ -104,7 +104,7 @@
                 <PlotlyCharts
                   :lineMarkerData="powerCurveDom.chartsData"
                   :comType="'graph'"
-                  :inds="`fen${ind}`"
+                  :inds="`${new Date().getTime()}` + `fen${ind}`"
                 ></PlotlyCharts>
               </div>
             </el-col>
@@ -180,7 +180,7 @@
         </el-row>
       </el-dialog>
     </div>
-    <div class="right">
+    <div class="right" v-if="isShowTinymceEditorCom">
       <DicCard
         :batchCode="initBatchCode"
         :analysisTypeCode="analysisTypeCode"
@@ -218,6 +218,10 @@ export default {
       default: "",
       type: String,
     },
+    isShowTinymceEditorCom: {
+      default: true,
+      type: Boolean,
+    },
     isShow: {
       default: false,
       type: Boolean,

+ 6 - 2
src/views/overview/components/power_scatter/index.vue

@@ -1,7 +1,7 @@
 <!--
  * @Author: your name
  * @Date: 2025-01-09 18:10:22
- * @LastEditTime: 2025-02-10 14:51:05
+ * @LastEditTime: 2025-02-12 16:44:23
  * @LastEditors: bogon
  * @Description: In User Settings Edit
  * @FilePath: /performance-test/src/views/overview/components/power_scatter/index.vue
@@ -83,7 +83,7 @@
         </el-row>
       </el-dialog>
     </div>
-    <div class="right">
+    <div class="right" v-if="isShowTinymceEditorCom">
       <DicCard
         :batchCode="initBatchCode"
         :analysisTypeCode="analysisTypeCode"
@@ -117,6 +117,10 @@ export default {
       default: "",
       type: String,
     },
+    isShowTinymceEditorCom: {
+      default: true,
+      type: Boolean,
+    },
     isShow: {
       default: false,
       type: Boolean,

+ 7 - 3
src/views/overview/components/power_scatter_2D/index.vue

@@ -1,7 +1,7 @@
 <!--
  * @Author: your name
  * @Date: 2025-01-09 18:10:35
- * @LastEditTime: 2025-02-10 14:51:14
+ * @LastEditTime: 2025-02-12 16:29:54
  * @LastEditors: bogon
  * @Description: In User Settings Edit
  * @FilePath: /performance-test/src/views/overview/components/power_scatter_2D/index.vue
@@ -41,7 +41,7 @@
       >
         <powerMarkers2DCharts
           :key="item.fieldEngineCode + index"
-          :index="index"
+          :index="`${new Date().getTime()}` + index"
           :ref="item.fieldEngineCode"
           :fileAddr="item.fileAddr"
         ></powerMarkers2DCharts>
@@ -83,7 +83,7 @@
         </el-row>
       </el-dialog>
     </div>
-    <div class="right">
+    <div class="right" v-if="isShowTinymceEditorCom">
       <DicCard
         :batchCode="initBatchCode"
         :analysisTypeCode="analysisTypeCode"
@@ -118,6 +118,10 @@ export default {
       default: "",
       type: String,
     },
+    isShowTinymceEditorCom: {
+      default: true,
+      type: Boolean,
+    },
     isShow: {
       default: false,
       type: Boolean,

+ 5 - 1
src/views/overview/components/production_indicator_all/index.vue

@@ -88,7 +88,7 @@
         </el-row>
       </el-dialog>
     </div>
-    <div class="right">
+    <div class="right" v-if="isShowTinymceEditorCom">
       <DicCard
         :batchCode="initBatchCode"
         :analysisTypeCode="'production_indicator'"
@@ -121,6 +121,10 @@ export default {
       default: "",
       type: String,
     },
+    isShowTinymceEditorCom: {
+      default: true,
+      type: Boolean,
+    },
     isShow: {
       default: false,
       type: Boolean,

+ 5 - 1
src/views/overview/components/production_indicator_unit/index.vue

@@ -157,7 +157,7 @@
         ></Rader>
       </el-dialog>
     </div>
-    <div class="right">
+    <div class="right" v-if="isShowTinymceEditorCom">
       <DicCard
         :batchCode="initBatchCode"
         :analysisTypeCode="'production_indicator'"
@@ -192,6 +192,10 @@ export default {
       default: "",
       type: String,
     },
+    isShowTinymceEditorCom: {
+      default: true,
+      type: Boolean,
+    },
     isShow: {
       default: false,
       type: Boolean,

+ 8 - 4
src/views/overview/components/rated_power_windspeed/index.vue

@@ -1,7 +1,7 @@
 <!--
  * @Author: your name
  * @Date: 2025-01-09 18:10:47
- * @LastEditTime: 2025-02-10 14:51:48
+ * @LastEditTime: 2025-02-12 16:56:12
  * @LastEditors: bogon
  * @Description: In User Settings Edit
  * @FilePath: /performance-test/src/views/overview/components/rated_power_windspeed/index.vue
@@ -40,8 +40,8 @@
       >
         <BoxLineCharts
           :key="item.batchCode + index"
-          :index="index"
-          :ref="item.batchCode + index"
+          :index="`${new Date().getTime()}` + index"
+          :ref="`${new Date().getTime()}` + item.batchCode + index"
           :fileAddr="item.fileAddr"
         >
         </BoxLineCharts>
@@ -82,7 +82,7 @@
         </el-row>
       </el-dialog>
     </div>
-    <div class="right">
+    <div class="right" v-if="isShowTinymceEditorCom">
       <DicCard
         :batchCode="initBatchCode"
         :analysisTypeCode="analysisTypeCode"
@@ -116,6 +116,10 @@ export default {
       default: "",
       type: String,
     },
+    isShowTinymceEditorCom: {
+      default: true,
+      type: Boolean,
+    },
     isShow: {
       default: false,
       type: Boolean,

+ 8 - 4
src/views/overview/components/rated_windspeed/index.vue

@@ -1,7 +1,7 @@
 <!--
  * @Author: your name
  * @Date: 2025-01-10 09:08:56
- * @LastEditTime: 2025-02-10 14:52:04
+ * @LastEditTime: 2025-02-12 16:56:25
  * @LastEditors: bogon
  * @Description: In User Settings Edit
  * @FilePath: /performance-test/src/views/overview/components/rated_windspeed/index.vue
@@ -41,8 +41,8 @@
       >
         <BarChart
           :key="item.batchCode + index"
-          :inds="index + 'barChart'"
-          :ref="item.batchCode"
+          :inds="`${new Date().getTime()}` + index + 'barChart'"
+          :ref="`${new Date().getTime()}` + item.batchCode"
           :fileAddr="item.fileAddr"
         >
         </BarChart>
@@ -83,7 +83,7 @@
         </el-row>
       </el-dialog>
     </div>
-    <div class="right">
+    <div class="right" v-if="isShowTinymceEditorCom">
       <DicCard
         :batchCode="initBatchCode"
         :analysisTypeCode="analysisTypeCode"
@@ -117,6 +117,10 @@ export default {
       default: "",
       type: String,
     },
+    isShowTinymceEditorCom: {
+      default: true,
+      type: Boolean,
+    },
     isShow: {
       default: false,
       type: Boolean,

+ 6 - 2
src/views/overview/components/speed_power/index.vue

@@ -1,7 +1,7 @@
 <!--
  * @Author: your name
  * @Date: 2025-01-10 09:09:17
- * @LastEditTime: 2025-02-10 14:52:16
+ * @LastEditTime: 2025-02-12 17:19:11
  * @LastEditors: bogon
  * @Description: In User Settings Edit
  * @FilePath: /performance-test/src/views/overview/components/speed_power/index.vue
@@ -107,7 +107,7 @@
         </el-row>
       </el-dialog>
     </div>
-    <div class="right">
+    <div class="right" v-if="isShowTinymceEditorCom">
       <DicCard
         :batchCode="initBatchCode"
         :analysisTypeCode="analysisTypeCode"
@@ -145,6 +145,10 @@ export default {
       default: "",
       type: String,
     },
+    isShowTinymceEditorCom: {
+      default: true,
+      type: Boolean,
+    },
     isShow: {
       default: false,
       type: Boolean,

+ 5 - 1
src/views/overview/components/speed_torque/index.vue

@@ -110,7 +110,7 @@
         </el-row>
       </el-dialog>
     </div>
-    <div class="right">
+    <div class="right" v-if="isShowTinymceEditorCom">
       <DicCard
         :batchCode="initBatchCode"
         :analysisTypeCode="analysisTypeCode"
@@ -148,6 +148,10 @@ export default {
       default: "",
       type: String,
     },
+    isShowTinymceEditorCom: {
+      default: true,
+      type: Boolean,
+    },
     isShow: {
       default: false,
       type: Boolean,

+ 9 - 5
src/views/overview/components/temperature_environment/index.vue

@@ -1,7 +1,7 @@
 <!--
  * @Author: your name
  * @Date: 2025-01-10 09:09:46
- * @LastEditTime: 2025-02-10 14:52:35
+ * @LastEditTime: 2025-02-12 17:24:10
  * @LastEditors: bogon
  * @Description: In User Settings Edit
  * @FilePath: /performance-test/src/views/overview/components/temperature_environment/index.vue
@@ -41,9 +41,9 @@
       <el-empty description="暂无分图分析记录" v-else></el-empty>
       <div v-for="(item, index) in generalFilesDatas">
         <BarChart
-          :key="item.batchCode + index"
-          :inds="index + 'barChart'"
-          :ref="item.batchCode"
+          :key="`${new Date().getTime()}` + item.batchCode + index"
+          :inds="`${new Date().getTime()}` + index + 'barChart'"
+          :ref="`${new Date().getTime()}` + item.batchCode"
           :fileAddr="item.fileAddr"
         >
         </BarChart>
@@ -114,7 +114,7 @@
         </el-row>
       </el-dialog>
     </div>
-    <div class="right">
+    <div class="right" v-if="isShowTinymceEditorCom">
       <DicCard
         :batchCode="initBatchCode"
         :analysisTypeCode="analysisTypeCode"
@@ -148,6 +148,10 @@ export default {
       default: "",
       type: String,
     },
+    isShowTinymceEditorCom: {
+      default: true,
+      type: Boolean,
+    },
     isShow: {
       default: false,
       type: Boolean,

+ 7 - 3
src/views/overview/components/temperature_large_components_Winding_tem/index.vue

@@ -54,7 +54,7 @@
       <div v-for="(item, index) in generalFilesDatas">
         <lineAndChildLine
           :key="item.batchCode + index"
-          :index="index"
+          :index="`${new Date().getTime()}` + index"
           :ref="item.batchCode"
           :fileAddr="item.fileAddr"
         >
@@ -70,7 +70,7 @@
       <div v-for="(item, index) in diagramRelationsDatas">
         <lineChartsFen
           :key="item.fieldEngineCode + index"
-          :index="index"
+          :index="`${new Date().getTime()}` + index"
           :ref="item.fieldEngineCode"
           :fieldEngineCode="item.fieldEngineCode"
           :fileAddr="item.fileAddr"
@@ -113,7 +113,7 @@
         </el-row>
       </el-dialog>
     </div>
-    <div class="right">
+    <div class="right" v-if="isShowTinymceEditorCom">
       <DicCard
         :batchCode="initBatchCode"
         :analysisTypeCode="analysisTypeCode"
@@ -149,6 +149,10 @@ export default {
       default: "",
       type: String,
     },
+    isShowTinymceEditorCom: {
+      default: true,
+      type: Boolean,
+    },
     isShow: {
       default: false,
       type: Boolean,

+ 7 - 3
src/views/overview/components/temperature_large_components_adriven/index.vue

@@ -54,7 +54,7 @@
       <div v-for="(item, index) in generalFilesDatas">
         <lineAndChildLine
           :key="item.batchCode + index"
-          :index="index"
+          :index="`${new Date().getTime()}` + index"
           :ref="item.batchCode"
           :fileAddr="item.fileAddr"
         >
@@ -71,7 +71,7 @@
       <div v-for="(item, index) in diagramRelationsDatas">
         <lineChartsFen
           :key="item.fieldEngineCode + index"
-          :index="index"
+          :index="`${new Date().getTime()}` + index"
           :ref="item.fieldEngineCode"
           :fieldEngineCode="item.fieldEngineCode"
           :fileAddr="item.fileAddr"
@@ -114,7 +114,7 @@
         </el-row>
       </el-dialog>
     </div>
-    <div class="right">
+    <div class="right" v-if="isShowTinymceEditorCom">
       <DicCard
         :batchCode="initBatchCode"
         :analysisTypeCode="analysisTypeCode"
@@ -150,6 +150,10 @@ export default {
       default: "",
       type: String,
     },
+    isShowTinymceEditorCom: {
+      default: true,
+      type: Boolean,
+    },
     isShow: {
       default: false,
       type: Boolean,

+ 7 - 3
src/views/overview/components/temperature_large_components_hig/index.vue

@@ -54,7 +54,7 @@
       <div v-for="(item, index) in generalFilesDatas">
         <lineAndChildLine
           :key="item.batchCode + index"
-          :index="index"
+          :index="`${new Date().getTime()}` + index"
           :ref="item.batchCode"
           :fileAddr="item.fileAddr"
         >
@@ -71,7 +71,7 @@
       <div v-for="(item, index) in diagramRelationsDatas">
         <lineChartsFen
           :key="item.fieldEngineCode + index"
-          :index="index"
+          :index="`${new Date().getTime()}` + index"
           :ref="item.fieldEngineCode"
           :fieldEngineCode="item.fieldEngineCode"
           :fileAddr="item.fileAddr"
@@ -114,7 +114,7 @@
         </el-row>
       </el-dialog>
     </div>
-    <div class="right">
+    <div class="right" v-if="isShowTinymceEditorCom">
       <DicCard
         :batchCode="initBatchCode"
         :analysisTypeCode="analysisTypeCode"
@@ -150,6 +150,10 @@ export default {
       default: "",
       type: String,
     },
+    isShowTinymceEditorCom: {
+      default: true,
+      type: Boolean,
+    },
     isShow: {
       default: false,
       type: Boolean,

+ 7 - 3
src/views/overview/components/temperature_large_components_low/index.vue

@@ -54,7 +54,7 @@
       <div v-for="(item, index) in generalFilesDatas">
         <lineAndChildLine
           :key="item.batchCode + index"
-          :index="index"
+          :index="`${new Date().getTime()}` + index"
           :ref="item.batchCode"
           :fileAddr="item.fileAddr"
         >
@@ -71,7 +71,7 @@
       <div v-for="(item, index) in diagramRelationsDatas">
         <lineChartsFen
           :key="item.fieldEngineCode + index"
-          :index="index"
+          :index="`${new Date().getTime()}` + index"
           :ref="item.fieldEngineCode"
           :fieldEngineCode="item.fieldEngineCode"
           :fileAddr="item.fileAddr"
@@ -114,7 +114,7 @@
         </el-row>
       </el-dialog>
     </div>
-    <div class="right">
+    <div class="right" v-if="isShowTinymceEditorCom">
       <DicCard
         :batchCode="initBatchCode"
         :analysisTypeCode="analysisTypeCode"
@@ -150,6 +150,10 @@ export default {
       default: "",
       type: String,
     },
+    isShowTinymceEditorCom: {
+      default: true,
+      type: Boolean,
+    },
     isShow: {
       default: false,
       type: Boolean,

+ 7 - 3
src/views/overview/components/temperature_large_components_mid/index.vue

@@ -54,7 +54,7 @@
       <div v-for="(item, index) in generalFilesDatas">
         <lineAndChildLine
           :key="item.batchCode + index"
-          :index="index"
+          :index="`${new Date().getTime()}` + index"
           :ref="item.batchCode"
           :fileAddr="item.fileAddr"
         >
@@ -71,7 +71,7 @@
       <div v-for="(item, index) in diagramRelationsDatas">
         <lineChartsFen
           :key="item.fieldEngineCode + index"
-          :index="index"
+          :index="`${new Date().getTime()}` + index"
           :ref="item.fieldEngineCode"
           :fieldEngineCode="item.fieldEngineCode"
           :fileAddr="item.fileAddr"
@@ -114,7 +114,7 @@
         </el-row>
       </el-dialog>
     </div>
-    <div class="right">
+    <div class="right" v-if="isShowTinymceEditorCom">
       <DicCard
         :batchCode="initBatchCode"
         :analysisTypeCode="analysisTypeCode"
@@ -150,6 +150,10 @@ export default {
       default: "",
       type: String,
     },
+    isShowTinymceEditorCom: {
+      default: true,
+      type: Boolean,
+    },
     isShow: {
       default: false,
       type: Boolean,

+ 7 - 3
src/views/overview/components/temperature_large_components_min/index.vue

@@ -54,7 +54,7 @@
       <div v-for="(item, index) in generalFilesDatas">
         <lineAndChildLine
           :key="item.batchCode + index"
-          :index="index"
+          :index="`${new Date().getTime()}` + index"
           :ref="item.batchCode"
           :fileAddr="item.fileAddr"
         >
@@ -71,7 +71,7 @@
       <div v-for="(item, index) in diagramRelationsDatas">
         <lineChartsFen
           :key="item.fieldEngineCode + index"
-          :index="index"
+          :index="`${new Date().getTime()}` + index"
           :ref="item.fieldEngineCode"
           :fieldEngineCode="item.fieldEngineCode"
           :fileAddr="item.fileAddr"
@@ -114,7 +114,7 @@
         </el-row>
       </el-dialog>
     </div>
-    <div class="right">
+    <div class="right" v-if="isShowTinymceEditorCom">
       <DicCard
         :batchCode="initBatchCode"
         :analysisTypeCode="analysisTypeCode"
@@ -150,6 +150,10 @@ export default {
       default: "",
       type: String,
     },
+    isShowTinymceEditorCom: {
+      default: true,
+      type: Boolean,
+    },
     isShow: {
       default: false,
       type: Boolean,

+ 6 - 2
src/views/overview/components/temperature_large_components_tem_deviation/index.vue

@@ -53,7 +53,7 @@
       <div v-for="(item, index) in diagramRelationsDatas">
         <GeneratorTemperature
           :key="item.fieldEngineCode + index"
-          :index="index"
+          :index="`${new Date().getTime()}` + index"
           :ref="item.fieldEngineCode"
           :fieldEngineCode="item.fieldEngineCode"
           :fileAddr="item.fileAddr"
@@ -96,7 +96,7 @@
         </el-row>
       </el-dialog>
     </div>
-    <div class="right">
+    <div class="right" v-if="isShowTinymceEditorCom">
       <DicCard
         :batchCode="initBatchCode"
         :analysisTypeCode="analysisTypeCode"
@@ -132,6 +132,10 @@ export default {
       default: "",
       type: String,
     },
+    isShowTinymceEditorCom: {
+      default: true,
+      type: Boolean,
+    },
     isShow: {
       default: false,
       type: Boolean,

+ 7 - 3
src/views/overview/components/temperature_large_components_undriven/index.vue

@@ -54,7 +54,7 @@
       <div v-for="(item, index) in generalFilesDatas">
         <lineAndChildLine
           :key="item.batchCode + index"
-          :index="index"
+          :index="`${new Date().getTime()}` + index"
           :ref="item.batchCode"
           :fileAddr="item.fileAddr"
         >
@@ -71,7 +71,7 @@
       <div v-for="(item, index) in diagramRelationsDatas">
         <lineChartsFen
           :key="item.fieldEngineCode + index"
-          :index="index"
+          :index="`${new Date().getTime()}` + index"
           :ref="item.fieldEngineCode"
           :fieldEngineCode="item.fieldEngineCode"
           :fileAddr="item.fileAddr"
@@ -114,7 +114,7 @@
         </el-row>
       </el-dialog>
     </div>
-    <div class="right">
+    <div class="right" v-if="isShowTinymceEditorCom">
       <DicCard
         :batchCode="initBatchCode"
         :analysisTypeCode="analysisTypeCode"
@@ -150,6 +150,10 @@ export default {
       default: "",
       type: String,
     },
+    isShowTinymceEditorCom: {
+      default: true,
+      type: Boolean,
+    },
     isShow: {
       default: false,
       type: Boolean,

+ 8 - 4
src/views/overview/components/tsr/index.vue

@@ -1,7 +1,7 @@
 <!--
  * @Author: your name
  * @Date: 2025-01-10 09:10:11
- * @LastEditTime: 2025-02-10 14:53:52
+ * @LastEditTime: 2025-02-12 17:04:37
  * @LastEditors: bogon
  * @Description: In User Settings Edit
  * @FilePath: /performance-test/src/views/overview/components/tsr/index.vue
@@ -41,7 +41,7 @@
       <div v-for="(item, index) in generalFilesDatas">
         <lineAndChildLine
           :key="item.batchCode + index"
-          :index="index"
+          :index="`${new Date().getTime()}` + index"
           :ref="item.batchCode"
           :fileAddr="item.fileAddr"
         >
@@ -56,7 +56,7 @@
       <div v-for="(item, index) in diagramRelationsDatas">
         <lineChartsFen
           :key="item.fieldEngineCode + index"
-          :index="index"
+          :index="`${new Date().getTime()}` + index"
           :ref="item.fieldEngineCode"
           :fieldEngineCode="item.fieldEngineCode"
           :fileAddr="item.fileAddr"
@@ -100,7 +100,7 @@
         </el-row>
       </el-dialog>
     </div>
-    <div class="right">
+    <div class="right" v-if="isShowTinymceEditorCom">
       <DicCard
         :batchCode="initBatchCode"
         :analysisTypeCode="analysisTypeCode"
@@ -136,6 +136,10 @@ export default {
       default: "",
       type: String,
     },
+    isShowTinymceEditorCom: {
+      default: true,
+      type: Boolean,
+    },
     isShow: {
       default: false,
       type: Boolean,

+ 7 - 3
src/views/overview/components/tsr_cp_power/index.vue

@@ -42,7 +42,7 @@
       <div v-for="(item, index) in generalFilesDatas">
         <lineAndChildLine
           :key="item.batchCode + index"
-          :index="index"
+          :index="`${new Date().getTime()}` + index"
           :ref="item.batchCode"
           :fileAddr="item.fileAddr"
         >
@@ -57,7 +57,7 @@
       <div v-for="(item, index) in diagramRelationsDatas">
         <lineChartsFen
           :key="item.fieldEngineCode + index"
-          :index="index"
+          :index="`${new Date().getTime()}` + index"
           :ref="item.fieldEngineCode"
           :fieldEngineCode="item.fieldEngineCode"
           :fileAddr="item.fileAddr"
@@ -100,7 +100,7 @@
         </el-row>
       </el-dialog>
     </div>
-    <div class="right">
+    <div class="right" v-if="isShowTinymceEditorCom">
       <DicCard
         :batchCode="initBatchCode"
         :analysisTypeCode="analysisTypeCode"
@@ -136,6 +136,10 @@ export default {
       default: "",
       type: String,
     },
+    isShowTinymceEditorCom: {
+      default: true,
+      type: Boolean,
+    },
     isShow: {
       default: false,
       type: Boolean,

+ 6 - 2
src/views/overview/components/tsr_cp_power_scatter/index.vue

@@ -40,7 +40,7 @@
       >
         <NoColourBandTwoDMarkerChart
           :key="item.fieldEngineCode"
-          :index="index"
+          :index="`${new Date().getTime()}` + index"
           :ref="item.fieldEngineCode"
           :fileAddr="item.fileAddr"
         >
@@ -82,7 +82,7 @@
         </el-row>
       </el-dialog>
     </div>
-    <div class="right">
+    <div class="right" v-if="isShowTinymceEditorCom">
       <DicCard
         :batchCode="initBatchCode"
         :analysisTypeCode="analysisTypeCode"
@@ -116,6 +116,10 @@ export default {
       default: "",
       type: String,
     },
+    isShowTinymceEditorCom: {
+      default: true,
+      type: Boolean,
+    },
     isShow: {
       default: false,
       type: Boolean,

+ 6 - 2
src/views/overview/components/tsr_trend/index.vue

@@ -39,7 +39,7 @@
       >
         <BoxMarkersCharts
           :key="item.fieldEngineCode"
-          :index="index"
+          :index="`${new Date().getTime()}` + index"
           :ref="item.fieldEngineCode"
           :fileAddr="item.fileAddr"
         >
@@ -81,7 +81,7 @@
         </el-row>
       </el-dialog>
     </div>
-    <div class="right">
+    <div class="right" v-if="isShowTinymceEditorCom">
       <DicCard
         :batchCode="initBatchCode"
         :analysisTypeCode="analysisTypeCode"
@@ -115,6 +115,10 @@ export default {
       default: "",
       type: String,
     },
+    isShowTinymceEditorCom: {
+      default: true,
+      type: Boolean,
+    },
     isShow: {
       default: false,
       type: Boolean,

+ 7 - 3
src/views/overview/components/tsr_windspeed/index.vue

@@ -41,7 +41,7 @@
       <div v-for="(item, index) in generalFilesDatas">
         <lineAndChildLine
           :key="item.batchCode + index"
-          :index="index"
+          :index="`${new Date().getTime()}` + index"
           :ref="item.batchCode"
           :fileAddr="item.fileAddr"
         >
@@ -56,7 +56,7 @@
       <div v-for="(item, index) in diagramRelationsDatas">
         <lineChartsFen
           :key="item.fieldEngineCode + index"
-          :index="index"
+          :index="`${new Date().getTime()}` + index"
           :ref="item.fieldEngineCode"
           :fieldEngineCode="item.fieldEngineCode"
           :fileAddr="item.fileAddr"
@@ -100,7 +100,7 @@
         </el-row>
       </el-dialog>
     </div>
-    <div class="right">
+    <div class="right" v-if="isShowTinymceEditorCom">
       <DicCard
         :batchCode="initBatchCode"
         :analysisTypeCode="analysisTypeCode"
@@ -136,6 +136,10 @@ export default {
       default: "",
       type: String,
     },
+    isShowTinymceEditorCom: {
+      default: true,
+      type: Boolean,
+    },
     isShow: {
       default: false,
       type: Boolean,

+ 5 - 1
src/views/overview/components/wind_direction_frequency/index.vue

@@ -81,7 +81,7 @@
         </el-row>
       </el-dialog>
     </div>
-    <div class="right">
+    <div class="right" v-if="isShowTinymceEditorCom">
       <DicCard
         :batchCode="initBatchCode"
         :analysisTypeCode="analysisTypeCode"
@@ -116,6 +116,10 @@ export default {
       default: "",
       type: String,
     },
+    isShowTinymceEditorCom: {
+      default: true,
+      type: Boolean,
+    },
     isShow: {
       default: false,
       type: Boolean,

+ 9 - 5
src/views/overview/components/wind_speed/index.vue

@@ -1,7 +1,7 @@
 <!--
  * @Author: your name
  * @Date: 2025-01-10 09:11:23
- * @LastEditTime: 2025-02-10 14:54:38
+ * @LastEditTime: 2025-02-12 16:52:55
  * @LastEditors: bogon
  * @Description: In User Settings Edit
  * @FilePath: /performance-test/src/views/overview/components/wind_spee/index.vue
@@ -40,9 +40,9 @@
         v-slot="{ item, index }"
       >
         <BarChart
-          :key="item.batchCode + index"
-          :inds="index + 'barChart'"
-          :ref="item.batchCode"
+          :key="`${new Date().getTime()}` + item.batchCode + index"
+          :inds="`${new Date().getTime()}` + index + 'barChart'"
+          :ref="`${new Date().getTime()}` + item.batchCode"
           :fileAddr="item.fileAddr"
         ></BarChart>
       </VirtualList>
@@ -82,7 +82,7 @@
         </el-row>
       </el-dialog>
     </div>
-    <div class="right">
+    <div class="right" v-if="isShowTinymceEditorCom">
       <DicCard
         :batchCode="initBatchCode"
         :analysisTypeCode="analysisTypeCode"
@@ -116,6 +116,10 @@ export default {
       default: "",
       type: String,
     },
+    isShowTinymceEditorCom: {
+      default: true,
+      type: Boolean,
+    },
     isShow: {
       default: false,
       type: Boolean,

+ 5 - 1
src/views/overview/components/wind_speed_frequency/index.vue

@@ -95,7 +95,7 @@
         </el-row>
       </el-dialog>
     </div>
-    <div class="right">
+    <div class="right" v-if="isShowTinymceEditorCom">
       <DicCard
         :batchCode="initBatchCode"
         :analysisTypeCode="analysisTypeCode"
@@ -129,6 +129,10 @@ export default {
       default: "",
       type: String,
     },
+    isShowTinymceEditorCom: {
+      default: true,
+      type: Boolean,
+    },
     isShow: {
       default: false,
       type: Boolean,

+ 12 - 4
src/views/overview/components/yaw_error/index.vue

@@ -1,7 +1,7 @@
 <!--
  * @Author: your name
  * @Date: 2025-01-10 09:24:14
- * @LastEditTime: 2025-02-10 14:54:51
+ * @LastEditTime: 2025-02-12 17:09:14
  * @LastEditors: bogon
  * @Description: In User Settings Edit
  * @FilePath: /performance-test/src/views/overview/components/yaw_error/index.vue
@@ -38,8 +38,12 @@
       <div v-if="zongFaultCsvData.length > 0">
         <yawErrorBarChart
           :zongFaultCsvData="zongFaultCsvData"
+          :index="`${new Date().getTime()}`"
         ></yawErrorBarChart>
-        <yawErrorBarSum :zongFaultCsvData="zongFaultCsvData"></yawErrorBarSum>
+        <yawErrorBarSum
+          :zongFaultCsvData="zongFaultCsvData"
+          :index="`${new Date().getTime()}`"
+        ></yawErrorBarSum>
         <template v-for="(itemCsv, indCsv) in zongFaultCsvData">
           <el-table
             :key="indCsv + 'indCsv'"
@@ -72,7 +76,7 @@
         <div v-for="(item, index) in fenFaultCsvData">
           <yawErrorLine
             :key="item.fieldEngineCode + index"
-            :index="index"
+            :index="`${new Date().getTime()}` + index"
             :ref="item.fieldEngineCode"
             :fileAddr="item.fileAddr"
           >
@@ -119,7 +123,7 @@
         </el-row>
       </el-dialog>
     </div>
-    <div class="right">
+    <div class="right" v-if="isShowTinymceEditorCom">
       <DicCard
         :batchCode="initBatchCode"
         :analysisTypeCode="analysisTypeCode"
@@ -161,6 +165,10 @@ export default {
       default: "",
       type: String,
     },
+    isShowTinymceEditorCom: {
+      default: true,
+      type: Boolean,
+    },
     isShow: {
       default: false,
       type: Boolean,

+ 8 - 3
src/views/overview/components/yaw_error_density/index.vue

@@ -1,7 +1,7 @@
 <!--
  * @Author: your name
  * @Date: 2025-01-10 09:26:12
- * @LastEditTime: 2025-02-10 14:54:59
+ * @LastEditTime: 2025-02-12 17:14:59
  * @LastEditors: bogon
  * @Description: In User Settings Edit
  * @FilePath: /performance-test/src/views/overview/components/yaw_error_density/index.vue
@@ -34,9 +34,10 @@
         :list="diagramRelationsDatas"
         keyField="fieldEngineCode"
         :itemSize="452"
-        v-slot="{ item }"
+        v-slot="{ item, index }"
       >
         <TwoDMarkersChart
+          :index="index + item.fieldEngineCode"
           :key="item.fieldEngineCode"
           :ref="item.fieldEngineCode"
           :fileAddr="item.fileAddr"
@@ -87,7 +88,7 @@
         </el-row>
       </el-dialog>
     </div>
-    <div class="right">
+    <div class="right" v-if="isShowTinymceEditorCom">
       <DicCard
         :batchCode="initBatchCode"
         :analysisTypeCode="analysisTypeCode"
@@ -120,6 +121,10 @@ export default {
       default: "",
       type: String,
     },
+    isShowTinymceEditorCom: {
+      default: true,
+      type: Boolean,
+    },
     analysisTypeCode: {
       default: "",
       type: String,

+ 47 - 1
src/views/overview/index.vue

@@ -98,6 +98,7 @@
           @setInitBathCode="setInitBathCode"
           @setIsShow="setIsShow"
           :isShow="isShow"
+          :isShowTinymceEditorCom="true"
         ></component>
       </keep-alive>
     </div>
@@ -118,6 +119,28 @@
       </el-tooltip>
     </div>
 
+    <el-dialog
+      :title="dialogInitBatchCode"
+      :visible="isShowComment"
+      width="40%"
+      v-dialogDrag
+      :modal="false"
+      :lock-scroll="false"
+      :modal-append-to-body="false"
+      @close="handleClose"
+    >
+      <component
+        :ref="analysisTypeCode"
+        :is="currentComponent"
+        :initBatchCode="dialogInitBatchCode"
+        :analysisTypeCode="analysisTypeCode"
+        :batchCodeList="batchCodeList"
+        @setInitBathCode="setInitBathCode"
+        @setIsShow="setIsShow"
+        :isShow="isShow"
+        :isShowTinymceEditorCom="false"
+      ></component>
+    </el-dialog>
     <!-- <el-empty description="暂无数据"></el-empty> -->
   </div>
 </template>
@@ -132,11 +155,13 @@ export default {
       filterText: "",
       data: [],
       isShow: false, //控制评论框是否显示
+      isShowComment: false, //控制上一条、下一条是否显示
       // 用于控制是否展开/收起
       isExpanded: false,
       expandedKeys: [], //默认展开的节点
       batchCodeList: [], //批次数组用于切换上一条、下一条
       initBatchCode: "", // 初始化分析编号
+      dialogInitBatchCode: "",
       analysisTypeCode: "", // 当前选中的分析类型
       windEngineGroupList: "", //风机编码
       defaultProps: {
@@ -290,7 +315,14 @@ export default {
       return data.fieldOrCompanyName.indexOf(value) !== -1;
     },
     setInitBathCode(val) {
-      this.initBatchCode = val;
+      // this.initBatchCode = val;
+      this.isShowComment = true;
+      this.dialogInitBatchCode = val;
+    },
+
+    // 关闭上一条、下一条弹窗展示组件设置
+    handleClose() {
+      this.isShowComment = false;
     },
     // 菜单选中项的事件
     handleSelect(key, keyPath) {
@@ -407,4 +439,18 @@ export default {
     padding: 0 10px !important;
   }
 }
+.el-dialog__wrapper {
+  position: relative !important;
+}
+::v-deep .el-dialog {
+  position: fixed !important;
+  z-index: 999 !important;
+  top: 50%;
+  left: 50%;
+  transform: translate(0, -50%);
+}
+::v-deep .el-dialog__body {
+  overflow-y: scroll;
+  height: 95vh;
+}
 </style>

+ 2 - 2
src/views/performance/components/chartsCom/BarChart.vue

@@ -1,7 +1,7 @@
 <!--
  * @Author: your name
  * @Date: 2024-09-11 14:30:17
- * @LastEditTime: 2025-02-10 16:01:39
+ * @LastEditTime: 2025-02-12 15:17:36
  * @LastEditors: bogon
  * @Description: In User Settings Edit
  * @FilePath: /performance-test/src/views/performance/components/chartsCom/BarChart.vue
@@ -53,7 +53,7 @@ export default {
     inds: {
       type: String,
       default() {
-        return 0;
+        return "0";
       },
     },
   },

+ 2 - 151
src/views/performance/components/chartsCom/BoxLineCharts.vue

@@ -1,160 +1,11 @@
 <!--
  * @Author: your name
  * @Date: 2024-09-11 14:32:51
- * @LastEditTime: 2025-01-22 17:38:59
+ * @LastEditTime: 2025-02-12 15:13:16
  * @LastEditors: bogon
  * @Description: In User Settings Edit
  * @FilePath: /performance-test/src/views/performance/components/chartsCom/BoxLineCharts.vue
 -->
-<!-- <template>
-  <div> -->
-<!-- boxLineCharts -->
-<!-- <h1>额定功率和风速分析</h1> -->
-<!-- <div
-      :id="`plotDivAbove25-${inds}`"
-      style="width: 100%; height: 550px"
-    ></div> -->
-<!-- <div
-      :id="`plotDivBelow25-${index}`"
-      style="width: 100%; height: 550px"
-    ></div> -->
-<!-- <div :id="`chart-${inds}`" style="width: 100%; height: 550px"></div> -->
-<!-- </div>
-</template> -->
-<!-- <script>
-import { allTypesDatas } from "@/utils/allTypesOfAnalysisData.js";
-import Plotly from "plotly.js-dist";
-export default {
-  props: {
-    fileAddr: {
-      default: "",
-      type: String,
-    },
-    index: {
-      type: Number,
-    },
-  },
-  data() {
-    return {
-      chartData: {},
-      turbinesData: [
-        { turbine: "Turbine1", envTemp: 26, windSpeed: 12, activePower: 1200 },
-        { turbine: "Turbine1", envTemp: 26, windSpeed: 12, activePower: 1800 },
-        { turbine: "Turbine1", envTemp: 26, windSpeed: 12, activePower: 1100 },
-        { turbine: "Turbine1", envTemp: 26, windSpeed: 12, activePower: 1400 },
-        { turbine: "Turbine1", envTemp: 26, windSpeed: 12, activePower: 1500 },
-        { turbine: "Turbine1", envTemp: 26, windSpeed: 12, activePower: 1700 },
-        { turbine: "Turbine1", envTemp: 26, windSpeed: 12, activePower: 1350 },
-        { turbine: "Turbine2", envTemp: 26, windSpeed: 11, activePower: 1150 },
-        { turbine: "Turbine2", envTemp: 26, windSpeed: 11, activePower: 1150 },
-        { turbine: "Turbine2", envTemp: 26, windSpeed: 11, activePower: 1450 },
-        { turbine: "Turbine2", envTemp: 26, windSpeed: 11, activePower: 1850 },
-        { turbine: "Turbine2", envTemp: 26, windSpeed: 11, activePower: 1950 },
-        { turbine: "Turbine2", envTemp: 26, windSpeed: 11, activePower: 1250 },
-        { turbine: "Turbine2", envTemp: 26, windSpeed: 11, activePower: 1350 },
-        { turbine: "Turbine3", envTemp: 26, windSpeed: 13, activePower: 1250 },
-        { turbine: "Turbine3", envTemp: 26, windSpeed: 12, activePower: 1800 },
-        { turbine: "Turbine3", envTemp: 26, windSpeed: 12, activePower: 1100 },
-        { turbine: "Turbine3", envTemp: 26, windSpeed: 12, activePower: 1400 },
-        { turbine: "Turbine3", envTemp: 26, windSpeed: 12, activePower: 1500 },
-        { turbine: "Turbine3", envTemp: 26, windSpeed: 12, activePower: 1700 },
-        { turbine: "Turbine3", envTemp: 26, windSpeed: 12, activePower: 1350 },
-        { turbine: "Turbine4", envTemp: 26, windSpeed: 10, activePower: 1100 },
-        { turbine: "Turbine4", envTemp: 26, windSpeed: 10, activePower: 1300 },
-        { turbine: "Turbine4", envTemp: 26, windSpeed: 10, activePower: 1500 },
-        { turbine: "Turbine4", envTemp: 26, windSpeed: 10, activePower: 1700 },
-        { turbine: "Turbine4", envTemp: 26, windSpeed: 10, activePower: 1200 },
-        { turbine: "Turbine4", envTemp: 26, windSpeed: 10, activePower: 1300 },
-        { turbine: "Turbine5", envTemp: 28, windSpeed: 14, activePower: 1200 },
-        { turbine: "Turbine5", envTemp: 28, windSpeed: 14, activePower: 1300 },
-        { turbine: "Turbine5", envTemp: 28, windSpeed: 14, activePower: 1400 },
-        { turbine: "Turbine5", envTemp: 28, windSpeed: 14, activePower: 1100 },
-        { turbine: "Turbine6", envTemp: 26, windSpeed: 10, activePower: 1300 },
-        { turbine: "Turbine6", envTemp: 26, windSpeed: 10, activePower: 1500 },
-        { turbine: "Turbine6", envTemp: 26, windSpeed: 10, activePower: 1700 },
-        { turbine: "Turbine6", envTemp: 26, windSpeed: 10, activePower: 1200 },
-        { turbine: "Turbine6", envTemp: 26, windSpeed: 10, activePower: 1300 },
-      ],
-    };
-  },
-  mounted() {
-    this.initcharts();
-  },
-  methods: {
-    initcharts() {
-      const lineDatas = allTypesDatas.filter(
-        (item) => item.analysisTypeCode === "rated_power_windspeed"
-      )[0];
-      const above25 = this.turbinesData.filter((d) => d.envTemp >= 25);
-      const below25 = this.turbinesData.filter((d) => d.envTemp < 25);
-
-      // 中位数计算
-      // const medians = this.calculateMedians();
-      const medians = [];
-      const turbineNames = Object.keys(medians);
-      const medianValues = Object.values(medians);
-      const traceAbove25 = {
-        y: above25.map((d) => d.activePower),
-        x: above25.map((d) => d.turbine),
-        type: "box",
-        fillcolor: "#1d90ff",
-        marker: {
-          line: {
-            color: "black",
-          },
-        },
-        whiskerwidth: 1,
-        boxpoints: "outliers",
-        line: {
-          color: "black",
-        },
-        showlegend: false,
-        name: "Ambient Temp >= 25°C",
-      };
-      const traceMedianLine = {
-        x: turbineNames,
-        y: medianValues,
-        mode: "markers",
-        marker: { symbol: "line-ew-open", color: "red", size: 10 },
-        showlegend: false,
-      };
-      const layoutAbove25 = {
-        ...lineDatas.lableConfig,
-        title: "额定全风速10min配电 (环境温度 < 25°C)",
-        autosize: true, // 开启自适应
-      };
-
-      Plotly.newPlot(
-        `plotDivAbove25-${this.inds}`,
-        [traceAbove25, traceMedianLine],
-        layoutAbove25,
-        {
-          responsive: true,
-        }
-      );
-    },
-    // //中位值的计算
-    // calculateMedians() {
-    //   const medians = this.turbinesData.reduce((acc, d) => {
-    //     if (!acc[d.turbine]) acc[d.turbine] = [];
-    //     acc[d.turbine].push(d.activePower);
-    //     return acc;
-    //   }, {});
-
-    //   for (let turbine in medians) {
-    //     const values = medians[turbine].sort((a, b) => a - b);
-    //     const middle = Math.floor(values.length / 2);
-    //     medians[turbine] =
-    //       values.length % 2 === 0
-    //         ? (values[middle - 1] + values[middle]) / 2
-    //         : values[middle];
-    //   }
-    //   return medians;
-    // },
-  },
-};
-</script>
-<style scoped></style> -->
 <template>
   <div>
     <!-- boxLineCharts -->
@@ -180,7 +31,7 @@ export default {
       type: String,
     },
     index: {
-      type: Number,
+      type: String,
     },
   },
   data() {

+ 3 - 3
src/views/performance/components/chartsCom/BoxMarkersCharts.vue

@@ -1,7 +1,7 @@
 <!--
  * @Author: your name
  * @Date: 2024-09-11 14:36:31
- * @LastEditTime: 2025-01-21 18:55:00
+ * @LastEditTime: 2025-02-12 15:17:50
  * @LastEditors: bogon
  * @Description: In User Settings Edit
  * @FilePath: /performance-test/src/views/performance/components/chartsCom/BoxMarkersCharts.vue
@@ -40,7 +40,7 @@ export default {
       type: String,
     },
     index: {
-      type: Number,
+      type: String,
     },
   },
   data() {
@@ -99,7 +99,7 @@ export default {
             y: group.medians.y,
             mode: group.medians.mode,
             marker: {
-              color:"#406DAB",
+              color: "#406DAB",
               // color: group.medians.color,
               size: group.medians.size,
             },

+ 3 - 3
src/views/performance/components/chartsCom/GeneratorTemperature.vue

@@ -1,7 +1,7 @@
 <!--
  * @Author: your name
  * @Date: 2025-01-21 11:18:49
- * @LastEditTime: 2025-01-21 15:40:55
+ * @LastEditTime: 2025-02-12 15:18:54
  * @LastEditors: bogon
  * @Description: In User Settings Edit
  * @FilePath: /performance-test/src/views/performance/components/chartsCom/GeneratorTemperature.vue
@@ -50,9 +50,9 @@ export default {
       default: "",
     },
     index: {
-      type: Number,
+      type: String,
       default() {
-        return 0;
+        return "";
       },
     },
   },

+ 3 - 4
src/views/performance/components/chartsCom/HeatmapCharts.vue

@@ -1,21 +1,20 @@
 <template>
-  <div>
+  <div :class="inds">
     <div :id="`chart-${inds}`" style="width: 100%; height: 450px"></div>
   </div>
 </template>
 
 <script>
 import { nextTick } from "vue"; // 导入 nextTick
-import { allTypesDatas } from "@/utils/allTypesOfAnalysisData.js";
 import Plotly from "plotly.js-dist";
 import axios from "axios";
 
 export default {
   props: {
     inds: {
-      type: Number,
+      type: String,
       default() {
-        return 0;
+        return "0";
       },
     },
     fileAddr: {

+ 2 - 2
src/views/performance/components/chartsCom/NoColourBandTwoDMarkerChart.vue

@@ -1,7 +1,7 @@
 <!--
  * @Author: your name
  * @Date: 2025-01-17 17:22:04
- * @LastEditTime: 2025-01-22 09:20:14
+ * @LastEditTime: 2025-02-12 15:22:42
  * @LastEditors: bogon
  * @Description: In User Settings Edit
  * @FilePath: /performance-test/src/views/performance/components/chartsCom/NoColourBandTwoDMarkerChart.vue
@@ -50,7 +50,7 @@ export default {
       type: String,
     },
     index: {
-      type: Number,
+      type: String,
     },
   },
   data() {

+ 16 - 4
src/views/performance/components/chartsCom/TwoDMarkersChart.vue

@@ -23,7 +23,11 @@
         </div>
       </div>
       <!-- <div v-loading="$parent.requestRecord[index] === 'start'"> -->
-      <div v-loading="loading" ref="plotlyChart" style="height: 400px">
+      <div
+        v-loading="loading"
+        :ref="`plotlyChart-${index}`"
+        style="height: 400px"
+      >
         <el-empty v-if="isError" description="请求失败"></el-empty>
       </div>
       <!-- </div> -->
@@ -42,6 +46,9 @@ export default {
       default: "",
       type: String,
     },
+    index: {
+      type: String,
+    },
   },
   data() {
     return {
@@ -101,7 +108,7 @@ export default {
       }
     },
     drawChart() {
-      if (!this.$refs.plotlyChart) {
+      if (!this.$refs[`plotlyChart-${this.index}`]) {
         return false;
       }
       const data = this.chartData.data && this.chartData.data[0];
@@ -215,9 +222,14 @@ export default {
         scrollZoom: false,
       };
       // 使用 Plotly 绘制图表
-      Plotly.react(this.$refs.plotlyChart, [trace], layout, config).then(() => {
+      Plotly.react(
+        this.$refs[`plotlyChart-${this.index}`],
+        [trace],
+        layout,
+        config
+      ).then(() => {
         // 确保在图表加载完成后设置工具栏按钮
-        const plotElement = this.$refs.plotlyChart;
+        const plotElement = this.$refs[`plotlyChart-${this.index}`];
         Plotly.relayout(plotElement, layout); // 使用 relayout 来确保自定义按钮应用
       });
     },

+ 5 - 2
src/views/performance/components/chartsCom/YewErrorBarChart.vue

@@ -21,7 +21,7 @@
     <!-- 图表容器 -->
     <div
       v-loading="loading"
-      :id="`bar-chart-sum`"
+      :id="`bar-chart-sum` + index"
       style="width: 100%; height: 400px"
     >
       <el-empty v-if="isError" description="请求失败"></el-empty>
@@ -41,6 +41,9 @@ export default {
       default: [],
       type: Array,
     },
+    index: {
+      type: String,
+    },
   },
   mixins: [myMixin],
   data() {
@@ -178,7 +181,7 @@ export default {
 
       // 渲染图表
       Plotly.newPlot(
-        `bar-chart-sum`,
+        `bar-chart-sum` + this.index,
         [trace, legendTrace1, legendTrace2, legendTrace3],
         layout,
         {

+ 2 - 2
src/views/performance/components/chartsCom/lineAndChildLine.vue

@@ -42,9 +42,9 @@ export default {
       default: "",
     },
     index: {
-      type: Number,
+      type: String,
       default() {
-        return 0;
+        return "0";
       },
     },
   },

+ 3 - 3
src/views/performance/components/chartsCom/lineChartsFen.vue

@@ -1,7 +1,7 @@
 <!--
  * @Author: your name
  * @Date: 2025-01-20 11:41:41
- * @LastEditTime: 2025-01-20 14:21:32
+ * @LastEditTime: 2025-02-12 15:15:10
  * @LastEditors: bogon
  * @Description: In User Settings Edit
  * @FilePath: /performance-test/src/views/performance/components/chartsCom/lineChartsFen.vue
@@ -50,9 +50,9 @@ export default {
       default: "",
     },
     index: {
-      type: Number,
+      type: String,
       default() {
-        return 0;
+        return "0";
       },
     },
     fieldEngineCode: {

+ 14 - 134
src/views/performance/components/chartsCom/powerMarkers2DCharts.vue

@@ -1,7 +1,7 @@
 <!--
  * @Author: your name
  * @Date: 2024-09-11 14:32:12
- * @LastEditTime: 2025-01-22 09:21:52
+ * @LastEditTime: 2025-02-12 16:27:11
  * @LastEditors: bogon
  * @Description: In User Settings Edit
  * @FilePath: /performance-test/src/views/performance/components/chartsCom/powerMarkers2DCharts.vue
@@ -11,136 +11,7 @@
 <!-- powerMarkers2DCharts
     <h1>逐月有功功率散点2D分析</h1> -->
 <!-- <h1>偏航控制策略异常检测 2D</h1>  目前没找到这个分析类型-->
-<!-- <div :id="`chart-${inds}`" style="width: 100%; height: 550px"></div>
-  </div> -->
-<!-- </template>
-<script>
-import { allTypesDatas } from "@/utils/allTypesOfAnalysisData.js";
-import Plotly from "plotly.js-dist";
-
-export default {
-  props: {
-    inds: {
-      type: [Number, String],
-      default: 1,
-    },
-  },
-  mounted() {
-    this.initcharts();
-  },
-  methods: {
-    initcharts() {
-      const lineDatas = allTypesDatas.filter(
-        (item) => item.analysisTypeCode === "power_scatter_2D"
-      )[0];
-
-      if (lineDatas) {
-        this.createScatterPlot(lineDatas);
-      }
-    },
-
-    createScatterPlot(lineDatas) {
-      const generateData = (count) => {
-        const windSpeed = Array.from({ length: count }, (_, i) => i + 1);
-        const activePower = Array.from(
-          { length: count },
-          () => Math.random() * 600
-        );
-        //时间决定散点颜色,
-        const monthIntTime = Array.from(
-          { length: count },
-          (_, i) => Math.floor(Date.now() / 1000) - i * 2629743
-        );
-
-        return { windSpeed, activePower, monthIntTime };
-      };
-
-      const turbineData = {
-        name: lineDatas.name || "Turbine2",
-        ...generateData(100),
-      };
-
-      const guaranteePowerCurve = {
-        windSpeed: Array.from({ length: 100 }, (_, i) => i + 1),
-        activePower: Array.from({ length: 100 }, (_, i) =>
-          Math.floor(Math.random() * 600 - 1)
-        ),
-      };
-
-      const trace1 = {
-        x: turbineData.windSpeed,
-        y: turbineData.activePower,
-        mode: "markers",
-        marker: {
-          color: turbineData.monthIntTime,
-          colorscale: "Rainbow",
-          size: 10,
-          opacity: 0.7,
-          colorbar: {
-            tickvals: turbineData.monthIntTime.filter((_, i) => i % 20 === 0),
-            ticktext: turbineData.monthIntTime
-              .filter((_, i) => i % 20 === 0)
-              .map((ts) => new Date(ts * 1000).toISOString().slice(0, 7)),
-            thickness: 18,
-            len: 1,
-            outlinecolor: "rgba(255,255,255,0)",
-          },
-        },
-        type: "scatter",
-        showlegend: false,
-      };
 
-      const trace2 = {
-        x: guaranteePowerCurve.windSpeed,
-        y: guaranteePowerCurve.activePower,
-        mode: "lines+markers",
-        marker: { color: "gray", size: 7 },
-        name: "Contract Guarantee Power Curve",
-        type: "scatter",
-      };
-
-      const layout = {
-        title: lineDatas.lableConfig.title,
-        plot_bgcolor: "#e5ecf6",
-        xaxis: {
-          title: lineDatas.lableConfig.xaxis.title,
-          tickvals: turbineData.windSpeed.filter((_, i) => i % 10 === 0),
-          ticktext: turbineData.windSpeed
-            .filter((_, i) => i % 10 === 0)
-            .map((ws) => ws.toFixed(1)),
-          tickmode: "array",
-          gridcolor: "rgb(255,255,255)",
-          showgrid: true,
-          zeroline: false,
-          tickcolor: "rgb(255,255,255)",
-          tickangle: -45,
-        },
-        yaxis: {
-          title: lineDatas.lableConfig.yaxis.title,
-          tickvals: Array.from({ length: 7 }, (_, i) => i * 100),
-          ticktext: Array.from({ length: 7 }, (_, i) => (i * 100).toString()),
-          tickmode: "array",
-          gridcolor: "rgb(255,255,255)",
-          showgrid: true,
-          zeroline: false,
-          tickcolor: "rgb(255,255,255)",
-        },
-        legend: {
-          yanchor: "bottom",
-          y: 0,
-          xanchor: "right",
-          x: 1,
-          bgcolor: "rgba(0, 0, 0, 0)",
-        },
-      };
-
-      Plotly.newPlot(`chart-${this.inds}`, [trace1, trace2], layout);
-    },
-  },
-};
-</script> -->
-
-<!-- <style scoped></style> -->
 <template>
   <div style="min-height: 300px">
     <!-- 2D散点图 -->
@@ -156,7 +27,11 @@ export default {
           <span style="margin-left: 10px">自定义颜色</span>
         </div>
       </div>
-      <div v-loading="loading" ref="plotlyChart" style="height: 400px">
+      <div
+        v-loading="loading"
+        :ref="`plotlyChart-${index}`"
+        style="height: 400px"
+      >
         <el-empty v-if="isError" description="请求失败"></el-empty>
       </div>
     </template>
@@ -176,7 +51,7 @@ export default {
       type: String,
     },
     index: {
-      type: Number,
+      type: String,
     },
   },
   data() {
@@ -333,9 +208,14 @@ export default {
       if (lineTrace) traces.push(lineTrace); // 如果有线图数据
 
       // 使用 Plotly 绘制图表
-      Plotly.react(this.$refs.plotlyChart, traces, layout, config).then(() => {
+      Plotly.react(
+        this.$refs[`plotlyChart-${this.index}`],
+        traces,
+        layout,
+        config
+      ).then(() => {
         // 确保在图表加载完成后设置工具栏按钮
-        const plotElement = this.$refs.plotlyChart;
+        const plotElement = this.$refs[`plotlyChart-${this.index}`];
         Plotly.relayout(plotElement, layout); // 使用 relayout 来确保自定义按钮应用
       });
     },

+ 5 - 2
src/views/performance/components/chartsCom/yawErrorBarSum.vue

@@ -21,7 +21,7 @@
     <!-- 图表容器 -->
     <div
       v-loading="loading"
-      :id="`bar-chart-sums`"
+      :id="`bar-chart-sums` + index"
       style="width: 100%; height: 400px"
     >
       <el-empty v-if="isError" description="请求失败"></el-empty>
@@ -41,6 +41,9 @@ export default {
       default: [],
       type: Array,
     },
+    index: {
+      type: String,
+    },
   },
   mixins: [myMixin],
   data() {
@@ -135,7 +138,7 @@ export default {
       };
 
       // 渲染图表
-      Plotly.newPlot(`bar-chart-sums`, [trace], layout, {
+      Plotly.newPlot(`bar-chart-sums` + this.index, [trace], layout, {
         responsive: true,
       });
     },

+ 3 - 3
src/views/performance/components/chartsCom/yawErrorLine.vue

@@ -1,7 +1,7 @@
 <!--
  * @Author: your name
  * @Date: 2025-01-22 09:42:59
- * @LastEditTime: 2025-01-22 13:59:21
+ * @LastEditTime: 2025-02-12 15:24:21
  * @LastEditors: bogon
  * @Description: In User Settings Edit
  * @FilePath: /performance-test/src/views/performance/components/chartsCom/yawErrorLine.vue
@@ -41,9 +41,9 @@ export default {
       default: "",
     },
     index: {
-      type: Number,
+      type: String,
       default() {
-        return 0;
+        return "0";
       },
     },
   },