修改回来 不合并统计数据和点位接口 调整两个异步函数的先后顺序
This commit is contained in:
parent
fda22241f7
commit
33f0e16448
@ -682,7 +682,7 @@ const handleForcePresetToggle = async () => {
|
|||||||
// 当前隐藏,切换为显示
|
// 当前隐藏,切换为显示
|
||||||
|
|
||||||
// 切换搜索范围为50km
|
// 切换搜索范围为50km
|
||||||
disasterData.updateSearchRadius(50);
|
// disasterData.updateSearchRadius(50);
|
||||||
|
|
||||||
// 1. 关闭地图对比模式(使用统一助手)
|
// 1. 关闭地图对比模式(使用统一助手)
|
||||||
if (isCompareMode.value) {
|
if (isCompareMode.value) {
|
||||||
@ -945,14 +945,16 @@ const handleDistanceChange = async (newDistance) => {
|
|||||||
createOrUpdateRangeCircle(mapStore.viewer, newDistance);
|
createOrUpdateRangeCircle(mapStore.viewer, newDistance);
|
||||||
}
|
}
|
||||||
|
|
||||||
// 3. 重新加载应急资源数据并更新地图标记
|
// 3. 重新加载应急统计数据
|
||||||
// await loadEmergencyResources(DISASTER_CENTER.lon, DISASTER_CENTER.lat)
|
await loadEmergencyBaseAndPreset(DISASTER_CENTER.lon, DISASTER_CENTER.lat);
|
||||||
|
|
||||||
|
// 4. 重新加载应急资源数据并更新地图标记
|
||||||
|
await loadReserveCentersAndPresets(DISASTER_CENTER.lon, DISASTER_CENTER.lat);
|
||||||
|
|
||||||
// 3. 重新加载储备中心和预置点数据并更新地图标记 并且 重新加载应急统计数据 (新增)
|
// 3. 重新加载储备中心和预置点数据并更新地图标记 并且 重新加载应急统计数据 (新增)
|
||||||
await loadReserveCentersAndPresetsAndStatistics(DISASTER_CENTER.lon, DISASTER_CENTER.lat);
|
// await loadReserveCentersAndPresetsAndStatistics(DISASTER_CENTER.lon, DISASTER_CENTER.lat);
|
||||||
|
|
||||||
|
|
||||||
// // 5. 重新加载应急统计数据 (新增)
|
|
||||||
// await loadEmergencyBaseAndPreset(DISASTER_CENTER.lon, DISASTER_CENTER.lat);
|
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -977,14 +979,23 @@ const showAllMarkersAndRange = async () => {
|
|||||||
// 2. 显示接口标记
|
// 2. 显示接口标记
|
||||||
// hideMarkers()
|
// hideMarkers()
|
||||||
|
|
||||||
|
// 2. 加载全部储备中心/预置点到地图(不限制距离)
|
||||||
|
// console.log("[index.vue] 加载全部储备中心/预置点到地图...");
|
||||||
|
// await loadReserveCentersAndPresetsAndStatistics(
|
||||||
|
// DISASTER_CENTER.lon,
|
||||||
|
// DISASTER_CENTER.lat,
|
||||||
|
// true
|
||||||
|
// );
|
||||||
|
|
||||||
// 2. 加载全部储备中心/预置点到地图(不限制距离)
|
// 2. 加载全部储备中心/预置点到地图(不限制距离)
|
||||||
console.log("[index.vue] 加载全部储备中心/预置点到地图...");
|
console.log("[index.vue] 加载全部储备中心/预置点到地图...");
|
||||||
await loadReserveCentersAndPresetsAndStatistics(
|
await loadReserveCentersAndPresets(
|
||||||
DISASTER_CENTER.lon,
|
DISASTER_CENTER.lon,
|
||||||
DISASTER_CENTER.lat,
|
DISASTER_CENTER.lat,
|
||||||
true
|
true
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
// 3. 显示范围圈
|
// 3. 显示范围圈
|
||||||
showRangeCircle();
|
showRangeCircle();
|
||||||
|
|
||||||
@ -1182,6 +1193,85 @@ const loadEmergencyResources = async (longitude, latitude) => {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 加载储备中心和预置点数据 以及加载应急力量统计数据
|
||||||
|
* @param {number} longitude - 经度(可选,不传则查询全部)
|
||||||
|
* @param {number} latitude - 纬度(可选,不传则查询全部)
|
||||||
|
* @param {boolean} loadAllForMap - 是否加载全部点位到地图(true时不限制距离)
|
||||||
|
*/
|
||||||
|
const loadReserveCentersAndPresets = async (longitude,
|
||||||
|
latitude,
|
||||||
|
loadAllForMap = false) => {
|
||||||
|
try {
|
||||||
|
// 构建请求参数
|
||||||
|
const params = {};
|
||||||
|
|
||||||
|
if (!loadAllForMap && longitude !== undefined && latitude !== undefined) {
|
||||||
|
// 正常模式:传递经纬度和距离限制
|
||||||
|
params.longitude = longitude;
|
||||||
|
params.latitude = latitude;
|
||||||
|
params.maxDistance = disasterData.forcePreset.value.searchRadius;
|
||||||
|
}
|
||||||
|
// loadAllForMap 为 true 时,不传任何参数,获取全部数据
|
||||||
|
|
||||||
|
const response = await request({
|
||||||
|
url: `snow-ops-platform/yhYjll/list`,
|
||||||
|
method: "GET",
|
||||||
|
params,
|
||||||
|
});
|
||||||
|
|
||||||
|
if (response?.data && Array.isArray(response.data)) {
|
||||||
|
console.log(
|
||||||
|
"[index.vue] 储备中心和预置点数据加载成功:",
|
||||||
|
response.data?.length,
|
||||||
|
"个点位"
|
||||||
|
);
|
||||||
|
|
||||||
|
// 1. 转换数据为标准 stations 格式
|
||||||
|
const transformedStations = disasterData.transformReserveDataToStations(
|
||||||
|
response.data,
|
||||||
|
{ longitude, latitude }
|
||||||
|
);
|
||||||
|
|
||||||
|
// 2. 仅在非"全部加载"模式下更新 forcePreset.stations(用于 station-list 显示)
|
||||||
|
if (!loadAllForMap && transformedStations.length > 0) {
|
||||||
|
disasterData.forcePreset.value.stations = transformedStations;
|
||||||
|
console.log(
|
||||||
|
"[index.vue] 已更新 forcePreset.stations:",
|
||||||
|
transformedStations.length,
|
||||||
|
"个"
|
||||||
|
);
|
||||||
|
}
|
||||||
|
// 3. 添加地图标记(全部或范围内)
|
||||||
|
if (mapStore.viewer) {
|
||||||
|
console.log("[index.vue] 添加储备中心和预置点地图标记...");
|
||||||
|
clearReserveCenterMarkers(mapStore.viewer);
|
||||||
|
await addReserveCenterMarkers(
|
||||||
|
mapStore.viewer,
|
||||||
|
response.data,
|
||||||
|
{
|
||||||
|
heightOffset: 10,
|
||||||
|
},
|
||||||
|
{ longitude, latitude }
|
||||||
|
);
|
||||||
|
} else {
|
||||||
|
console.warn("[index.vue] 地图viewer未就绪,跳过标记更新");
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
console.warn("[index.vue] 储备中心和预置点接口返回数据为空");
|
||||||
|
}
|
||||||
|
|
||||||
|
return response;
|
||||||
|
} catch (error) {
|
||||||
|
console.error("[index.vue] 加载储备中心和预置点数据失败:", error);
|
||||||
|
ElMessage.warning({
|
||||||
|
message: "储备中心和预置点数据加载失败",
|
||||||
|
duration: 3000,
|
||||||
|
});
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 加载储备中心和预置点数据 以及加载应急力量统计数据
|
* 加载储备中心和预置点数据 以及加载应急力量统计数据
|
||||||
* @param {number} longitude - 经度(可选,不传则查询全部)
|
* @param {number} longitude - 经度(可选,不传则查询全部)
|
||||||
@ -1277,36 +1367,36 @@ const loadReserveCentersAndPresetsAndStatistics = async (
|
|||||||
* 加载应急基地与预置点、应急装备、应急物资、应急人员的统计数量
|
* 加载应急基地与预置点、应急装备、应急物资、应急人员的统计数量
|
||||||
* /snow-ops-platform/yhYjll/statistics
|
* /snow-ops-platform/yhYjll/statistics
|
||||||
*/
|
*/
|
||||||
// const loadEmergencyBaseAndPreset = async (longitude, latitude) => {
|
const loadEmergencyBaseAndPreset = async (longitude, latitude) => {
|
||||||
// try {
|
try {
|
||||||
// const response = await request({
|
const response = await request({
|
||||||
// url: `/snow-ops-platform/yhYjll/statistics`,
|
url: `/snow-ops-platform/yhYjll/statistics`,
|
||||||
// method: "GET",
|
method: "GET",
|
||||||
// params: {
|
params: {
|
||||||
// longitude,
|
longitude,
|
||||||
// latitude,
|
latitude,
|
||||||
// maxDistance: disasterData.forcePreset.value.searchRadius,
|
maxDistance: disasterData.forcePreset.value.searchRadius,
|
||||||
// },
|
},
|
||||||
// });
|
});
|
||||||
|
|
||||||
// if (response?.data) {
|
if (response?.data) {
|
||||||
// // 保存统计数据到状态 (仅更新统计,不更新stations)
|
// 保存统计数据到状态 (仅更新统计,不更新stations)
|
||||||
// disasterData.updateForcePreset(response.data, { onlyStatistics: true });
|
disasterData.updateForcePreset(response.data, { onlyStatistics: true });
|
||||||
// console.log("[index.vue] 应急统计数据加载成功:", response.data);
|
console.log("[index.vue] 应急统计数据加载成功:", response.data);
|
||||||
// } else {
|
} else {
|
||||||
// console.warn("[index.vue] 应急统计数据接口返回数据为空");
|
console.warn("[index.vue] 应急统计数据接口返回数据为空");
|
||||||
// }
|
}
|
||||||
|
|
||||||
// return response;
|
return response;
|
||||||
// } catch (error) {
|
} catch (error) {
|
||||||
// console.error("[index.vue] 加载应急统计数据失败:", error);
|
console.error("[index.vue] 加载应急统计数据失败:", error);
|
||||||
// ElMessage.warning({
|
ElMessage.warning({
|
||||||
// message: "应急统计数据加载失败",
|
message: "应急统计数据加载失败",
|
||||||
// duration: 3000,
|
duration: 3000,
|
||||||
// });
|
});
|
||||||
// return null;
|
return null;
|
||||||
// }
|
}
|
||||||
// };
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 查询应急装备和应急物资列表 /snow-ops-platform/yhYjll/listMaterials
|
* 查询应急装备和应急物资列表 /snow-ops-platform/yhYjll/listMaterials
|
||||||
@ -1558,13 +1648,17 @@ const initializeScene = async () => {
|
|||||||
hideMarkers();
|
hideMarkers();
|
||||||
console.log("[index.vue] 已隐藏应急资源标记(等待快速匹配激活)");
|
console.log("[index.vue] 已隐藏应急资源标记(等待快速匹配激活)");
|
||||||
|
|
||||||
// 12. 加载储备中心和预置点数据 并且 加载应急统计数据(新增)
|
// // 12. 加载储备中心和预置点数据 并且 加载应急统计数据(新增)
|
||||||
console.log("[index.vue] 加载储备中心和预置点数据...");
|
// console.log("[index.vue] 加载储备中心和预置点数据...");
|
||||||
await loadReserveCentersAndPresetsAndStatistics(DISASTER_CENTER.lon, DISASTER_CENTER.lat);
|
// await loadReserveCentersAndPresetsAndStatistics(DISASTER_CENTER.lon, DISASTER_CENTER.lat);
|
||||||
|
|
||||||
// // 13. 加载应急统计数据
|
// 12. 加载应急统计数据
|
||||||
// console.log("[index.vue] 加载应急统计数据...");
|
console.log("[index.vue] 加载应急统计数据...");
|
||||||
// await loadEmergencyBaseAndPreset(DISASTER_CENTER.lon, DISASTER_CENTER.lat);
|
await loadEmergencyBaseAndPreset(DISASTER_CENTER.lon, DISASTER_CENTER.lat);
|
||||||
|
|
||||||
|
// 13. 加载储备中心和预置点数据
|
||||||
|
console.log("[index.vue] 加载储备中心和预置点数据...");
|
||||||
|
await loadReserveCentersAndPresets(DISASTER_CENTER.lon, DISASTER_CENTER.lat);
|
||||||
|
|
||||||
cesiumViewer.value = viewer;
|
cesiumViewer.value = viewer;
|
||||||
console.log("[index.vue] 场景初始化完成");
|
console.log("[index.vue] 场景初始化完成");
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user