From de50dae9558f8872b05b1a05b2d88461683189c4 Mon Sep 17 00:00:00 2001
From: 潘晓明 <hahagongzi2006@163.com>
Date: 星期四, 13 二月 2025 18:37:57 +0800
Subject: [PATCH] Merge remote-tracking branch 'refs/remotes/origin/develop1.0' into pxm_from_develop1.0

---
 zhitan-vue/src/views/comprehensive/monthlyComprehensive/index.vue                              |    3 
 zhitan-vue/src/views/comprehensive/yearComprehensive/index.vue                                 |    2 
 zhitan-vue/src/views/costAnalysis/cost-trend-analysis.vue                                      |  231 +++++++------
 zhitan-vue/src/views/realtimemonitor/realtimemonitor/realtimemonitor.vue                       |  126 ++++---
 zhitan-vue/src/views/energyefficiency/benchmarkmanage/benchmarkmanage.vue                      |  198 ++++++-----
 zhitan-vue/src/views/dataMonitoring/historyDataTrend/index.vue                                 |   11 
 zhitan-vue/src/views/modelconfiguration/indexwarehouse/indexWarehouse.vue                      |  161 +++++----
 zhitan-admin/src/main/java/com/zhitan/web/controller/saving/EnergySavingProgramController.java |    6 
 zhitan-vue/src/views/businessconfiguration/gatewayledger/gatewayLedger.vue                     |  199 ++++++-----
 zhitan-vue/src/views/peakvalley/period/period.vue                                              |    9 
 10 files changed, 504 insertions(+), 442 deletions(-)

diff --git a/zhitan-admin/src/main/java/com/zhitan/web/controller/saving/EnergySavingProgramController.java b/zhitan-admin/src/main/java/com/zhitan/web/controller/saving/EnergySavingProgramController.java
index 69c3440..a26fef2 100644
--- a/zhitan-admin/src/main/java/com/zhitan/web/controller/saving/EnergySavingProgramController.java
+++ b/zhitan-admin/src/main/java/com/zhitan/web/controller/saving/EnergySavingProgramController.java
@@ -36,7 +36,7 @@
      * 鍒楄〃
      */
     @GetMapping("/page")
