跑道观测推送时间修正为AMSC/AMOS观测时间,显示HH:MM格式

This commit is contained in:
2569718930@qq.com
2026-05-15 17:49:37 +08:00
parent cbf6a12f79
commit 861b394e49
5 changed files with 21 additions and 12 deletions
+3
View File
@@ -66,6 +66,9 @@ function buildFallbackCityDetail(name: string, depth: string, summary: Record<st
sunshine_hours: null,
},
multi_model: {},
multi_model_daily: {},
source_forecasts: {},
hourly: { times: [], temps: [], radiation: [] },
probabilities: {
mu: null,
distribution: [],
@@ -98,9 +98,9 @@ export function DetailMiniTemperatureChart({ detail }: { detail: CityDetail }) {
x: {
grid: { color: "rgba(255,255,255,0.03)" },
ticks: {
callback: (_value, index) =>
callback: (value, index) =>
typeof index === "number" && index % 4 === 0
? chartData.times[index]
? String(value)
: "",
color: "#6B7A90",
font: { size: 10 },
@@ -174,9 +174,9 @@ export const AiCityTemperatureChart = memo(function AiCityTemperatureChart({ det
x: {
grid: { color: "rgba(159, 178, 199, 0.08)" },
ticks: {
callback: (_value, index) =>
callback: (value, index) =>
typeof index === "number" && index % 3 === 0
? chartData.times[index]
? String(value)
: "",
color: "#6B7A90",
font: { size: 10 },
+10 -7
View File
@@ -370,13 +370,16 @@ export function getTemperatureChartData(
const hourly = detail.hourly || {};
const rawTimes = Array.isArray(hourly.times) ? hourly.times : [];
const rawTemps = Array.isArray(hourly.temps) ? hourly.temps : [];
const times = rawTimes
.map((time) => String(time || "").trim())
.filter(Boolean);
const temps = times.map((_, index) => {
const value = Number(rawTemps[index]);
return Number.isFinite(value) ? value : null;
});
const validEntries = rawTimes
.map((time, index) => ({
tail: String(time || "").trim(),
value: Number(rawTemps[index]),
}))
.filter((entry) => entry.tail !== "");
const times = validEntries.map((entry) => entry.tail);
const temps = validEntries.map((entry) =>
Number.isFinite(entry.value) ? entry.value : null,
);
const suppressAnkaraMgmObservation = isTurkishMgmCity(detail);
if (!times.length) return null;
+4 -1
View File
@@ -990,7 +990,10 @@ def _run_high_freq_airport_cycle(
# 用观测数据时间而非当前本地时间
airport_cur = city_weather.get("airport_current") or {}
obs_local = airport_cur.get("obs_time") or city_weather.get("local_time") or ""
amos_obs = (city_weather.get("amos") or {}).get("observation_time_local") or ""
if amos_obs and len(str(amos_obs)) >= 16:
amos_obs = str(amos_obs)[11:16] # "2026-05-15 17:32:00" → "17:32"
obs_local = amos_obs or airport_cur.get("obs_time") or city_weather.get("local_time") or ""
message = _build_airport_status_message(city, city_weather, deb_pred, obs_local)
sent = False