修改地震灾害链影响点列表
This commit is contained in:
@@ -1,7 +1,3 @@
|
|||||||
import { ref } from 'vue';
|
|
||||||
import type { XianHiddenDangerSpots } from '@/types/base/XianHiddenDangerSpots';
|
|
||||||
import type { PaginationType } from '@/types/common/PaginationType';
|
|
||||||
import { PointType } from '@/types/common/DisasterType';
|
|
||||||
import { ControlPanelCategory } from '@/types/common/ControlPanelCategory';
|
import { ControlPanelCategory } from '@/types/common/ControlPanelCategory';
|
||||||
import { useStatusStore } from '@/stores/useStatusStore';
|
import { useStatusStore } from '@/stores/useStatusStore';
|
||||||
import { useLayerControl } from '../rain-earthquake/useLayerControl.ts';
|
import { useLayerControl } from '../rain-earthquake/useLayerControl.ts';
|
||||||
@@ -25,7 +21,7 @@ import { useLoadingResourceStore } from '@/stores/useLoadingResourceStore.ts';
|
|||||||
import { LoadingResource } from '@/types/common/LoadingResourceType.ts';
|
import { LoadingResource } from '@/types/common/LoadingResourceType.ts';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 暴雨灾害链
|
* 地震灾害链
|
||||||
* @returns
|
* @returns
|
||||||
*/
|
*/
|
||||||
export const useEarthquakeDisasterChain = () => {
|
export const useEarthquakeDisasterChain = () => {
|
||||||
@@ -34,68 +30,6 @@ export const useEarthquakeDisasterChain = () => {
|
|||||||
const resourceStore = useLoadingResourceStore();
|
const resourceStore = useLoadingResourceStore();
|
||||||
const rightHandle = useRightHandle();
|
const rightHandle = useRightHandle();
|
||||||
|
|
||||||
// ================灾害链影响点列表================================
|
|
||||||
/**
|
|
||||||
* 搜索条件
|
|
||||||
*/
|
|
||||||
const conditions = ref({
|
|
||||||
tableData: '',
|
|
||||||
hiddenPoint: PointType.LANDSLIDE,
|
|
||||||
});
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 下拉选项
|
|
||||||
*/
|
|
||||||
const selectOptions = [
|
|
||||||
{ value: PointType.LANDSLIDE, label: '滑坡' },
|
|
||||||
{ value: PointType.DEBRIS_FLOW, label: '泥石流' },
|
|
||||||
{ value: PointType.RISK_AREA, label: '风险区' },
|
|
||||||
];
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 表格数据
|
|
||||||
*/
|
|
||||||
const tableDatas = ref<XianHiddenDangerSpots[]>([]);
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 表头配置
|
|
||||||
*/
|
|
||||||
const tableColumns = [
|
|
||||||
{ title: '名称', key: 'disasterName' },
|
|
||||||
{ title: '位置', key: 'position' },
|
|
||||||
{ title: '规模等级', key: 'scaleGrade' },
|
|
||||||
{ title: '险情等级', key: 'riskGrade' },
|
|
||||||
];
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 分页配置
|
|
||||||
*/
|
|
||||||
const paginationConfig = ref<PaginationType>({
|
|
||||||
currentPage: 1,
|
|
||||||
pageSize: 10,
|
|
||||||
total: 10,
|
|
||||||
totalPage: 1,
|
|
||||||
});
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 修改搜索条件
|
|
||||||
* @param value - 新的搜索条件
|
|
||||||
*/
|
|
||||||
const changeConditions = (value: {
|
|
||||||
tableData: string;
|
|
||||||
hiddenPoint: PointType;
|
|
||||||
}): void => {
|
|
||||||
conditions.value = value;
|
|
||||||
};
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 修改页码
|
|
||||||
* @param value - 新的页码
|
|
||||||
*/
|
|
||||||
const changeCurrentPage = (value: number) => {
|
|
||||||
paginationConfig.value.currentPage = value;
|
|
||||||
};
|
|
||||||
|
|
||||||
// ================左侧按钮================================
|
// ================左侧按钮================================
|
||||||
/**
|
/**
|
||||||
* 左侧按钮信息
|
* 左侧按钮信息
|
||||||
@@ -356,15 +290,8 @@ export const useEarthquakeDisasterChain = () => {
|
|||||||
};
|
};
|
||||||
|
|
||||||
return {
|
return {
|
||||||
conditions,
|
|
||||||
selectOptions,
|
|
||||||
tableDatas,
|
|
||||||
tableColumns,
|
|
||||||
paginationConfig,
|
|
||||||
leftButtonInfo,
|
leftButtonInfo,
|
||||||
rightButtonInfo,
|
rightButtonInfo,
|
||||||
controlPanel: getControlPanel(),
|
controlPanel: getControlPanel(),
|
||||||
changeConditions,
|
|
||||||
changeCurrentPage,
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -9,23 +9,23 @@
|
|||||||
<!-- 断裂带 -->
|
<!-- 断裂带 -->
|
||||||
<FaultComponent
|
<FaultComponent
|
||||||
v-if="
|
v-if="
|
||||||
useStatusStore().appLoadingCompleted &&
|
statusStore.appLoadingCompleted &&
|
||||||
useStatusStore().mapLayers.faultShow.loading
|
statusStore.mapLayers.faultShow.loading
|
||||||
"
|
"
|
||||||
/>
|
/>
|
||||||
|
|
||||||
<!-- 灾害链影响列表组件 -->
|
<!-- 灾害链影响列表组件 -->
|
||||||
<DisasterChainPointComponent
|
<DisasterChainPointComponent
|
||||||
v-if="
|
v-if="
|
||||||
useStatusStore().appLoadingCompleted &&
|
statusStore.appLoadingCompleted &&
|
||||||
useStatusStore().uiComponents.disasterChainPointShow.loading
|
statusStore.uiComponents.disasterChainPointShow.loading
|
||||||
"
|
"
|
||||||
:select-options="selectOptions"
|
:select-options="disasterChainTableStore.selectOptions"
|
||||||
:table-data-list="tableDatas"
|
:table-data-list="disasterChainTableStore.tableDatas"
|
||||||
:table-columns="tableColumns"
|
:table-columns="disasterChainTableStore.tableColumns"
|
||||||
:page-option="paginationConfig"
|
:page-option="disasterChainTableStore.paginationConfig"
|
||||||
@change-conditions="changeConditions"
|
@change-conditions="disasterChainTableStore.changeConditions"
|
||||||
@change-current-page="changeCurrentPage"
|
@change-current-page="disasterChainTableStore.changeCurrentPage"
|
||||||
/>
|
/>
|
||||||
|
|
||||||
<!-- 左侧按钮组件 -->
|
<!-- 左侧按钮组件 -->
|
||||||
@@ -63,36 +63,36 @@
|
|||||||
import LeftButtonComponent from '@/component/rain-earthquake/LeftButtonComponent.vue';
|
import LeftButtonComponent from '@/component/rain-earthquake/LeftButtonComponent.vue';
|
||||||
import RightButtonComponent from '@/component/rain-earthquake/RightButtonComponent.vue';
|
import RightButtonComponent from '@/component/rain-earthquake/RightButtonComponent.vue';
|
||||||
import { useEarthquakeDisasterChain } from '@/hooks/earthquake/useEarthquakeDisasterChain';
|
import { useEarthquakeDisasterChain } from '@/hooks/earthquake/useEarthquakeDisasterChain';
|
||||||
|
import { useDisasterChainTableStore } from '@/stores/useDisasterChainTableStore';
|
||||||
import { useStatusStore } from '@/stores/useStatusStore';
|
import { useStatusStore } from '@/stores/useStatusStore';
|
||||||
import { DisasterType } from '@/types/common/DisasterType.ts';
|
import { DisasterType, PointType } from '@/types/common/DisasterType.ts';
|
||||||
import { watch } from 'vue';
|
import { onBeforeMount } from 'vue';
|
||||||
import { useRoute } from 'vue-router';
|
import { useRoute } from 'vue-router';
|
||||||
|
|
||||||
const route = useRoute();
|
const route = useRoute();
|
||||||
|
|
||||||
const {
|
const { leftButtonInfo, rightButtonInfo, controlPanel } =
|
||||||
conditions,
|
useEarthquakeDisasterChain();
|
||||||
selectOptions,
|
|
||||||
tableDatas,
|
|
||||||
tableColumns,
|
|
||||||
paginationConfig,
|
|
||||||
leftButtonInfo,
|
|
||||||
rightButtonInfo,
|
|
||||||
controlPanel,
|
|
||||||
changeConditions,
|
|
||||||
changeCurrentPage,
|
|
||||||
} = useEarthquakeDisasterChain();
|
|
||||||
|
|
||||||
const statusStore = useStatusStore();
|
const statusStore = useStatusStore();
|
||||||
|
|
||||||
// 监听条件变化
|
const disasterChainTableStore = useDisasterChainTableStore();
|
||||||
watch(
|
|
||||||
conditions,
|
onBeforeMount(() => {
|
||||||
() => {
|
// 设置相关数据
|
||||||
console.log('条件改变');
|
disasterChainTableStore.selectOptions = [
|
||||||
},
|
{ value: PointType.LANDSLIDE, label: '滑坡' },
|
||||||
{ deep: true }
|
{ value: PointType.DEBRIS_FLOW, label: '泥石流' },
|
||||||
);
|
{ value: PointType.RISK_AREA, label: '风险区' },
|
||||||
|
];
|
||||||
|
|
||||||
|
disasterChainTableStore.tableColumns = [
|
||||||
|
{ title: '名称', key: 'disasterName' },
|
||||||
|
{ title: '位置', key: 'position' },
|
||||||
|
{ title: '规模等级', key: 'scaleGrade' },
|
||||||
|
{ title: '险情等级', key: 'riskGrade' },
|
||||||
|
];
|
||||||
|
});
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style scoped></style>
|
<style scoped></style>
|
||||||
|
|||||||
Reference in New Issue
Block a user