-    @PreAuthorize("@ss.hasPermi('energySavingProject:list')")
+    @PreAuthorize("@ss.hasPermi('energySavingProject:Project:list')")
     @ApiOperation(value = "鍒嗛〉鍒楄〃")
     public TableDataInfo list(EnergySavingProgram energySavingProgram) {
         Page<EnergySavingProgramVO> list = energySavingProgramService.selectEnergySavingProgramList(energySavingProgram);
@@ -50,7 +50,6 @@
      * 璇︾粏淇℃伅
      */
     @ApiOperation(value = "鏌ヨ璇︽儏")
-    @PreAuthorize("@ss.hasPermi('energySavingProject')")
     @GetMapping(value = "getById")
     public AjaxResult getInfo(@RequestParam("id") Long id) {
         return success(energySavingProgramService.selectEnergySavingProgramById(id));
@@ -61,6 +60,7 @@
      * 鑺傝兘椤圭洰绠$悊
      */
     @ApiOperation(value = "鏂板")
+    @PreAuthorize("@ss.hasPermi('energySavingProject:Project:add')")
     @PostMapping("add")
     public AjaxResult add(  @RequestBody EnergySavingProgramDTO dto) {
         return energySavingProgramService.insertEnergySavingProgram(dto);
@@ -71,6 +71,7 @@
      * 鑺傝兘椤圭洰绠$悊
      */
     @ApiOperation(value = "鏇存柊")
+    @PreAuthorize("@ss.hasPermi('energySavingProject:Project:edit')")
     @PostMapping("edit")
     public AjaxResult edit(@RequestBody EnergySavingProgramDTO dto) {
         return energySavingProgramService.updateEnergySavingProgram(dto);
@@ -81,6 +82,7 @@
      * 鑺傝兘椤圭洰绠$悊
      */
     @DeleteMapping("del/{id}")
+    @PreAuthorize("@ss.hasPermi('energySavingProject:Project:del')")
     @ApiOperation(value = "鍒犻櫎")
     public AjaxResult remove(@PathVariable  Long id) {
         return energySavingProgramService.deleteEnergySavingProgramById(id);
diff --git a/zhitan-vue/src/views/businessconfiguration/gatewayledger/gatewayLedger.vue b/zhitan-vue/src/views/businessconfiguration/gatewayledger/gatewayLedger.vue
index 1cdeb7f..a7f3304 100644
--- a/zhitan-vue/src/views/businessconfiguration/gatewayledger/gatewayLedger.vue
+++ b/zhitan-vue/src/views/businessconfiguration/gatewayledger/gatewayLedger.vue
@@ -1,131 +1,140 @@
 <template>
-    <div class="page">
-        <div class="form-card">
-            <el-form :inline="true">
-                <el-form-item label="缃戝叧鏁伴噺:" class="header-box">
-                    {{ total }}
-                </el-form-item>
-                <el-form-item label="璁¢噺鍣ㄥ叿鏁伴噺:" class="header-box">
-                    {{ statistics.deviceNum }}
-                </el-form-item>
-                <el-form-item label="娴嬬偣鏁伴噺:" class="header-box">
-                    {{ statistics.ptNum }}
-                </el-form-item>
-            </el-form>
-        </div>
-        <div class="table-box">
-            <div class="mt20 mb20">
-                <el-button type="primary" icon="plus" @click="handleAdd">鏂板</el-button>
-                <el-button type="primary" icon="Download" @click="handleExport">瀵煎嚭</el-button>
-            </div>
-            <el-table :data="tableData" v-loading="loading">
-                <el-table-column prop="gatewayNum" label="缃戝叧缂栧彿" show-overflow-tooltip align="center" />
-                <el-table-column prop="gatewayName" label="缃戝叧鍚嶇О" show-overflow-tooltip align="center" />
-                <el-table-column prop="specsModel" label="瑙勬牸鍨嬪彿" show-overflow-tooltip align="center" />
-                <el-table-column prop="installLocation" label="瀹夎浣嶇疆" show-overflow-tooltip align="center" />
-                <el-table-column prop="ipAdd" label="IP鍦板潃" show-overflow-tooltip align="center" />
-                <el-table-column prop="runStatus" label="杩愯鐘舵��" show-overflow-tooltip align="center" />
-                <el-table-column prop="deviceNum" label="璁¢噺鍣ㄥ叿鏁伴噺" show-overflow-tooltip align="center" />
-                <el-table-column prop="ptNum" label="閲囬泦娴嬬偣鏁伴噺" show-overflow-tooltip align="center" />
-                <el-table-column label="鎿嶄綔" width="300" align="center">
-                    <template #default="scope">
-                        <el-button link type="primary" icon="Edit" @click="handleAdd(scope.row)">
-                            淇敼
-                        </el-button>
-                        <el-button link type="primary" icon="Delete" @click="handleDelete(scope.row)">
-                            鍒犻櫎
-                        </el-button>
-                    </template>
-                </el-table-column>
-            </el-table>
-            <pagination v-show="total > 0" :total="total" v-model:page="queryParams.pageNum"
-                v-model:limit="queryParams.pageSize" @pagination="getList" />
-        </div>
-        <edit-modal ref="EditModalRef" @getList="getList(1)" />
+  <div class="page">
+    <div class="form-card">
+      <el-form :inline="true">
+        <el-form-item label="缃戝叧鏁伴噺:" class="header-box">
+          <span class="count">{{ total || 0 }}</span>
+        </el-form-item>
+        <el-form-item label="璁¢噺鍣ㄥ叿鏁伴噺:" class="header-box">
+          <span class="count">{{ deviceNum || 0 }}</span>
+        </el-form-item>
+        <el-form-item label="娴嬬偣鏁伴噺:" class="header-box">
+          <span class="count">{{ ptNum || 0 }}</span>
+        </el-form-item>
+      </el-form>
     </div>
+    <div class="table-bg-style">
+      <div class="theme-dark-mt20 mb20 ml20">
+        <el-button type="primary" icon="plus" @click="handleAdd">鏂板</el-button>
+        <el-button type="primary" icon="Download" @click="handleExport">瀵煎嚭</el-button>
+      </div>
+
+      <div class="table-box">
+        <el-table :data="tableData" v-loading="loading">
+          <el-table-column prop="gatewayNum" label="缃戝叧缂栧彿" show-overflow-tooltip align="center" />
+          <el-table-column prop="gatewayName" label="缃戝叧鍚嶇О" show-overflow-tooltip align="center" />
+          <el-table-column prop="specsModel" label="瑙勬牸鍨嬪彿" show-overflow-tooltip align="center" />
+          <el-table-column prop="installLocation" label="瀹夎浣嶇疆" show-overflow-tooltip align="center" />
+          <el-table-column prop="ipAdd" label="IP鍦板潃" show-overflow-tooltip align="center" />
+          <el-table-column prop="runStatus" label="杩愯鐘舵��" show-overflow-tooltip align="center" />
+          <el-table-column prop="deviceNum" label="璁¢噺鍣ㄥ叿鏁伴噺" show-overflow-tooltip align="center" />
+          <el-table-column prop="ptNum" label="閲囬泦娴嬬偣鏁伴噺" show-overflow-tooltip align="center" />
+          <el-table-column label="鎿嶄綔" width="300" align="center">
+            <template #default="scope">
+              <el-button link type="primary" icon="Edit" @click="handleAdd(scope.row)"> 淇敼 </el-button>
+              <el-button link type="primary" icon="Delete" @click="handleDelete(scope.row)"> 鍒犻櫎 </el-button>
+            </template>
+          </el-table-column>
+        </el-table>
+        <pagination
+          v-show="total > 0"
+          :total="total"
+          v-model:page="queryParams.pageNum"
+          v-model:limit="queryParams.pageSize"
+          @pagination="getList"
+        />
+      </div>
+    </div>
+
+    <edit-modal ref="EditModalRef" @getList="getList(1)" />
+  </div>
 </template>
 
 <script setup>
-import EditModal from './components/EditModal.vue'
-import { gatewayStatistics, gatewayList, gatewayDel } from "@/api/businessConfiguration/gatewayLedger";
+import EditModal from "./components/EditModal.vue"
+import { gatewayStatistics, gatewayList, gatewayDel } from "@/api/businessConfiguration/gatewayLedger"
 let { proxy } = getCurrentInstance()
 
 let statistics = ref({
-    deviceNum: 0,
-    ptNum: 0
+  deviceNum: 0,
+  ptNum: 0,
 })
 function getGatewayStatisticsFun() {
-    gatewayStatistics().then(res => {
-        if (res.code == 200) {
-            if (res.data) {
-                statistics.value = res.data
-            }
-        }
-    })
+  gatewayStatistics().then((res) => {
+    if (res.code == 200) {
+      if (res.data) {
+        statistics.value = res.data
+      }
+    }
+  })
 }
 getGatewayStatisticsFun()
 
-
-let loading = ref(false);
-let total = ref(0);
+let loading = ref(false)
+let total = ref(0)
 let tableData = ref([])
 let queryParams = ref({
-    pageNum: 1,
-    pageSize: 10,
+  pageNum: 1,
+  pageSize: 10,
 })
 
 function getList(arg) {
-    if (arg == 1) {
-        queryParams.value.pageNum = 1
-    }
-    loading.value = true
-    gatewayList(queryParams.value).then(res => {
-        tableData.value = res.rows
-        total.value = res.total
-        loading.value = false
-    })
+  if (arg == 1) {
+    queryParams.value.pageNum = 1
+  }
+  loading.value = true
+  gatewayList(queryParams.value).then((res) => {
+    tableData.value = res.rows
+    total.value = res.total
+    loading.value = false
+  })
 }
 getList()
 
 function handleExport() {
-    proxy.download(
-        "gatewaySetting/export",
-        queryParams.value,
-        `缃戝叧鍙拌处${new Date().getTime()}.xlsx`
-    );
+  proxy.download("gatewaySetting/export", queryParams.value, `缃戝叧鍙拌处${new Date().getTime()}.xlsx`)
 }
 
-let EditModalRef = ref('')
+let EditModalRef = ref("")
 function handleAdd(row) {
-    if (EditModalRef.value) {
-        EditModalRef.value.handleOpen(row)
-    }
-
+  if (EditModalRef.value) {
+    EditModalRef.value.handleOpen(row)
+  }
 }
 
 function handleDelete(row) {
-    proxy.$modal
-        .confirm('鏄惁纭鍒犻櫎缃戝叧涓�"' + row.gatewayName + '"鐨勬暟鎹」锛�')
-        .then(function () {
-            return gatewayDel(row.id);
-        })
-        .then(() => {
-            getList(1);
-            proxy.$modal.msgSuccess("鍒犻櫎鎴愬姛");
-        })
-        .catch(() => { });
+  proxy.$modal
+    .confirm('鏄惁纭鍒犻櫎缃戝叧涓�"' + row.gatewayName + '"鐨勬暟鎹」锛�')
+    .then(function () {
+      return gatewayDel(row.id)
+    })
+    .then(() => {
+      getList(1)
+      proxy.$modal.msgSuccess("鍒犻櫎鎴愬姛")
+    })
+    .catch(() => {})
 }
 </script>
 
 <style lang="scss" scoped>
 @import "@/assets/styles/page.scss";
 
-
 .header-box {
-    :deep .el-form-item__content {
-        color: #fff;
-        font-size: 16px;
-    }
-
+  :deep .el-form-item__content {
+    color: #fff;
+    font-size: 16px;
+  }
 }
-</style>
\ No newline at end of file
+
+.themeDark {
+  .count {
+    color: #fff;
+  }
+}
+
+.themeLight {
+  .count {
+    color: #333;
+  }
+}
+</style>
diff --git a/zhitan-vue/src/views/comprehensive/monthlyComprehensive/index.vue b/zhitan-vue/src/views/comprehensive/monthlyComprehensive/index.vue
index c63c0fe..588b94d 100644
--- a/zhitan-vue/src/views/comprehensive/monthlyComprehensive/index.vue
+++ b/zhitan-vue/src/views/comprehensive/monthlyComprehensive/index.vue
@@ -69,10 +69,9 @@
             </template>
           </el-table-column>
           <el-table-column v-for="index in 31" :key="index" :label="index + '鏃�'" align="center" min-width="100">
-            <template #default="scope">{{ numFilter(scope.row[`value${index - 1}`]) }}</template>
+            <template #default="scope">{{ numFilter(scope.row[`value${index}`]) }}</template>
           </el-table-column>
         </el-table>
-
         <div>
           <line-chart ref="LineChartRef" :chartData="lineChartData" />
         </div>
diff --git a/zhitan-vue/src/views/comprehensive/yearComprehensive/index.vue b/zhitan-vue/src/views/comprehensive/yearComprehensive/index.vue
index 494e37a..1b4eb04 100644
--- a/zhitan-vue/src/views/comprehensive/yearComprehensive/index.vue
+++ b/zhitan-vue/src/views/comprehensive/yearComprehensive/index.vue
@@ -69,7 +69,7 @@
             </template>
           </el-table-column>
           <el-table-column v-for="index in 12" :key="index" :label="index + '鏈�'" align="center" min-width="100">
-            <template #default="scope">{{ numFilter(scope.row[`value${index - 1}`]) }}</template>
+            <template #default="scope">{{ numFilter(scope.row[`value${index}`]) }}</template>
           </el-table-column>
         </el-table>
 
diff --git a/zhitan-vue/src/views/costAnalysis/cost-trend-analysis.vue b/zhitan-vue/src/views/costAnalysis/cost-trend-analysis.vue
index 3ef3d1c..d3dc582 100644
--- a/zhitan-vue/src/views/costAnalysis/cost-trend-analysis.vue
+++ b/zhitan-vue/src/views/costAnalysis/cost-trend-analysis.vue
@@ -1,114 +1,110 @@
 <template>
   <div class="page">
-    <div class="page-container">
-      <div class="page-container-right">
-        <div>
-          <div class="form-card">
-            <el-form :model="queryParams" ref="queryRef" :inline="true">
-              <el-form-item label="鏈熼棿" prop="timeType">
-                <el-select
-                  v-model="queryParams.timeType"
-                  placeholder="鏈熼棿"
-                  clearable
-                  style="width: 120px"
-                  @change="handleTimeType"
-                >
-                  <el-option v-for="dict in period" :key="dict.value" :label="dict.label" :value="dict.value" />
-                </el-select>
-              </el-form-item>
-              <el-form-item label="鏃堕棿" prop="dataTime">
-                <el-date-picker
-                  v-model="queryParams.dataTime"
-                  :type="queryParams.timeType == 'YEAR' ? 'year' : queryParams.timeType == 'MONTH' ? 'month' : 'date'"
-                  :format="
-                    queryParams.timeType == 'YEAR' ? 'YYYY' : queryParams.timeType == 'MONTH' ? 'YYYY-MM' : 'YYYY-MM-DD'
-                  "
-                  value-format="YYYY-MM-DD"
-                  placeholder="鏃堕棿"
-                  style="width: 100%"
-                />
-              </el-form-item>
-              <el-form-item>
-                <el-button type="primary" icon="Search" @click="handleQuery"> 鎼滅储 </el-button>
-              </el-form-item>
-              <!-- <el-form-item>
+    <div>
+      <div class="form-card">
+        <el-form :model="queryParams" ref="queryRef" :inline="true">
+          <el-form-item label="鏈熼棿" prop="timeType">
+            <el-select
+              v-model="queryParams.timeType"
+              placeholder="鏈熼棿"
+              clearable
+              style="width: 120px"
+              @change="handleTimeType"
+            >
+              <el-option v-for="dict in period" :key="dict.value" :label="dict.label" :value="dict.value" />
+            </el-select>
+          </el-form-item>
+          <el-form-item label="鏃堕棿" prop="dataTime">
+            <el-date-picker
+              v-model="queryParams.dataTime"
+              :type="queryParams.timeType == 'YEAR' ? 'year' : queryParams.timeType == 'MONTH' ? 'month' : 'date'"
+              :format="
+                queryParams.timeType == 'YEAR' ? 'YYYY' : queryParams.timeType == 'MONTH' ? 'YYYY-MM' : 'YYYY-MM-DD'
+              "
+              value-format="YYYY-MM-DD"
+              placeholder="鏃堕棿"
+              style="width: 100%"
+            />
+          </el-form-item>
+          <el-form-item>
+            <el-button type="primary" icon="Search" @click="handleQuery"> 鎼滅储 </el-button>
+          </el-form-item>
+          <!-- <el-form-item>
               <el-button type="primary" icon="Download" @click="handleExport"> 瀵煎嚭 </el-button>
             </el-form-item> -->
-            </el-form>
-          </div>
-          <div style="margin-top: 16px">
-            <div class="" style="padding: 0 16px">
-              <el-table :data="tableData" v-loading="loading">
-                <el-table-column label="鏃堕棿" prop="dateCode" align="center" width="120" />
-                <el-table-column label="鎬昏垂鐢�(鍏�)" prop="total" align="center" width="120" />
-                <el-table-column :label="col.energyName" v-for="(col, index) in columns" :key="index" align="center">
-                  <el-table-column :prop="'energyTotal' + col.energyType" label="娑堣�楅噺" width="120" align="center" />
-                  <el-table-column :prop="'costTotal' + col.energyType" label="璐圭敤锛堝厓锛�" width="120" align="center" />
-                </el-table-column>
-              </el-table>
-            </div>
-          </div>
-          <div class="charts-view" v-loading="loading">
-            <el-row :gutter="2" class="" v-for="item in chartDataList" :key="item.energyType">
-              <el-col :span="12">
-                <BaseCard :title="item.costLabel + '(鍏�)'">
-                  <div class="">
-                    <LineChart
-                      :ref="'LineChartCostRef' + item.energyType"
-                      :domId="'costDom_' + item.energyType"
-                      :chartData="{
-                        title: item.costLabel,
-                        chartType: 'line',
-                        xAxis: item.costKeyList,
-                        series: [
-                          {
-                            name: item.costLabel,
-                            data: item.costValueList,
-                            markPoint: {
-                              data: [
-                                { type: 'max', name: 'Max' },
-                                { type: 'min', name: 'Min' },
-                              ],
-                            },
-                          },
-                        ],
-                      }"
-                    />
-                  </div>
-                </BaseCard>
-              </el-col>
-              <el-col :span="12">
-                <BaseCard :title="item.accumulationLabel + '(' + item.energyUnit + ')'">
-                  <div class="">
-                    <LineChart
-                      :ref="'LineChartaccumulationRef' + item.energyType"
-                      :domId="'accumulationDom_' + item.energyType"
-                      :chartType="'bar'"
-                      :chartData="{
-                        title: item.accumulationLabel,
-                        chartType: 'bar',
-                        xAxis: item.accumulationKeyList,
-                        series: [
-                          {
-                            name: item.accumulationLabel,
-                            color: '#19be6b',
-                            data: item.accumulationValueList,
-                            markPoint: {
-                              data: [
-                                { type: 'max', name: 'Max' },
-                                { type: 'min', name: 'Min' },
-                              ],
-                            },
-                          },
-                        ],
-                      }"
-                    />
-                  </div>
-                </BaseCard>
-              </el-col>
-            </el-row>
-          </div>
+        </el-form>
+      </div>
+      <div class="table-bg-style">
+        <div class="table-box theme-dark-mt20" style="">
+          <el-table :data="tableData" v-loading="loading">
+            <el-table-column label="鏃堕棿" prop="dateCode" align="center" width="160" />
+            <el-table-column label="鎬昏垂鐢�(鍏�)" prop="total" align="center" width="120" />
+            <el-table-column :label="col.energyName" v-for="(col, index) in columns" :key="index" align="center">
+              <el-table-column :prop="'energyTotal' + col.energyType" label="娑堣�楅噺" min-width="120" align="center" />
+              <el-table-column :prop="'costTotal' + col.energyType" label="璐圭敤锛堝厓锛�" min-width="120" align="center" />
+            </el-table-column>
+          </el-table>
         </div>
+      </div>
+      <div class="charts-view" v-loading="loading">
+        <el-row :gutter="2" class="" v-for="item in chartDataList" :key="item.energyType">
+          <el-col :span="12">
+            <BaseCard :title="item.costLabel + '(鍏�)'">
+              <div class="">
+                <LineChart
+                  :ref="'LineChartCostRef' + item.energyType"
+                  :domId="'costDom_' + item.energyType"
+                  :chartData="{
+                    title: item.costLabel,
+                    chartType: 'line',
+                    xAxis: item.costKeyList,
+                    series: [
+                      {
+                        name: item.costLabel,
+                        data: item.costValueList,
+                        markPoint: {
+                          data: [
+                            { type: 'max', name: 'Max' },
+                            { type: 'min', name: 'Min' },
+                          ],
+                        },
+                      },
+                    ],
+                  }"
+                />
+              </div>
+            </BaseCard>
+          </el-col>
+          <el-col :span="12">
+            <BaseCard :title="item.accumulationLabel + '(' + item.energyUnit + ')'">
+              <div class="">
+                <LineChart
+                  :ref="'LineChartaccumulationRef' + item.energyType"
+                  :domId="'accumulationDom_' + item.energyType"
+                  :chartType="'bar'"
+                  :chartData="{
+                    title: item.accumulationLabel,
+                    chartType: 'bar',
+                    xAxis: item.accumulationKeyList,
+                    series: [
+                      {
+                        name: item.accumulationLabel,
+                        color: '#19be6b',
+                        data: item.accumulationValueList,
+                        markPoint: {
+                          data: [
+                            { type: 'max', name: 'Max' },
+                            { type: 'min', name: 'Min' },
+                          ],
+                        },
+                      },
+                    ],
+                  }"
+                />
+              </div>
+            </BaseCard>
+          </el-col>
+        </el-row>
       </div>
     </div>
   </div>
@@ -260,10 +256,27 @@
 <style scoped lang="scss">
 @import "@/assets/styles/page.scss";
 
-.themeDark {
-}
+.table-box {
+  margin-top: 0;
+  :deep .el-table--border .el-table__inner-wrapper:after {
+    height: 0;
+  }
 
-.themeLight {
+  :deep .el-table--border:after {
+    width: 0;
+  }
+
+  :deep .el-table--border:before {
+    width: 0;
+  }
+
+  :deep .el-table__border-left-patch {
+    background: transparent;
+  }
+
+  :deep .el-table--border .el-table__cell {
+    border-right: none;
+  }
 }
 
 .charts-view {
diff --git a/zhitan-vue/src/views/dataMonitoring/historyDataTrend/index.vue b/zhitan-vue/src/views/dataMonitoring/historyDataTrend/index.vue
index a78185b..1f64bec 100644
--- a/zhitan-vue/src/views/dataMonitoring/historyDataTrend/index.vue
+++ b/zhitan-vue/src/views/dataMonitoring/historyDataTrend/index.vue
@@ -19,8 +19,8 @@
                   <el-date-picker
                     v-model="queryParams.dataTime"
                     :type="queryParams.timeType == 'DAY' ? 'date' : 'datetime'"
-                    :format="queryParams.timeType == 'DAY' ? 'YYYY-MM-DD' : 'YYYY-MM-DD HH:mm:ss'"
-                    :value-format="queryParams.timeType == 'DAY' ? 'YYYY-MM-DD' : 'YYYY-MM-DD HH:mm:ss'"
+                    :format="queryParams.timeType == 'DAY' ? 'YYYY-MM-DD' : 'YYYY-MM-DD HH:00:00'"
+                    :value-format="queryParams.timeType == 'DAY' ? 'YYYY-MM-DD' : 'YYYY-MM-DD HH:00:00'"
                     placeholder="鏃堕棿"
                     style="width: 100%"
                   />
@@ -118,18 +118,18 @@
   queryParams.value.nodeId = data.id
   queryParams.value.nodeName = data.label
   setTimeout(() => {
-    handleTimeType(period.value[0].value)
+    handleTimeType(queryParams.value.timeType)
   }, 200)
 }
 function handleTimeType(e) {
   queryParams.value.timeType = e
-  queryParams.value.dataTime = proxy.dayjs(new Date()).format("YYYY-MM-DD HH:mm:ss")
+  queryParams.value.dataTime = proxy.dayjs(new Date()).format("YYYY-MM-DD HH:00:00")
   getElectricityMeter({ modelId: queryParams.value.nodeId })
 }
 
 function changeTimeType(e) {
   console.log(e)
-  queryParams.value.dataTime = proxy.dayjs(new Date()).format("YYYY-MM-DD HH:mm:ss")
+  queryParams.value.dataTime = proxy.dayjs(new Date()).format("YYYY-MM-DD HH:00:00")
   getElectricityMeter({ modelId: queryParams.value.nodeId })
 }
 const LineChartRef = ref()
@@ -185,7 +185,6 @@
   proxy.resetForm("queryRef")
   queryParams.value.timeType = null
   queryParams.value.dataTime = null
-  handleTimeType(period.value[0].value)
   handleQuery()
 }
 // 纰虫帓鏀剧鐞�-纰虫帓鏀鹃噺鏍哥畻-瀵煎嚭
diff --git a/zhitan-vue/src/views/energyefficiency/benchmarkmanage/benchmarkmanage.vue b/zhitan-vue/src/views/energyefficiency/benchmarkmanage/benchmarkmanage.vue
index aee4ffb..1e43c29 100644
--- a/zhitan-vue/src/views/energyefficiency/benchmarkmanage/benchmarkmanage.vue
+++ b/zhitan-vue/src/views/energyefficiency/benchmarkmanage/benchmarkmanage.vue
@@ -1,122 +1,136 @@
 <template>
-    <div class="page">
-        <div class="form-card">
-            <el-form :model="form" ref="queryRef" :inline="true" label-width="85px">
-                <el-form-item label="鏍囨潌缂栧彿" prop="code">
-                    <el-input v-model="form.code" placeholder="璇疯緭鍏ユ爣鏉嗙紪鍙�" />
-                </el-form-item>
-                <el-form-item label="鏍囨潌绫诲瀷" prop="type">
-                    <el-select v-model="form.type" clearable>
-                        <el-option v-for="dict in benchmark_type" :key="dict.value" :label="dict.label"
-                            :value="dict.value" />
-                    </el-select>
-                </el-form-item>
-                <el-form-item label="鏍囨潌绛夌骇" prop="grade">
-                    <el-select v-model="form.grade" clearable>
-                        <el-option v-for="dict in benchmark_grade" :key="dict.value" :label="dict.label"
-                            :value="dict.value" />
-                    </el-select>
-                </el-form-item>
-                <el-form-item>
-                    <el-button type="primary" icon="Search" @click="handleQuery">鎼滅储</el-button>
-                    <el-button icon="Refresh" @click="resetQuery">閲嶇疆</el-button>
-                </el-form-item>
-            </el-form>
-        </div>
-        <div class="table-box">
-            <div class=" mt20 mb20">
-                <el-button type="primary" icon="Plus" @click="handleAdd">鏂板</el-button>
-            </div>
-            <el-table :data="tableData" v-loading="loading">
-                <el-table-column prop="code" label="鏍囨潌缂栧彿" show-overflow-tooltip align="center" />
-                <el-table-column prop="type" label="鏍囨潌绫诲瀷" show-overflow-tooltip align="center"
-                    :formatter="(row, c) => proxy.selectDictLabel(benchmark_type, row.type)" />
-                <el-table-column prop="grade" label="鏍囨潌绛夌骇" show-overflow-tooltip align="center"
-                    :formatter="(row, c) => proxy.selectDictLabel(benchmark_grade, row.grade)" />
-                <el-table-column prop="value" label="鏍囨潌鍊�" show-overflow-tooltip align="center" />
-                <el-table-column prop="nationalNum" label="鍥芥爣缂栧彿" show-overflow-tooltip align="center" />
-                <el-table-column prop="createBy" label="褰曞叆浜�" show-overflow-tooltip align="center" />
-                <el-table-column prop="createTime" label="褰曞叆鏃堕棿" show-overflow-tooltip align="center" />
-                <el-table-column prop="remark" label="澶囨敞" show-overflow-tooltip align="center" />
-                <el-table-column prop="active" label="鎿嶄綔" width="150" align="center">
-                    <template #default="scope">
-                        <el-button link type="primary" icon="Edit" @click="handleAdd(scope.row)">
-                            淇敼
-                        </el-button>
-                        <el-button link type="primary" icon="Delete" @click="handleDel(scope.row)">
-                            鍒犻櫎
-                        </el-button>
-                    </template>
-                </el-table-column>
-            </el-table>
-            <pagination v-show="total > 0" :total="total" v-model:page="queryParams.pageNum"
-                v-model:limit="queryParams.pageSize" @pagination="getList" />
-        </div>
-        <EditModal ref="EditModalRef" :benchmark_grade="benchmark_grade" :benchmark_type="benchmark_type"
-            @getList="getList" />
-
+  <div class="page">
+    <div class="form-card">
+      <el-form :model="form" ref="queryRef" :inline="true" label-width="85px">
+        <el-form-item label="鏍囨潌缂栧彿" prop="code">
+          <el-input v-model="form.code" placeholder="璇疯緭鍏ユ爣鏉嗙紪鍙�" />
+        </el-form-item>
+        <el-form-item label="鏍囨潌绫诲瀷" prop="type">
+          <el-select v-model="form.type" clearable>
+            <el-option v-for="dict in benchmark_type" :key="dict.value" :label="dict.label" :value="dict.value" />
+          </el-select>
+        </el-form-item>
+        <el-form-item label="鏍囨潌绛夌骇" prop="grade">
+          <el-select v-model="form.grade" clearable>
+            <el-option v-for="dict in benchmark_grade" :key="dict.value" :label="dict.label" :value="dict.value" />
+          </el-select>
+        </el-form-item>
+        <el-form-item>
+          <el-button type="primary" icon="Search" @click="handleQuery">鎼滅储</el-button>
+          <el-button icon="Refresh" @click="resetQuery">閲嶇疆</el-button>
+        </el-form-item>
+      </el-form>
     </div>
+    <div class="table-bg-style">
+      <div class="theme-dark-mt20 mb20 ml20">
+        <el-button type="primary" icon="Plus" @click="handleAdd">鏂板</el-button>
+      </div>
+      <div class="table-box">
+        <el-table :data="tableData" v-loading="loading">
+          <el-table-column prop="code" label="鏍囨潌缂栧彿" show-overflow-tooltip align="center" />
+          <el-table-column
+            prop="type"
+            label="鏍囨潌绫诲瀷"
+            show-overflow-tooltip
+            align="center"
+            :formatter="(row, c) => proxy.selectDictLabel(benchmark_type, row.type)"
+          />
+          <el-table-column
+            prop="grade"
+            label="鏍囨潌绛夌骇"
+            show-overflow-tooltip
+            align="center"
+            :formatter="(row, c) => proxy.selectDictLabel(benchmark_grade, row.grade)"
+          />
+          <el-table-column prop="value" label="鏍囨潌鍊�" show-overflow-tooltip align="center" />
+          <el-table-column prop="nationalNum" label="鍥芥爣缂栧彿" show-overflow-tooltip align="center" />
+          <el-table-column prop="createBy" label="褰曞叆浜�" show-overflow-tooltip align="center" />
+          <el-table-column prop="createTime" label="褰曞叆鏃堕棿" show-overflow-tooltip align="center" />
+          <el-table-column prop="remark" label="澶囨敞" show-overflow-tooltip align="center" />
+          <el-table-column prop="active" label="鎿嶄綔" width="150" align="center">
+            <template #default="scope">
+              <el-button link type="primary" icon="Edit" @click="handleAdd(scope.row)"> 淇敼 </el-button>
+              <el-button link type="primary" icon="Delete" @click="handleDel(scope.row)"> 鍒犻櫎 </el-button>
+            </template>
+          </el-table-column>
+        </el-table>
+        <pagination
+          v-show="total > 0"
+          :total="total"
+          v-model:page="queryParams.pageNum"
+          v-model:limit="queryParams.pageSize"
+          @pagination="getList"
+        />
+      </div>
+    </div>
+
+    <EditModal
+      ref="EditModalRef"
+      :benchmark_grade="benchmark_grade"
+      :benchmark_type="benchmark_type"
+      @getList="getList"
+    />
+  </div>
 </template>
 <script setup>
-import EditModal from './components/EditModal.vue'
-import { valueManageList, valueManageDel } from '@/api/benchmarkManage'
+import EditModal from "./components/EditModal.vue"
+import { valueManageList, valueManageDel } from "@/api/benchmarkManage"
 let proxy = getCurrentInstance().proxy
 
-let { benchmark_grade, benchmark_type } = proxy.useDict("benchmark_grade", 'benchmark_type')
+let { benchmark_grade, benchmark_type } = proxy.useDict("benchmark_grade", "benchmark_type")
 let form = ref({
-    code: null,
-    type: null,
-    grade: null,
+  code: null,
+  type: null,
+  grade: null,
 })
 function handleQuery() {
-    queryParams.value.pageNum = 1
-    getList()
+  queryParams.value.pageNum = 1
+  getList()
 }
 
 function resetQuery() {
-    queryParams.value.pageNum = 1
-    form.value = {}
-    handleQuery();
+  queryParams.value.pageNum = 1
+  form.value = {}
+  handleQuery()
 }
 
-
-let loading = ref(false);
-let total = ref(0);
+let loading = ref(false)
+let total = ref(0)
 let tableData = ref([])
 let queryParams = ref({
-    pageNum: 1,
-    pageSize: 10,
+  pageNum: 1,
+  pageSize: 10,
 })
 function getList(flag) {
-    loading.value = true
-    valueManageList({ ...queryParams.value, ...form.value }).then(res => {
-        tableData.value = res.rows
-        total.value = res.total
-        loading.value = false
-    })
-
+  loading.value = true
+  valueManageList({ ...queryParams.value, ...form.value }).then((res) => {
+    tableData.value = res.rows
+    total.value = res.total
+    loading.value = false
+  })
 }
 
 getList()
-let EditModalRef = ref('')
+let EditModalRef = ref("")
 function handleAdd(row) {
-    if (EditModalRef.value) {
-        EditModalRef.value.handleOpen(row)
-    }
-
+  if (EditModalRef.value) {
+    EditModalRef.value.handleOpen(row)
+  }
 }
 
 function handleDel(row) {
-    proxy.$modal.confirm('鏄惁纭鍒犻櫎鏁版嵁椤�?').then(function () {
-        return valueManageDel(row.id);
-    }).then(() => {
-        getList();
-        proxy.$modal.msgSuccess("鍒犻櫎鎴愬姛");
-    }).catch(() => { });
+  proxy.$modal
+    .confirm("鏄惁纭鍒犻櫎鏁版嵁椤�?")
+    .then(function () {
+      return valueManageDel(row.id)
+    })
+    .then(() => {
+      getList()
+      proxy.$modal.msgSuccess("鍒犻櫎鎴愬姛")
+    })
+    .catch(() => {})
 }
-
 </script>
-
 
 <style lang="scss" scoped>
 @import "@/assets/styles/page.scss";
diff --git a/zhitan-vue/src/views/modelconfiguration/indexwarehouse/indexWarehouse.vue b/zhitan-vue/src/views/modelconfiguration/indexwarehouse/indexWarehouse.vue
index a42b60d..82f3ef3 100644
--- a/zhitan-vue/src/views/modelconfiguration/indexwarehouse/indexWarehouse.vue
+++ b/zhitan-vue/src/views/modelconfiguration/indexwarehouse/indexWarehouse.vue
@@ -5,38 +5,44 @@
         <div class="tree page-box">
           <!-- <CardHeader class="mb20">鐢ㄨ兘鍗曞厓缁撴瀯</CardHeader> -->
           <!-- <el-input v-model="filterText" style="width: 240px" placeholder="杈撳叆鍏抽敭瀛楄繘琛岃繃婊�" class="mb10" /> -->
-          <el-tree ref="treeRef" :props="defaultProps" :data="treeData" node-key="id" highlight-current
-            :filter-node-method="filterNode" :default-expanded-keys="treeExpandData" :expand-on-click-node="false"
-            @node-click="changeNode" accordion>
+          <el-tree
+            ref="treeRef"
+            :props="defaultProps"
+            :data="treeData"
+            node-key="id"
+            highlight-current
+            :filter-node-method="filterNode"
+            :default-expanded-keys="treeExpandData"
+            :expand-on-click-node="false"
+            @node-click="changeNode"
+            accordion
+          >
             <template #default="{ node, data }">
               <span>
-                <el-tooltip v-if="node.label.length > 6" class="item" effect="dark" :content="node.label"
-                  placement="top-end">
+                <el-tooltip
+                  v-if="node.label.length > 6"
+                  class="item"
+                  effect="dark"
+                  :content="node.label"
+                  placement="top-end"
+                >
                   <span>{{ node.label.slice(0, 6) + "..." }}</span>
                 </el-tooltip>
                 <span v-else id="b">{{ node.label }}</span>
               </span>
               <span class="node-opt">
-                <el-link title="鏂板涓嬬骇鑺傜偣" icon="Plus" @click="() => addNode(node, data)">
-                </el-link>
-                <el-link title="淇敼鑺傜偣" icon="EditPen" @click="() => editNode(node, data)">
-                </el-link>
-                <el-link title="鍒犻櫎鑺傜偣" icon="Delete" @click="() => delNode(node, data)">
-                </el-link>
+                <el-link title="鏂板涓嬬骇鑺傜偣" icon="Plus" @click="() => addNode(node, data)"> </el-link>
+                <el-link title="淇敼鑺傜偣" icon="EditPen" @click="() => editNode(node, data)"> </el-link>
+                <el-link title="鍒犻櫎鑺傜偣" icon="Delete" @click="() => delNode(node, data)"> </el-link>
               </span>
             </template>
           </el-tree>
         </div>
       </div>
       <div class="page-container-right">
-
         <div class="mb20 mt20 ml20 tab-box">
-          <div class="tab-li" :class="tab == 1 ? 'is-tab' : ''" @click="handleTab('1')">
-            璁¢噺鍣ㄥ叿閰嶇疆淇℃伅
-          </div>
-          <div class="tab-li" :class="tab == 2 ? 'is-tab' : ''" @click="handleTab('2')">
-            缁熻鎸囨爣
-          </div>
+          <div class="tab-li" :class="tab == 1 ? 'is-tab' : ''" @click="handleTab('1')">璁¢噺鍣ㄥ叿閰嶇疆淇℃伅</div>
+          <div class="tab-li" :class="tab == 2 ? 'is-tab' : ''" @click="handleTab('2')">缁熻鎸囨爣</div>
           <!-- <el-radio-group v-model="tab">
                                 <el-radio-button label="1" @click="handleTab('1')"> 璁惧閰嶇疆</el-radio-button>
                                 <el-radio-button label="2" @click="handleTab('2')"> 閲囬泦鎸囨爣</el-radio-button>
@@ -45,10 +51,10 @@
         <BaseCard :title="currentNode ? currentNode.label + '--鑺傜偣閰嶇疆' : '鏆傛棤鑺傜偣閰嶇疆'">
           <div>
             <div class="content-box" v-if="tab == '1'">
-              <deviceConfig ref='deviceConfigRef' />
+              <deviceConfig ref="deviceConfigRef" />
             </div>
             <div class="content-box1" v-if="tab == '2'">
-              <statisticalIndicatorManagement ref='statisticalIndicatorManagementRef' :indexType='"STATISTIC"' />
+              <statisticalIndicatorManagement ref="statisticalIndicatorManagementRef" :indexType="'STATISTIC'" />
             </div>
           </div>
         </BaseCard>
@@ -56,18 +62,22 @@
         <!-- <statisticalIndicatorManagement ref="statisticalIndicatorManagementRef" :indexType='"STATISTIC"' /> -->
       </div>
     </div>
-    <treeNodeModal ref="treeNodeModalRef" @getList="getTreeList" modelCode="JCZBK_CODE" @addTreeList="addTreeList"
-      @addTreeSelectList="addTreeSelectList" />
+    <treeNodeModal
+      ref="treeNodeModalRef"
+      @getList="getTreeList"
+      modelCode="JCZBK_CODE"
+      @addTreeList="addTreeList"
+      @addTreeSelectList="addTreeSelectList"
+    />
   </div>
-
 </template>
 
 <script setup>
-import treeNodeModal from './components/TreeNodeModal.vue'
-import deviceConfig from './components/deviceConfig/DeviceConfig.vue'
-import statisticalIndicatorManagement from './components/statisticalIndicatorManagement/statisticalIndicatorManagement.vue';
-import { treeList, delModelNode, hasEnergyIndex, } from '@/api/modelConfiguration/indexWarehouse'
-const { proxy } = getCurrentInstance();
+import treeNodeModal from "./components/TreeNodeModal.vue"
+import deviceConfig from "./components/deviceConfig/DeviceConfig.vue"
+import statisticalIndicatorManagement from "./components/statisticalIndicatorManagement/statisticalIndicatorManagement.vue"
+import { treeList, delModelNode, hasEnergyIndex } from "@/api/modelConfiguration/indexWarehouse"
+const { proxy } = getCurrentInstance()
 
 let currentNode = ref()
 let treeRef = ref()
@@ -75,12 +85,12 @@
 let treeData = ref([])
 
 const defaultProps = ref({
-  children: 'children',
-  label: 'label',
+  children: "children",
+  label: "label",
 })
 
 //妫�绱㈡爲
-let filterText = ref('')
+let filterText = ref("")
 
 const filterNode = (value, data) => {
   if (!value) return true
@@ -88,14 +98,14 @@
 }
 watch(filterText, (val) => {
   // 妫�鏌reeRef.value鏄惁鏄竴涓湁鏁堢殑ElTree瀹炰緥
-  if (treeRef.value && typeof treeRef.value.filter === 'function') {
+  if (treeRef.value && typeof treeRef.value.filter === "function") {
     // 璋冪敤filter鏂规硶
-    treeRef.value.filter(val);
+    treeRef.value.filter(val)
   } else {
     // treeRef.value鏃犳晥锛屽鐞嗛敊璇�
-    console.error('error');
+    console.error("error")
   }
-});
+})
 
 let treeExpandData = ref([])
 let isFirstLeafNode = ref(false)
