From 2800fa4f32f3900509cb4d6eefaf2bfaf54efdd7 Mon Sep 17 00:00:00 2001
From: 罗广辉 <guanghui.luo@foxmail.com>
Date: Mon, 21 Apr 2025 18:29:09 +0800
Subject: [PATCH] fix: 天气显示

---
 src/views/TaskManage/TaskTop/TaskTime.vue |   84 +++++++++++++++++++++++++-----------------
 1 files changed, 50 insertions(+), 34 deletions(-)

diff --git a/src/views/TaskManage/TaskTop/TaskTime.vue b/src/views/TaskManage/TaskTop/TaskTime.vue
index e20c7f7..ef1dbc9 100644
--- a/src/views/TaskManage/TaskTop/TaskTime.vue
+++ b/src/views/TaskManage/TaskTop/TaskTime.vue
@@ -10,13 +10,18 @@
 import * as echarts from 'echarts';
 import { jobNumBar } from '@/api/home/task';
 import dayjs from 'dayjs';
+import useEchartsResize from '@/hooks/useEchartsResize'
+import { useStore } from 'vuex';
+
+const store = useStore();
 
 // 日期
 const currenDate = dayjs().format('YYYY-MM-DD');
 const newTime = ref([currenDate, currenDate]);
 
 const chartRef = ref(null);
-let chart = null;
+let { chart } = useEchartsResize(chartRef)
+
 
 const option = {
   tooltip: {
@@ -40,19 +45,37 @@
     bottom: '2%',
     containLabel: true
   },
+  // xAxis: {
+  //   type: 'category',
+  //   axisLine: {
+  //     lineStyle: {
+  //       color: '#fff'
+  //     }
+  //   },
+  //   axisLabel: {
+  //     color: '#fff',
+  //     interval: 0,
+  //     rotate: 30
+  //   }
+  // },
   xAxis: {
-    type: 'category',
-    axisLine: {
-      lineStyle: {
-        color: '#fff'
-      }
-    },
-    axisLabel: {
-      color: '#fff',
-      interval: 0,
-      rotate: 30
-    }
-  },
+		type: 'category',
+		data: ['1'],
+		axisLine: {
+			show: false, // 隐藏轴线
+		},
+		axisTick: {
+			show: true,
+			length: 2,
+			lineStyle: {
+				color: '#ffffff',
+			},
+		},
+		axisLabel: {
+			color: '#ffffff',
+			margin: 8,
+		},
+	},
   yAxis: {
     type: 'value',
     name: '单位:件',
@@ -91,35 +114,27 @@
 };
 
 // 获取任务时间统计数据
-const getJobNumBar = (value,date_enum) => {
-  jobNumBar({date_enum}).then(res => {
+const getJobNumBar = (value) => {
+  jobNumBar(value).then(res => {
     if (res.data.code !== 0) return;
     option.xAxis.data = res.data.data.map(item => item.name);
     option.series[0].data = res.data.data.map(item => item.value);
-    chart.setOption(option);
+    chart.value.setOption(option);
   });
 };
 
-onBeforeUnmount(() => {
-  if (chart) {
-    chart.dispose();
-    chart = null;
+// 添加监听
+watch(() => store.state.task.taskSearchParams, (newVal) => {
+  if (newVal) {
+    getJobNumBar(newVal);
+    (newVal);
   }
-  window.removeEventListener('resize', handleResize);
-});
+}, { deep: true });
+
 onMounted(() => {
-  chart = echarts.init(chartRef.value);
-  getJobNumBar(newTime.value, 'CURRENT_YEAR');
-  
-  if (chart && !chart.isDisposed()) {
-    chart.resize();
-  }
+  getJobNumBar({date_enum: 'TODAY'});
 });
 
-onUnmounted(() => {
-  window.removeEventListener('resize', chart?.resize);
-  chart?.dispose();
-});
 </script>
 
 <style lang="scss" scoped>
@@ -129,7 +144,8 @@
   height: 100%;
   margin-left: 14px;
   .title {
-    margin-top: 10px; 
+    font-size: 14px;
+    margin-top: 10px;
     width: 502px;
     height: 28.6px;
     background: url('@/assets/images/task/task-num-total.png') no-repeat center / 100% 100%;
@@ -142,4 +158,4 @@
     height: 200px;
   }
 }
-</style>
\ No newline at end of file
+</style>

--
Gitblit v1.9.3