From 9a37c5e1b2190c3f6ec71483923922189091dd52 Mon Sep 17 00:00:00 2001
From: shuishen <1109946754@qq.com>
Date: Wed, 18 Dec 2024 09:42:01 +0800
Subject: [PATCH] 事件模拟更新
---
src/views/survey/components/box/unitContent.vue | 166 +++++++++++++++++++++++++++++++++++++++++--------------
1 files changed, 123 insertions(+), 43 deletions(-)
diff --git a/src/views/survey/components/box/unitContent.vue b/src/views/survey/components/box/unitContent.vue
index 47fba66..ea977fa 100644
--- a/src/views/survey/components/box/unitContent.vue
+++ b/src/views/survey/components/box/unitContent.vue
@@ -2,58 +2,138 @@
* @Author: shuishen 1109946754@qq.com
* @Date: 2023-03-13 14:54:26
* @LastEditors: shuishen 1109946754@qq.com
- * @LastEditTime: 2023-03-13 15:00:55
- * @FilePath: \forest-fire\src\views\statistics\components\box\dataContent.vue
- * @Description:
- *
- * Copyright (c) 2023 by ${git_name_email}, All Rights Reserved.
+ * @LastEditTime: 2024-12-03 12:31:17
+ * @FilePath: \bigScreen\src\views\survey\components\box\unitContent.vue
+ * @Description:
+ *
+ * Copyright (c) 2023 by ${git_name_email}, All Rights Reserved.
-->
<script setup>
-// import publicContent from './publicContent.vue'
+import { useEchartsResize } from "hooks/useEchartsResize"
-import { inject } from 'vue'
+import { getEmergencySpaceStatistic } from "../../../../api/indParkInfo"
-let $echarts = inject('echarts')
+let $echarts = inject("echarts")
+const curEcharts = ref(null)
-console.log($echarts)
-
-onMounted(() => {
- let myEcharts = $echarts.init(document.getElementById('unit-content-echarts'))
- myEcharts.setOption({
- xAxis: {
- data: ['A', 'B', 'C', 'D', 'E']
- },
- yAxis: {},
- series: [
- {
- type: 'bar',
- data: [10, 22, 28, 43, 49],
- barWidth: '60%'
- }
- ]
- })
+let myEcharts = reactive({
+ chart: ''
})
+function getEmergencySpace () {
+ getEmergencySpaceStatistic().then((res) => {
+ let data = res.data.data
+ let dataRsult = []
+ var total = 0
+ data.forEach((item) => {
+ dataRsult.push({
+ name: item.type,
+ value: item.num,
+ })
+ total = total + item.num
+ })
+
+ myEcharts.chart.setOption({
+ title: {
+ text: "总数",
+ subtext: String(total),
+ textStyle: {
+ fontSize: 16,
+ color: "#fff",
+ lineHeight: 20,
+ },
+ subtextStyle: {
+ fontSize: 28,
+ color: "#fff",
+ },
+ textAlign: "center",
+ right: "28%",
+ top: "36%",
+ },
+ legend: {
+ orient: "vertical",
+ top: "4%",
+ left: "5%",
+ textStyle: {
+ color: "#fff",
+ },
+ },
+
+ grid: {
+ top: "6%",
+ left: "6%",
+ right: "6%",
+ bottom: "6%",
+ containLabel: true,
+ },
+
+ tooltip: {
+ trigger: "item",
+ },
+
+ series: [
+ {
+ // name: 'Access From',
+ type: "pie",
+ left: "25%",
+ radius: ["45%", "75%"],
+ label: {
+ show: false,
+ },
+ labelLine: {
+ show: false,
+ },
+ // avoidLabelOverlap: false,
+ // padAngle: 5,
+ // itemStyle: {
+ // borderRadius: 10
+ // },
+ // label: {
+ // show: false,
+ // position: 'left'
+ // },
+ // emphasis: {
+ // label: {
+ // show: true,
+ // fontSize: 40,
+ // fontWeight: 'bold'
+ // }
+ // },
+ // labelLine: {
+ // normal: {
+ // show: true
+ // }
+ // },
+ data: dataRsult,
+ },
+ ],
+ })
+ })
+}
+
+nextTick(() => {
+ myEcharts.chart = $echarts.init(curEcharts.value)
+ getEmergencySpace()
+})
+
+const echartsResize = () => {
+ myEcharts.chart && myEcharts.chart.resize()
+}
+
+useEchartsResize(echartsResize)
+
+onUnmounted(() => {
+ if (myEcharts.chart) {
+ myEcharts.chart.clear()
+ myEcharts.chart.dispose()
+
+ myEcharts.chart = null
+ }
+})
</script>
<template>
- <!-- <public-content>
- <template #content> -->
- <div class="unit-content">
- <div class="unit-content-echarts" id="unit-content-echarts">
-
- </div>
- </div>
- <!-- </template>
- </public-content> -->
+ <div class="w100 h100" ref="curEcharts"></div>
</template>
-<style lang="scss" scoped>
-.unit-content {
- color: #fff;
-}
-
-.unit-content-echarts {
- height: 5rem;
-}
-</style>
\ No newline at end of file
+<style lang="scss" scoped></style>
--
Gitblit v1.9.3