import axios from "./requestHT"; // 获取Token export async function fetchToken() { try { const response = await axios.post("/hp/auth/getToken", { username: "yunweiyonghu", password: "c2d6bba7f0a67701a97550684e39fa5f", systemName: "RS_SYSTEM", }); const token = response.data.data.token; // console.log("Token fetched:", token); localStorage.setItem("HPToken", token); return token; } catch (error) { console.error("Failed to fetch token:", error); } } // 自动重新获取token export function setupTokenRefresh() { const intervalTime = 28 * 60 * 1000; fetchToken().catch((error) => { console.error("Initial token fetch failed:", error); }); setInterval(() => { fetchToken().catch((error) => { console.error("Periodic token fetch failed:", error); }); }, intervalTime); } // 获取避险位置 export async function getSafeLocation(data) { const response = await axios.post("/hp/safeHavenLocation/getData", { filterObject: { year: 2024, // 动态传入的年份参数 }, }); console.log("getSafeLocation:", response); return response.data; } // 获取避险线路 export async function getEscapeRoute(data) { const response = await axios.post("/hp/escapeRoute/getData", { filterObject: { year: 2024, // 动态传入的年份参数 }, }); console.log("getEscapeRoute:", response); return response.data; } // 获取传感器列表 export async function getSensor(data) { const response = await axios.post("/hp/sensor/getData", { filterObject: { year: 2024, // 动态传入的年份参数 }, }); console.log("getSensor:", response); return response.data; } // 获取雨量数据 export async function getRainfallData() { const response = await axios.post("/hp/rainfallCountyCity/getData", { filterObject: {}, "pageSize": 1000 }); console.log("getRainfallData:", response); return response.data; } // 获取琉璃庙镇监测设备信息 export async function getDeviceInfoShg(data) { const response = await axios.post("/hp/deviceInfo/getData", { filterObject: { "dictDeviceType": data, "townCode": "110116110000" }, "pageSize": 10000 }); return response.data; } // 获取北京市监测设备信息 export async function getDeviceInfo(data) { const response = await axios.post("/hp/deviceInfo/getData", { "currentPage": 1, "pageSize": 10000, "filterObject": { "belongObjList": [ "1797461961110261762" ] // "id": "", // "deviceName": "", // "deviceCode": "", // "deviceClientId": "", // "dictDeviceType": "", // "hdName": "", // "installUnit": "", // "rtuUnit": "", // "dictDisasterType": "", // "dictCommunicationType": "", // "dictDeviceStatus": "", // "divisionDistrict": "", // "townCode": "" }, "sortedList": [ { "sorted": "createTime", "type": "desc" } ] }) return response.data; } // 获取隐患点信息 export async function getDangerPoint(data) { const response = await axios.post("/hp/sinoDzHiddenDangerPoint/getData", { filterObject: { "divisionCounty": "110116000000", "divisionTown": "110116110000", // "divisionCounty": null, // "divisionTown": null, "year": 2025 }, "pageSize": 10000 }); return response.data; } export async function fetchAndLoadDangerPoints(loadCallback) { let currentPage = 1; const pageSize = 100; // 每次请求的数据量 while (true) { try { const response = await axios.post("/hp/sinoDzHiddenDangerPoint/getData", { filterObject: { divisionCounty: "110111000000", divisionTown: null, year: 2025 }, pageSize: pageSize, currentPage: currentPage // 添加当前页码参数 }); const pageData = response.data?.data?.pageData; if (!Array.isArray(pageData)) { console.error("Expected an array in 'pageData', but got:", typeof pageData, pageData); break; } if (pageData.length === 0) break; // 没有更多数据了 // 调用传入的回调函数,用于更新页面内容 loadCallback(pageData); if (pageData.length < pageSize) break; // 如果本次返回的数据少于pageSize,说明已获取完所有数据 currentPage++; // 更新下一页的页码 } catch (error) { console.error("Error fetching danger points:", error); break; } } } // 根据年份获取雨量数据 export async function getRainfallDataYears(data) { const response = await axios.post("/hp/rainfallCountyCity/getData", { filterObject: { year: data }, "pageSize": 1000 }); console.log("getRainfallData:", response); return response.data; }