更新api url

This commit is contained in:
JIANG
2026-01-29 11:18:54 +08:00
parent 7122b0b2ac
commit 5cb2d17be1
17 changed files with 85 additions and 84 deletions

View File

@@ -91,13 +91,13 @@ const fetchFromBackend = async (
.join(",");
// 监测值数据接口use_cleaned=false
const rawDataUrl = `${config.BACKEND_URL}/timescaledb/composite/element-scada?element_id=${feature_ids}&start_time=${start_time}&end_time=${end_time}&use_cleaned=false`;
const rawDataUrl = `${config.BACKEND_URL}/api/v1/composite/element-scada?element_id=${feature_ids}&start_time=${start_time}&end_time=${end_time}&use_cleaned=false`;
// 清洗数据接口use_cleaned=true
const cleanedDataUrl = `${config.BACKEND_URL}/timescaledb/composite/element-scada?element_id=${feature_ids}&start_time=${start_time}&end_time=${end_time}&use_cleaned=true`;
const cleanedDataUrl = `${config.BACKEND_URL}/api/v1/composite/element-scada?element_id=${feature_ids}&start_time=${start_time}&end_time=${end_time}&use_cleaned=true`;
// 模拟数据接口
const simulationDataUrl = `${config.BACKEND_URL}/timescaledb/composite/element-simulation?feature_infos=${feature_infos}&start_time=${start_time}&end_time=${end_time}`;
const simulationDataUrl = `${config.BACKEND_URL}/api/v1/composite/element-simulation?feature_infos=${feature_infos}&start_time=${start_time}&end_time=${end_time}`;
// 策略模拟数据接口
const schemeSimulationDataUrl = `${config.BACKEND_URL}/timescaledb/composite/element-simulation?feature_infos=${feature_infos}&start_time=${start_time}&end_time=${end_time}&scheme_type=${scheme_type}&scheme_name=${scheme_name}`;
const schemeSimulationDataUrl = `${config.BACKEND_URL}/api/v1/composite/element-simulation?feature_infos=${feature_infos}&start_time=${start_time}&end_time=${end_time}&scheme_type=${scheme_type}&scheme_name=${scheme_name}`;
try {
if (type === "none") {

View File

@@ -29,7 +29,6 @@ import { FiSkipBack, FiSkipForward } from "react-icons/fi";
import { useData } from "../MapComponent";
import { config, NETWORK_NAME } from "@/config/config";
import { useMap } from "../MapComponent";
const backendUrl = config.BACKEND_URL;
interface TimelineProps {
schemeDate?: Date;
@@ -103,7 +102,7 @@ const Timeline: React.FC<TimelineProps> = ({
junctionProperties: string,
pipeProperties: string,
schemeName: string,
schemeType: string
schemeType: string,
) => {
const query_time = queryTime.toISOString();
let nodeRecords: any = { results: [] };
@@ -119,12 +118,12 @@ const Timeline: React.FC<TimelineProps> = ({
} else {
disableDateSelection && schemeName
? (nodePromise = fetch(
// `${backendUrl}/queryallschemerecordsbytimeproperty/?querytime=${query_time}&type=node&property=${junctionProperties}&schemename=${schemeName}`
`${backendUrl}/timescaledb/scheme/query/by-scheme-time-property?scheme_type=${schemeType}&scheme_name=${schemeName}&query_time=${query_time}&type=node&property=${junctionProperties}`
// `${config.BACKEND_URL}/queryallschemerecordsbytimeproperty/?querytime=${query_time}&type=node&property=${junctionProperties}&schemename=${schemeName}`
`${config.BACKEND_URL}/api/v1/scheme/query/by-scheme-time-property?scheme_type=${schemeType}&scheme_name=${schemeName}&query_time=${query_time}&type=node&property=${junctionProperties}`,
))
: (nodePromise = fetch(
// `${backendUrl}/queryallrecordsbytimeproperty/?querytime=${query_time}&type=node&property=${junctionProperties}`
`${backendUrl}/timescaledb/realtime/query/by-time-property?query_time=${query_time}&type=node&property=${junctionProperties}`
// `${config.BACKEND_URL}/queryallrecordsbytimeproperty/?querytime=${query_time}&type=node&property=${junctionProperties}`
`${config.BACKEND_URL}/api/v1/realtime/query/by-time-property?query_time=${query_time}&type=node&property=${junctionProperties}`,
));
requests.push(nodePromise);
}
@@ -140,12 +139,12 @@ const Timeline: React.FC<TimelineProps> = ({
} else {
disableDateSelection && schemeName
? (linkPromise = fetch(
// `${backendUrl}/queryallschemerecordsbytimeproperty/?querytime=${query_time}&type=link&property=${pipeProperties}&schemename=${schemeName}`
`${backendUrl}/timescaledb/scheme/query/by-scheme-time-property?scheme_type=${schemeType}&scheme_name=${schemeName}&query_time=${query_time}&type=link&property=${pipeProperties}`
// `${config.BACKEND_URL}/queryallschemerecordsbytimeproperty/?querytime=${query_time}&type=link&property=${pipeProperties}&schemename=${schemeName}`
`${config.BACKEND_URL}/api/v1/scheme/query/by-scheme-time-property?scheme_type=${schemeType}&scheme_name=${schemeName}&query_time=${query_time}&type=link&property=${pipeProperties}`,
))
: (linkPromise = fetch(
// `${backendUrl}/queryallrecordsbytimeproperty/?querytime=${query_time}&type=link&property=${pipeProperties}`
`${backendUrl}/timescaledb/realtime/query/by-time-property?query_time=${query_time}&type=link&property=${pipeProperties}`
// `${config.BACKEND_URL}/queryallrecordsbytimeproperty/?querytime=${query_time}&type=link&property=${pipeProperties}`
`${config.BACKEND_URL}/api/v1/realtime/query/by-time-property?query_time=${query_time}&type=link&property=${pipeProperties}`,
));
requests.push(linkPromise);
}
@@ -162,7 +161,7 @@ const Timeline: React.FC<TimelineProps> = ({
// 缓存数据(修复键以包含 schemeName
nodeCacheRef.current.set(
`${query_time}_${junctionProperties}_${schemeName}_${schemeType}`,
nodeRecords || []
nodeRecords || [],
);
}
if (linkPromise) {
@@ -173,7 +172,7 @@ const Timeline: React.FC<TimelineProps> = ({
// 缓存数据(修复键以包含 schemeName
linkCacheRef.current.set(
`${query_time}_${pipeProperties}_${schemeName}_${schemeType}`,
linkRecords || []
linkRecords || [],
);
}
// 更新状态
@@ -249,7 +248,7 @@ const Timeline: React.FC<TimelineProps> = ({
setCurrentTime(value);
}, 500); // 500ms 防抖延迟
},
[timeRange, minTime, maxTime]
[timeRange, minTime, maxTime],
);
// 播放控制
@@ -366,7 +365,7 @@ const Timeline: React.FC<TimelineProps> = ({
}, newInterval);
}
},
[isPlaying]
[isPlaying],
);
// 计算时间段改变处理
const handleCalculatedIntervalChange = useCallback((event: any) => {
@@ -393,10 +392,17 @@ const Timeline: React.FC<TimelineProps> = ({
junctionText,
pipeText,
schemeName,
schemeType
schemeType,
);
}
}, [junctionText, pipeText, currentTime, selectedDate, schemeName, schemeType]);
}, [
junctionText,
pipeText,
currentTime,
selectedDate,
schemeName,
schemeType,
]);
// 组件卸载时清理定时器和防抖
useEffect(() => {
@@ -445,7 +451,7 @@ const Timeline: React.FC<TimelineProps> = ({
const dateStr = date.toISOString().split("T")[0];
const clearCache = (
cacheRef: ReturnType<typeof useRef<Map<string, any[]>>>
cacheRef: ReturnType<typeof useRef<Map<string, any[]>>>,
) => {
if (!cacheRef.current) return;
const cacheKeys = Array.from(cacheRef.current.keys());
@@ -474,7 +480,7 @@ const Timeline: React.FC<TimelineProps> = ({
junctionText,
pipeText,
schemeName,
schemeType
schemeType,
);
};
@@ -508,14 +514,14 @@ const Timeline: React.FC<TimelineProps> = ({
};
const response = await fetch(
`${backendUrl}/runsimulationmanuallybydate/`,
`${config.BACKEND_URL}/api/v1/runsimulationmanuallybydate/`,
{
method: "POST",
headers: {
"Content-Type": "application/json",
},
body: JSON.stringify(body),
}
},
);
if (response.ok) {

View File

@@ -20,7 +20,6 @@ import { handleMapClickSelectFeatures as mapClickSelectFeatures } from "@/utils/
import { useNotification } from "@refinedev/core";
import { config } from "@/config/config";
const backendUrl = config.BACKEND_URL;
// 添加接口定义隐藏按钮的props
interface ToolbarProps {
@@ -229,7 +228,7 @@ const Toolbar: React.FC<ToolbarProps> = ({
if (getBaseType(layerId) !== getBaseType(firstLayerId)) {
// 如果点击的是已选中的要素(为了取消选中),则不报错
const isAlreadySelected = highlightFeatures.some(
(f) => f.getProperties().id === featureId
(f) => f.getProperties().id === featureId,
);
if (!isAlreadySelected) {
open?.({
@@ -243,7 +242,7 @@ const Toolbar: React.FC<ToolbarProps> = ({
setHighlightFeatures((prev) => {
const existingIndex = prev.findIndex(
(f) => f.getProperties().id === featureId
(f) => f.getProperties().id === featureId,
);
if (existingIndex !== -1) {
@@ -259,7 +258,7 @@ const Toolbar: React.FC<ToolbarProps> = ({
setHighlightFeatures([feature]);
}
},
[map, activeTools, highlightFeatures, open]
[map, activeTools, highlightFeatures, open],
);
// 添加矢量属性查询事件监听器
useEffect(() => {
@@ -388,13 +387,13 @@ const Toolbar: React.FC<ToolbarProps> = ({
let response;
if (queryType === "scheme") {
response = await fetch(
// `${backendUrl}/queryschemesimulationrecordsbyidtime/?scheme_name=${schemeName}&id=${id}&querytime=${querytime}&type=${type}`
`${backendUrl}/timescaledb/scheme/query/by-id-time?scheme_name=${schemeName}&id=${id}&type=${type}&query_time=${querytime}`
// `${config.BACKEND_URL}/queryschemesimulationrecordsbyidtime/?scheme_name=${schemeName}&id=${id}&querytime=${querytime}&type=${type}`
`${config.BACKEND_URL}/api/v1/scheme/query/by-id-time?scheme_name=${schemeName}&id=${id}&type=${type}&query_time=${querytime}`,
);
} else {
response = await fetch(
// `${backendUrl}/querysimulationrecordsbyidtime/?id=${id}&querytime=${querytime}&type=${type}`
`${backendUrl}/timescaledb/realtime/query/by-id-time?id=${id}&type=${type}&query_time=${querytime}`
// `${config.BACKEND_URL}/querysimulationrecordsbyidtime/?id=${id}&querytime=${querytime}&type=${type}`
`${config.BACKEND_URL}/api/v1/realtime/query/by-id-time?id=${id}&type=${type}&query_time=${querytime}`,
);
}
if (!response.ok) {

View File

@@ -154,11 +154,11 @@ const App = (props: React.PropsWithChildren<AppProps>) => {
},
},
{
name: "爆管分析定位",
list: "/burst-pipe-analysis",
name: "风险分析定位",
list: "/risk-analysis-location",
meta: {
icon: <TbLocationPin className="w-6 h-6" />,
label: "爆管分析定位",
label: "风险分析定位",
},
},
{