From 42c8c76b00027995e01cbe692198831fbe019f38 Mon Sep 17 00:00:00 2001
From: zhengyiming <540361168@qq.com>
Date: 星期二, 02 十二月 2025 17:11:49 +0800
Subject: [PATCH] fix: 数据看板
---
src/views/DataBoard/components/DataBoardCenterMap.vue | 40 +++++++++++++++++++++++++++-------------
1 files changed, 27 insertions(+), 13 deletions(-)
diff --git a/src/views/DataBoard/components/DataBoardCenterMap.vue b/src/views/DataBoard/components/DataBoardCenterMap.vue
index f88f456..2f7d0c8 100644
--- a/src/views/DataBoard/components/DataBoardCenterMap.vue
+++ b/src/views/DataBoard/components/DataBoardCenterMap.vue
@@ -10,11 +10,13 @@
:backgroundImage="DataBoardDataInfoBg6"
label="鍙戞斁棰�"
v-model:value="sumBountyReleaseAmountValue"
+ :precision="2"
></DataBoardDataInfoItem>
<DataBoardDataInfoItem
:backgroundImage="DataBoardDataInfoBg7"
label="浣跨敤棰�"
v-model:value="sumBountyUseAmountValue"
+ :precision="2"
></DataBoardDataInfoItem>
<DataBoardDataInfoItem
:backgroundImage="DataBoardDataInfoBg8"
@@ -30,7 +32,7 @@
v-model:choose="item.choose"
:parkName="item.parkName"
:class="item.class"
- @click="handleClick(item.id)"
+ @click="handleClick(index)"
></DataBoardCenterMapMark>
</div>
</div>
@@ -49,6 +51,7 @@
import { useIndustrialParkDropDownList } from '@/hooks';
import _ from 'lodash';
import { useIntervalValue } from '../hooks';
+import { useIntervalFn } from '@vueuse/core';
defineOptions({
name: 'DataBoardCenterMap',
@@ -68,11 +71,11 @@
insurePeopleCount: 0,
});
-function handleClick(id: string) {
+function handleClick(chooseIndex: number) {
form.mapList.forEach((item, index) => {
- item.choose = item.id === id;
+ item.choose = chooseIndex === index;
});
- form.industrialParkId = id;
+ form.industrialParkId = dataBoardIndustrialParkList.value[chooseIndex]?.id;
refetch();
}
@@ -100,15 +103,6 @@
},
});
-onMounted(async () => {
- await queryClient.invalidateQueries(['industrialParkServices/getIndustrialParkDropDownList']);
- if (dataBoardIndustrialParkList.value.length > 0) {
- form.industrialParkId = dataBoardIndustrialParkList.value[0].id;
- form.mapList = dataBoardIndustrialParkList.value;
- refetch();
- }
-});
-
const { value: totalCustomerCountValue, changeValue: changeTotalCustomerCount } = useIntervalValue(
form.totalCustomerCount
);
@@ -120,6 +114,26 @@
const { value: insurePeopleCountValue, changeValue: changeInsurePeopleCount } = useIntervalValue(
form.insurePeopleCount
);
+
+const { pause, resume } = useIntervalFn(() => {
+ if (dataBoardIndustrialParkList.value.length === 0) return;
+ const index = _.random(0, dataBoardIndustrialParkList.value.length - 1);
+ handleClick(index);
+}, 30000);
+
+onMounted(async () => {
+ await queryClient.invalidateQueries(['industrialParkServices/getIndustrialParkDropDownList']);
+ if (dataBoardIndustrialParkList.value.length > 0) {
+ form.industrialParkId = dataBoardIndustrialParkList.value[0].id;
+ form.mapList = dataBoardIndustrialParkList.value;
+ refetch();
+ }
+ resume();
+});
+
+onUnmounted(() => {
+ pause();
+});
</script>
<style lang="scss" scoped>
@use '@/style/common.scss' as *;
--
Gitblit v1.9.1