@@ -103,32 +113,31 @@
 let statisticalIndicatorManagementRef = ref(null)
 //鑾峰彇鏍戝垪琛�
 function getTreeList() {
-  treeList({ modelCode: 'JCZBK_CODE' }).then(res => {
+  treeList({ modelCode: "JCZBK_CODE" }).then((res) => {
     let { data } = res
-    treeData.value = data;
-    let chooseNode = null;
+    treeData.value = data
+    let chooseNode = null
     if (data.length > 0) {
       if (data[0].children && data[0].children.length !== 0 && isFirstLeafNode.value) {
         if (data[0].children[0].children && data[0].children[0].children.length !== 0) {
-          chooseNode = data[0].children[0].children[0];
+          chooseNode = data[0].children[0].children[0]
         } else {
-          chooseNode = data[0].children[0];
+          chooseNode = data[0].children[0]
         }
       } else {
-        chooseNode = data[0];
+        chooseNode = data[0]
       }
-      currentNode.value = chooseNode;
-      treeExpandData.value.push(chooseNode.id);
+      currentNode.value = chooseNode
+      treeExpandData.value.push(chooseNode.id)
       nextTick(() => {
-        treeRef.value.setCurrentKey(chooseNode.id);
+        treeRef.value.setCurrentKey(chooseNode.id)
         if (tab.value == 1 && deviceConfigRef.value) {
           deviceConfigRef.value.getList(chooseNode)
         }
         if (tab.value == 2 && statisticalIndicatorManagementRef.value) {
           statisticalIndicatorManagementRef.value.getList(chooseNode)
         }
-
-      });
+      })
     }
   })
 }
