2026-04-11 10:09:40 +08:00
|
|
|
<!-- 基础组件 -->
|
|
|
|
|
<template>
|
|
|
|
|
<div>
|
|
|
|
|
<!-- 地图组件 -->
|
|
|
|
|
<MapComponent />
|
|
|
|
|
|
2026-04-28 10:05:49 +08:00
|
|
|
<!-- 暴雨场景隐患点组件 -->
|
|
|
|
|
<template v-if="props.disasterType === DisasterType.RAINSTORM">
|
|
|
|
|
<!-- 滑坡隐患点 -->
|
|
|
|
|
<LandslideComponent
|
|
|
|
|
v-if="
|
|
|
|
|
useStatusStore().appLoadingCompleted &&
|
|
|
|
|
useStatusStore().poiLayers.showLandslideHiddenPoint.loading
|
|
|
|
|
"
|
|
|
|
|
/>
|
|
|
|
|
|
|
|
|
|
<!-- 泥石流隐患点 -->
|
|
|
|
|
<DebrisFlowComponent
|
|
|
|
|
v-if="
|
|
|
|
|
useStatusStore().appLoadingCompleted &&
|
|
|
|
|
useStatusStore().poiLayers.showDebrisFlowHiddenPoint.loading
|
|
|
|
|
"
|
|
|
|
|
/>
|
|
|
|
|
|
|
|
|
|
<!-- 内涝隐患点 -->
|
|
|
|
|
<WaterLoggingComponent
|
|
|
|
|
v-if="
|
|
|
|
|
useStatusStore().appLoadingCompleted &&
|
|
|
|
|
useStatusStore().poiLayers.showWaterLoggingHiddenPoint.loading
|
|
|
|
|
"
|
|
|
|
|
/>
|
|
|
|
|
|
|
|
|
|
<!-- 山洪隐患点 -->
|
|
|
|
|
<FlashFloodComponent
|
|
|
|
|
v-if="
|
|
|
|
|
useStatusStore().appLoadingCompleted &&
|
|
|
|
|
useStatusStore().poiLayers.showFlashFloodHiddenPoint.loading
|
|
|
|
|
"
|
|
|
|
|
/>
|
|
|
|
|
</template>
|
|
|
|
|
|
|
|
|
|
<!-- 地震场景隐患点组件 -->
|
|
|
|
|
<template v-else-if="props.disasterType === DisasterType.EARTHQUAKE">
|
|
|
|
|
<!-- 滑坡隐患点 -->
|
|
|
|
|
<LandslideComponent
|
|
|
|
|
v-if="
|
|
|
|
|
useStatusStore().appLoadingCompleted &&
|
|
|
|
|
useStatusStore().poiLayers.showLandslideHiddenPoint.loading
|
|
|
|
|
"
|
|
|
|
|
/>
|
|
|
|
|
|
|
|
|
|
<!-- 泥石流隐患点 -->
|
|
|
|
|
<DebrisFlowComponent
|
|
|
|
|
v-if="
|
|
|
|
|
useStatusStore().appLoadingCompleted &&
|
|
|
|
|
useStatusStore().poiLayers.showDebrisFlowHiddenPoint.loading
|
|
|
|
|
"
|
|
|
|
|
/>
|
|
|
|
|
</template>
|
2026-04-11 10:09:40 +08:00
|
|
|
|
|
|
|
|
<!-- 风险点组件 -->
|
2026-04-18 16:40:04 +08:00
|
|
|
<RiskPointComponent
|
|
|
|
|
v-if="
|
|
|
|
|
useStatusStore().appLoadingCompleted &&
|
|
|
|
|
useStatusStore().mapLayers.riskPointShow.loading
|
|
|
|
|
"
|
|
|
|
|
/>
|
2026-05-05 19:17:58 +08:00
|
|
|
|
|
|
|
|
<!-- 降雨栅格图层组件(暴雨模拟) -->
|
|
|
|
|
<RainfallGridComponent
|
|
|
|
|
v-if="
|
|
|
|
|
useStatusStore().appLoadingCompleted &&
|
|
|
|
|
useStatusStore().weatherLayers.showRainfallGrid.loading
|
|
|
|
|
"
|
|
|
|
|
/>
|
2026-04-11 10:09:40 +08:00
|
|
|
</div>
|
|
|
|
|
</template>
|
|
|
|
|
|
|
|
|
|
<script setup lang="ts">
|
2026-04-13 10:30:03 +08:00
|
|
|
import MapComponent from '@/component/map/MapComponent.vue';
|
2026-04-28 10:05:49 +08:00
|
|
|
import { DisasterType } from '@/types/common/DisasterType.ts';
|
2026-04-21 19:50:57 +08:00
|
|
|
import RiskPointComponent from '@/component/rain-earthquake/basic/RiskPointComponent.vue';
|
2026-04-28 10:05:49 +08:00
|
|
|
import LandslideComponent from '@/component/rain-earthquake/basic/LandslideComponent.vue';
|
|
|
|
|
import DebrisFlowComponent from '@/component/rain-earthquake/basic/DebrisFlowComponent.vue';
|
|
|
|
|
import WaterLoggingComponent from '@/component/rain-earthquake/basic/WaterLoggingComponent.vue';
|
|
|
|
|
import FlashFloodComponent from '@/component/rain-earthquake/basic/FlashFloodComponent.vue';
|
2026-05-05 19:17:58 +08:00
|
|
|
import RainfallGridComponent from '@/component/rain-earthquake/detail-panels/RainfallGridComponent.vue';
|
2026-04-14 08:59:05 +08:00
|
|
|
import { useStatusStore } from '@/stores/useStatusStore';
|
2026-04-11 10:09:40 +08:00
|
|
|
|
2026-04-13 10:30:03 +08:00
|
|
|
// 获取父组件传递德数据
|
|
|
|
|
const props = defineProps<{
|
|
|
|
|
disasterType: DisasterType;
|
|
|
|
|
}>();
|
2026-04-11 10:09:40 +08:00
|
|
|
</script>
|
|
|
|
|
|
|
|
|
|
<style scoped></style>
|