From d29d77e91951e30abba6596359b138bc4c6ac108 Mon Sep 17 00:00:00 2001
From: zxl <763096477@qq.com>
Date: 星期三, 25 三月 2026 14:37:27 +0800
Subject: [PATCH] 修改折线图

---
 src/views/dataAnalysis/components/ActiveCom.vue |   82 ++++++++++++++++++++++++++++++++++++++++
 1 files changed, 81 insertions(+), 1 deletions(-)

diff --git a/src/views/dataAnalysis/components/ActiveCom.vue b/src/views/dataAnalysis/components/ActiveCom.vue
index aba9465..81c9cbd 100644
--- a/src/views/dataAnalysis/components/ActiveCom.vue
+++ b/src/views/dataAnalysis/components/ActiveCom.vue
@@ -27,6 +27,8 @@
           <a v-if="new Date().getTime() < Date.parse(record.startTime)" @click="handleEdit(record)">缂栬緫</a>
           <a v-else disabled>缂栬緫</a>
           <a-divider type="vertical" />
+          <a @click="viewVehicleFrequency(record)">鏌ョ湅杞﹁締鍔犳补棰戞</a>
+          <a-divider type="vertical" />
           <a-popconfirm title="纭畾鍒犻櫎鍚�?" @confirm="() => handleDelete(record.id)">
             <a>鍒犻櫎</a>
           </a-popconfirm>
@@ -43,6 +45,7 @@
 <script>
 import ActivityModal from './ActivityModal'
 import { JeecgListMixin } from '@tievd/cube-block/lib/mixins/JeecgListMixin'
+import { getAction } from '@tievd/cube-block/lib/api/manage'
 
 export default {
   name: 'ActivityList',
@@ -113,11 +116,88 @@
         delete: '/jyz/activity/delete',
         deleteBatch: '/jyz/activity/deleteBatch',
         exportXlsUrl: '/jyz/activity/exportXls',
+        getVehicleFrequency: '/jyz/activity/getVehicleFrequency',
       },
     }
   },
 
-  methods: {},
+  methods: {
+    viewVehicleFrequency(record) {
+      console.log('鏌ョ湅杞﹁締鍔犳补棰戞', record)
+      getAction(this.url.getVehicleFrequency, { actId: record.id }).then((res) => {
+        if (res.code === 200) {
+          const result = res.result
+          const activity = result.activity || {}
+          const beforeData = result.beforeActivity || {}
+          const duringData = result.duringActivity || {}
+          const afterData = result.afterActivity || {}
+          
+          const formatNumber = (num) => num ? Number(num).toFixed(2) : '0.00'
+          
+          const content = `
+            <div style="padding: 10px;">
+              <h3 style="text-align: center; margin-bottom: 15px;">${activity.name || '娲诲姩'}</h3>
+              <p style="text-align: center; color: #666; margin-bottom: 20px;">
+                娲诲姩鏃堕棿锛�${activity.startTime} ~ ${activity.endTime}
+              </p>
+              
+              <table style="width: 100%; border-collapse: collapse; margin-bottom: 20px;">
+                <thead>
+                  <tr style="background-color: #f5f5f5;">
+                    <th style="border: 1px solid #ddd; padding: 8px; text-align: center;">缁熻椤�</th>
+                    <th style="border: 1px solid #ddd; padding: 8px; text-align: center;">娲诲姩鍓�</th>
+                    <th style="border: 1px solid #ddd; padding: 8px; text-align: center;">娲诲姩涓�</th>
+                    <th style="border: 1px solid #ddd; padding: 8px; text-align: center;">娲诲姩鍚�</th>
+                  </tr>
+                </thead>
+                <tbody>
+                  <tr>
+                    <td style="border: 1px solid #ddd; padding: 8px; text-align: center; font-weight: bold;">鍔犳补杞﹁締鏁�</td>
+                    <td style="border: 1px solid #ddd; padding: 8px; text-align: center;">${beforeData.totalVehicles || 0} 杈�</td>
+                    <td style="border: 1px solid #ddd; padding: 8px; text-align: center; color: #1890ff;">${duringData.totalVehicles || 0} 杈�</td>
+                    <td style="border: 1px solid #ddd; padding: 8px; text-align: center;">${afterData.totalVehicles || 0} 杈�</td>
+                  </tr>
+                  <tr>
+                    <td style="border: 1px solid #ddd; padding: 8px; text-align: center; font-weight: bold;">鍔犳补璁板綍鏁�</td>
+                    <td style="border: 1px solid #ddd; padding: 8px; text-align: center;">${beforeData.totalOilRecords || 0} 绗�</td>
+                    <td style="border: 1px solid #ddd; padding: 8px; text-align: center; color: #1890ff;">${duringData.totalOilRecords || 0} 绗�</td>
+                    <td style="border: 1px solid #ddd; padding: 8px; text-align: center;">${afterData.totalOilRecords || 0} 绗�</td>
+                  </tr>
+                  <tr>
+                    <td style="border: 1px solid #ddd; padding: 8px; text-align: center; font-weight: bold;">骞冲潎鍔犳补閲�</td>
+                    <td style="border: 1px solid #ddd; padding: 8px; text-align: center;">${formatNumber(beforeData.avgOilVolume)} 鍗�</td>
+                    <td style="border: 1px solid #ddd; padding: 8px; text-align: center; color: #1890ff;">${formatNumber(duringData.avgOilVolume)} 鍗�</td>
+                    <td style="border: 1px solid #ddd; padding: 8px; text-align: center;">${formatNumber(afterData.avgOilVolume)} 鍗�</td>
+                  </tr>
+                  <tr>
+                    <td style="border: 1px solid #ddd; padding: 8px; text-align: center; font-weight: bold;">鎬诲姞娌归噺</td>
+                    <td style="border: 1px solid #ddd; padding: 8px; text-align: center;">${beforeData.totalOilVolume || 0} 鍗�</td>
+                    <td style="border: 1px solid #ddd; padding: 8px; text-align: center; color: #1890ff;">${duringData.totalOilVolume || 0} 鍗�</td>
+                    <td style="border: 1px solid #ddd; padding: 8px; text-align: center;">${afterData.totalOilVolume || 0} 鍗�</td>
+                  </tr>
+                </tbody>
+              </table>
+              
+              <p style="text-align: center; color: #999; font-size: 12px; margin-top: 10px;">
+                娉細娲诲姩鏈熼棿鏁版嵁浠ヨ摑鑹查珮浜樉绀�
+              </p>
+            </div>
+          `
+          this.$info({
+            title: '娲诲姩鍔犳补棰戞瀵规瘮缁熻',
+            content: this.$createElement('div', { domProps: { innerHTML: content } }),
+            width: 700,
+            okText: '纭畾',
+          })
+        } else {
+          this.$message.error(res.message || '鏌ヨ澶辫触')
+        }
+      }).catch((err) => {
+        console.error(err)
+        this.$message.error('鏌ヨ澶辫触')
+      })
+    },
+  },
 
   created() {},
 }

--
Gitblit v1.8.0