@@ -143,7 +152,7 @@
   treeExpandData.value.push(addedNode.nodeId)
   nextTick(() => {
     treeRef.value.setCurrentNode(newChild)
-    currentNode.value = newChild;
+    currentNode.value = newChild
     if (tab.value == 1) {
       if (deviceConfigRef.value) {
         deviceConfigRef.value.getList(newChild)
@@ -155,11 +164,10 @@
       }
     }
   })
-
 }
 //鏍戠偣鍑�
 function changeNode(data, node, ev) {
-  currentNode.value = data;
+  currentNode.value = data
   if (tab.value == 1) {
     if (deviceConfigRef.value) {
       deviceConfigRef.value.getList(data)
@@ -171,7 +179,6 @@
     }
   }
 }
-
 
 let treeNodeModalRef = ref(null)
 
@@ -188,26 +195,27 @@
 
 function delNode(node, data) {
   if (data.children && data.children.length > 0) {
-    proxy.$modal.msgWarning('鍖呭惈瀛愯妭鐐癸紝涓嶈兘杩涜鍒犻櫎锛�')
+    proxy.$modal.msgWarning("鍖呭惈瀛愯妭鐐癸紝涓嶈兘杩涜鍒犻櫎锛�")
     return
   }
 
-  hasEnergyIndex(data.id).then(response => {
+  hasEnergyIndex(data.id).then((response) => {
     if (response.data) {
-      proxy.$modal.msgWarning('褰撳墠鑺傜偣涓嬪瓨鍦ㄦ寚鏍囷紝涓嶈兘杩涜鍒犻櫎锛�')
+      proxy.$modal.msgWarning("褰撳墠鑺傜偣涓嬪瓨鍦ㄦ寚鏍囷紝涓嶈兘杩涜鍒犻櫎锛�")
     } else {
-      proxy.$modal.confirm('鏄惁纭鍒犻櫎鍚嶄负"' + data.label + '"鐨勮妭鐐�?', '璀﹀憡', {
-        confirmButtonText: '纭畾',
-        cancelButtonText: '鍙栨秷',
-        type: 'warning'
-      })
+      proxy.$modal
+        .confirm('鏄惁纭鍒犻櫎鍚嶄负"' + data.label + '"鐨勮妭鐐�?', "璀﹀憡", {
+          confirmButtonText: "纭畾",
+          cancelButtonText: "鍙栨秷",
+          type: "warning",
+        })
         .then(function () {
           return delModelNode(data.id)
         })
         .then(() => {
           let parent = node.parent
           let children = parent.data.children || parent.data
-          let index = children.findIndex(d => d.id === data.id)
+          let index = children.findIndex((d) => d.id === data.id)
           children.splice(index, 1)
 
           nextTick(() => {
@@ -217,10 +225,9 @@
               changeNode(null)
             }
           })
-          proxy.$modal.msgSuccess('鍒犻櫎鎴愬姛')
+          proxy.$modal.msgSuccess("鍒犻櫎鎴愬姛")
         })
-        .catch(function () {
-        })
+        .catch(function () {})
     }
   })
 }
@@ -234,15 +241,12 @@
     if (value == 2 && statisticalIndicatorManagementRef.value) {
       statisticalIndicatorManagementRef.value.getList(currentNode.value)
     }
-
-  });
-
+  })
 }
 </script>
 
 <style lang="scss" scoped>
 @import "@/assets/styles/page.scss";
