From bc365ef47ae4e01754aeadbae26170e11c9bb80e Mon Sep 17 00:00:00 2001
From: gaoluyang <2820782392@qq.com>
Date: 星期一, 22 六月 2026 16:56:12 +0800
Subject: [PATCH] 新疆马铃薯 1.删除按钮添加操作权限

---
 src/views/reportAnalysis/dataDashboard/index.vue |   71 +++++++++++++++++++++++++++++++++--
 1 files changed, 67 insertions(+), 4 deletions(-)

diff --git a/src/views/reportAnalysis/dataDashboard/index.vue b/src/views/reportAnalysis/dataDashboard/index.vue
index 67a700f..3ef2658 100644
--- a/src/views/reportAnalysis/dataDashboard/index.vue
+++ b/src/views/reportAnalysis/dataDashboard/index.vue
@@ -28,8 +28,6 @@
     <!-- 涓棿鍖哄煙 -->
     <div class="center-panel">
       <CenterTop />
-      
-      <CenterBottom />
     </div>
 
     <!-- 鍙充晶鍖哄煙 -->
@@ -44,12 +42,11 @@
 </template>
 
 <script setup>
-import { ref, onMounted, onBeforeUnmount, nextTick } from 'vue'
+import { ref, onMounted, onBeforeUnmount, nextTick, provide } from 'vue'
 import autofit from 'autofit.js'
 import LeftTop from './components/basic/left-top.vue'
 import LeftBottom from './components/basic/left-bottom.vue'
 import CenterTop from './components/basic/center-top.vue'
-import CenterBottom from './components/basic/center-bottom.vue'
 import RightTop from './components/basic/right-top.vue'
 import RightBottom from './components/basic/right-bottom.vue'
 import useUserStore from '@/store/modules/user'
@@ -65,6 +62,12 @@
 
 // 鐢ㄦ埛store
 const userStore = useUserStore()
+
+// 澶у睆鎺ュ彛杞闂撮殧
+const DASHBOARD_REFRESH_MS = 60 * 1000
+const dataDashboardRefreshTick = ref(0)
+provide('dataDashboardRefreshTick', dataDashboardRefreshTick)
+let dashboardPollTimer = null
 
 // 璁$畻缂╂斁姣斾緥
 const calculateScale = () => {
@@ -140,9 +143,17 @@
   window.addEventListener('fullscreenchange', handleFullscreenChange)
   window.addEventListener('webkitfullscreenchange', handleFullscreenChange)
   window.addEventListener('MSFullscreenChange', handleFullscreenChange)
+
+  dashboardPollTimer = setInterval(() => {
+    dataDashboardRefreshTick.value++
+  }, DASHBOARD_REFRESH_MS)
 })
 
 onBeforeUnmount(() => {
+  if (dashboardPollTimer) {
+    clearInterval(dashboardPollTimer)
+    dashboardPollTimer = null
+  }
   window.removeEventListener('resize', handleResize)
   window.removeEventListener('fullscreenchange', handleFullscreenChange)
   window.removeEventListener('webkitfullscreenchange', handleFullscreenChange)
@@ -169,6 +180,25 @@
 justify-content: center;
 background-color: #000;
 overflow: hidden;
+position: relative;
+}
+
+/* 鍔ㄦ�佺綉鏍艰儗鏅� */
+.scale-container::before {
+content: '';
+position: absolute;
+inset: 0;
+background-image:
+  linear-gradient(rgba(0, 212, 255, 0.03) 1px, transparent 1px),
+  linear-gradient(90deg, rgba(0, 212, 255, 0.03) 1px, transparent 1px);
+background-size: 50px 50px;
+animation: gridMove 20s linear infinite;
+z-index: 0;
+}
+
+@keyframes gridMove {
+0% { transform: translate(0, 0); }
+100% { transform: translate(50px, 50px); }
 }
 
 /* 鍐呴儴鍐呭鍖哄煙 - 鍥哄畾璁捐灏哄 */
@@ -232,6 +262,12 @@
 color: #FFFFFF;
 top: 16px;
 position: absolute;
+animation: titleGlow 3s ease-in-out infinite;
+}
+
+@keyframes titleGlow {
+0%, 100% { text-shadow: 0 0 20px rgba(0, 212, 255, 0.3); }
+50% { text-shadow: 0 0 40px rgba(0, 212, 255, 0.6), 0 0 60px rgba(0, 212, 255, 0.3); }
 }
 
 .fullscreen-btn {
@@ -272,6 +308,33 @@
 overflow: hidden;
 }
 
+.left-panel {
+animation: slideInLeft 0.8s ease-out;
+}
+
+.right-panel {
+animation: slideInRight 0.8s ease-out;
+}
+
+.center-panel {
+animation: slideInUp 0.8s ease-out;
+}
+
+@keyframes slideInLeft {
+from { opacity: 0; transform: translateX(-50px); }
+to { opacity: 1; transform: translateX(0); }
+}
+
+@keyframes slideInRight {
+from { opacity: 0; transform: translateX(50px); }
+to { opacity: 1; transform: translateX(0); }
+}
+
+@keyframes slideInUp {
+from { opacity: 0; transform: translateY(30px); }
+to { opacity: 1; transform: translateY(0); }
+}
+
 .left-panel,
 .right-panel {
 flex: 1;

--
Gitblit v1.9.3