Refresh sparse model detail caches in forecast views

This commit is contained in:
2569718930@qq.com
2026-04-08 15:23:34 +08:00
parent 0af5a84449
commit 7b1f34db27
5 changed files with 69 additions and 1 deletions
+13
View File
@@ -52,11 +52,24 @@ function normalizeRevisionPart(value: unknown) {
export function getCityRevision(source?: CityDetail | CitySummary | null) {
if (!source) return "";
const modelDaily =
"multi_model_daily" in source && source.multi_model_daily
? source.multi_model_daily?.[source.local_date || ""]
: null;
const modelFootprint = modelDaily?.models || ("multi_model" in source ? source.multi_model : null);
return [
normalizeRevisionPart(source.updated_at),
normalizeRevisionPart(source.current?.obs_time),
normalizeRevisionPart(source.current?.temp),
normalizeRevisionPart(source.deb?.prediction),
normalizeRevisionPart(
modelFootprint && typeof modelFootprint === "object"
? Object.keys(modelFootprint)
.sort()
.map((key) => `${key}:${normalizeRevisionPart(modelFootprint[key])}`)
.join("|")
: "",
),
].join("|");
}