-
 
 .page-box {
   height: calc(100vh - 145px);
@@ -276,8 +280,6 @@
       margin-right: 5px;
     }
   }
-
-
 }
 
 :deep .el-tabs__nav-wrap:after {
@@ -298,29 +300,40 @@
 .tab-box {
   display: flex;
   align-items: center;
-  color: #fff;
-  border-bottom: 1px solid #3371EB;
+  color: #333;
+  border-bottom: 1px solid #3371eb;
   margin-right: 20px;
 
   .tab-li {
     cursor: pointer;
-    border: 1px solid #3371EB;
+    border: 1px solid #3371eb;
     padding: 10px 25px;
     border-radius: 5px 5px 0 0;
   }
 
   .is-tab {
-    background: #3371EB;
+    background: #3371eb;
+    color: #fff;
+  }
+}
+
+.themeDark {
+  .tab-box {
+    color: #fff;
+  }
+}
+
+.themeLight {
+  .tab-box {
+    color: #333;
   }
 }
 
 .content-box {
   height: calc(100vh - 310px) !important;
-
 }
 
 .content-box1 {
   height: calc(100vh - 290px) !important;
-
 }
 </style>
diff --git a/zhitan-vue/src/views/peakvalley/period/period.vue b/zhitan-vue/src/views/peakvalley/period/period.vue
index 749fa2e..a9551c6 100644
--- a/zhitan-vue/src/views/peakvalley/period/period.vue
+++ b/zhitan-vue/src/views/peakvalley/period/period.vue
@@ -555,16 +555,21 @@
     display: flex;
     justify-content: space-between;
     padding: 18px;
+    width: 100%;
+    overflow: hidden;
+    overflow-x: auto;
 
     .card-list-item {
-      width: 19%;
-      height: 187px;
+      flex-shrink: 0;
+      width: 230px;
+      height: 188px;
       background: #223386;
       border-radius: 5px 5px 5px 5px;
       border: 1px solid #4868b7;
       background-size: 100% 100%;
       box-sizing: border-box;
       padding: 10px 18px 13px 16px;
+      margin-right: 12px;
 
       .item-top {
         display: flex;
diff --git a/zhitan-vue/src/views/realtimemonitor/realtimemonitor/realtimemonitor.vue b/zhitan-vue/src/views/realtimemonitor/realtimemonitor/realtimemonitor.vue
index bab0dc2..23b7d46 100644
--- a/zhitan-vue/src/views/realtimemonitor/realtimemonitor/realtimemonitor.vue
+++ b/zhitan-vue/src/views/realtimemonitor/realtimemonitor/realtimemonitor.vue
@@ -9,13 +9,16 @@
           <el-form :model="queryParams" ref="queryRef" :inline="true">
             <el-form-item label="鑳芥簮绫诲瀷" prop="energyType">
               <el-select v-model="queryParams.energyType" placeholder="鑳芥簮绫诲瀷" @change="handleQuery">
-                <el-option :label="item.enername" :value="item.enersno" v-for="item in energyTypeList" :key="item.enersno" />
+                <el-option
+                  :label="item.enername"
+                  :value="item.enersno"
+                  v-for="item in energyTypeList"
+                  :key="item.enersno"
+                />
               </el-select>
             </el-form-item>
             <el-form-item>
-              <el-button type="primary" icon="Search" @click="handleQuery">
-                鎼滅储
-              </el-button>
+              <el-button type="primary" icon="Search" @click="handleQuery"> 鎼滅储 </el-button>
               <el-button icon="Refresh" @click="resetQuery"> 閲嶇疆 </el-button>
             </el-form-item>
             <el-form-item>
@@ -23,20 +26,24 @@
             </el-form-item>
           </el-form>
         </div>
-        <div style="
-            height: calc(100vh - 220px) !important;
-            max-height: calc(100vh - 220px) !important;
-            overflow-y: auto;
-          " v-loading="loading">
+        <div
+          style="height: calc(100vh - 220px) !important; max-height: calc(100vh - 220px) !important; overflow-y: auto"
+          v-loading="loading"
+        >
           <div v-for="(item, index) in energyRealTimeMonitorList" :key="index" v-show="!!item.deviceArray">
             <BaseCard :title="queryParams.nodeName + '-' + item.energyTypeName" v-if="item.deviceArray.length > 0">
               <el-scrollbar>
                 <div class="scrollbar-flex-content">
                   <p></p>
-                  <div class="scrollbar-demo-item item-tag" @click="handleClick(item, index1)" v-for="item1,index1 in item.deviceArray" :key="index1" :style="{
-                    backgroundColor:
-                      index1 == item.activeIndex ? '#5EC894' : '#9841FC',
-                  }">
+                  <div
+                    class="scrollbar-demo-item item-tag"
+                    @click="handleClick(item, index1)"
+                    v-for="(item1, index1) in item.deviceArray"
+                    :key="index1"
+                    :style="{
+                      backgroundColor: index1 == item.activeIndex ? '#5EC894' : '#9841FC',
+                    }"
+                  >
                     {{ item1.deviceName }}
                   </div>
                 </div>
@@ -71,18 +78,18 @@
                   {{ item.deviceArray[item.activeIndex].energyTypeName }}
                 </div>
                 <div class="card-box-ul">
-                  <div class="card-box-li" v-for="(item2, index2) in item.deviceArray[item.activeIndex]
-                    .energyIndexArray">
+                  <div
+                    class="card-box-li"
+                    v-for="(item2, index2) in item.deviceArray[item.activeIndex].energyIndexArray"
+                  >
                     <el-tooltip class="box-item" effect="dark" content="鏌ョ湅鍘嗗彶鏁版嵁" placement="top">
                       <dl @click="handleChartModal(item2)">
                         <dd class="title">
                           {{ item2.name }}
-                          <template v-if="!!item2.unit">
-                            ({{ item2.unit }})
-                          </template>
+                          <template v-if="!!item2.unit"> ({{ item2.unit }}) </template>
                         </dd>
                         <dd class="num">
-                          {{ item2.value!=null ? item2.value.toFixed(2) : '--' }}
+                          {{ item2.value != null ? item2.value.toFixed(2) : "--" }}
                         </dd>
                         <dd class="time">
                           <el-icon>
@@ -105,22 +112,22 @@
   </div>
 </template>
 <script setup name="energy-real-time-monitor">
-import chartModal from "./components/chart-modal.vue";
-import { listEnergyRealTimeMonitor } from "@/api/realTimeMonitor/realTimeMonitor";
-import { listEnergyTypeList } from "@/api/modelConfiguration/energyType";
-const { proxy } = getCurrentInstance();
-import { useRoute } from "vue-router";
-import useSettingsStore from "@/store/modules/settings";
-const settingsStore = useSettingsStore();
+import chartModal from "./components/chart-modal.vue"
+import { listEnergyRealTimeMonitor } from "@/api/realTimeMonitor/realTimeMonitor"
+import { listEnergyTypeList } from "@/api/modelConfiguration/energyType"
+const { proxy } = getCurrentInstance()
+import { useRoute } from "vue-router"
+import useSettingsStore from "@/store/modules/settings"
+const settingsStore = useSettingsStore()
 watch(
   () => settingsStore.sideTheme,
   (val) => {
-    getList();
+    getList()
   }
-);
-const energyTypeList = ref(undefined);
-let energyRealTimeMonitorList = ref([]);
-const loading = ref(false);
+)
+const energyTypeList = ref(undefined)
+let energyRealTimeMonitorList = ref([])
+const loading = ref(false)
 const data = reactive({
   queryParams: {
     nodeId: null,
@@ -128,24 +135,24 @@
     energyType: null,
   },
   query: { ...useRoute().query },
-});
-const { queryParams, query } = toRefs(data);
+})
+const { queryParams, query } = toRefs(data)
 /** 鑺傜偣鍗曞嚮浜嬩欢 */
 function handleNodeClick(data) {
-  queryParams.value.nodeId = data.id;
-  queryParams.value.nodeName = data.label;
+  queryParams.value.nodeId = data.id
+  queryParams.value.nodeName = data.label
   listEnergyTypeList().then((res) => {
-    energyTypeList.value = res.data;
-    queryParams.value.energyType = energyTypeList.value[0].enersno;
-    handleQuery();
-  });
+    energyTypeList.value = res.data
+    queryParams.value.energyType = energyTypeList.value[0].enersno
+    handleQuery()
+  })
 }
 function handleClick(item, index) {
-  item.activeIndex = index;
+  item.activeIndex = index
 }
 // 鑳芥簮瀹炴椂鐩戞帶-鑳芥簮瀹炴椂鐩戞帶-鍒楄〃
 function getList() {
-  loading.value = true;
+  loading.value = true
   listEnergyRealTimeMonitor(
     proxy.addDateRange({
       ...queryParams.value,
@@ -154,31 +161,31 @@
   ).then((res) => {
     if (!!res.code && res.code == 200) {
       res.data.map((item) => {
-        item.activeIndex = 0;
-      });
-      loading.value = false;
-      energyRealTimeMonitorList.value = res.data;
+        item.activeIndex = 0
+      })
+      loading.value = false
+      energyRealTimeMonitorList.value = res.data
     }
-  });
+  })
 }
 // 鑳芥簮瀹炴椂鐩戞帶-鑳芥簮瀹炴椂鐩戞帶-鎼滅储
 function handleQuery() {
-  energyRealTimeMonitorList.value = [];
-  getList();
+  energyRealTimeMonitorList.value = []
+  getList()
 }
 // 鑳芥簮瀹炴椂鐩戞帶-鑳芥簮瀹炴椂鐩戞帶-閲嶇疆
 function resetQuery() {
-  proxy.resetForm("queryRef");
-  queryParams.value.energyType = null;
-  energyRealTimeMonitorList.value = [];
-  handleQuery();
+  proxy.resetForm("queryRef")
+  queryParams.value.energyType = null
+  energyRealTimeMonitorList.value = []
+  handleQuery()
 }
-let chartRef = ref();
+let chartRef = ref()
 
 function handleChartModal(row) {
   if (chartRef.value) {
     row.nodeName = queryParams.value.nodeName
-    chartRef.value.handleOpen(row);
+    chartRef.value.handleOpen(row)
   }
 }
 </script>
@@ -213,6 +220,7 @@
 
     &-li {
       width: 18%;
+      min-width: 190px;
       margin: 1%;
       border-radius: 5px;
       border: 1px solid #22408c;
@@ -235,11 +243,10 @@
       }
 
       .num {
-        font-size: 22px;
+        font-size: 24px;
         color: #36d3ff;
         font-family: OPPOSans, OPPOSans;
         font-weight: 800;
-        font-size: 32px;
         text-align: left;
         font-style: normal;
         text-transform: none;
@@ -252,6 +259,7 @@
         text-align: left;
         font-style: normal;
         text-transform: none;
+        font-size: 14px;
       }
     }
 
@@ -423,12 +431,12 @@
 .item-tag {
   // width: 13%;
   text-align: center;
-  margin: 5px 8px;
+  margin: 2px 6px;
   border-radius: 8px;
-  padding: 7px 10px;
+  padding: 5px 10px;
   font-family: OPPOSans, OPPOSans;
   font-weight: 500;
-  font-size: 16px;
+  font-size: 14px;
   color: #ffffff;
   cursor: pointer;
 }

--
Gitblit v1.9.3