From c5e80a56b4c27a0683a45480b287ca68556f9208 Mon Sep 17 00:00:00 2001 From: "2569718930@qq.com" <2569718930@qq.com> Date: Mon, 25 May 2026 21:41:48 +0800 Subject: [PATCH] =?UTF-8?q?=E5=B7=B4=E9=BB=8E=E6=8E=A8=E9=80=81=E5=90=8C?= =?UTF-8?q?=E6=97=B6=E5=B1=95=E7=A4=BA=20AEROWEB=20=E5=AE=9E=E5=86=B5?= =?UTF-8?q?=E5=92=8C=20AROME=20=E4=B8=B4=E8=BF=91=E9=A2=84=E6=8A=A5?= =?UTF-8?q?=E4=B8=A4=E6=9D=A1=E6=B8=A9=E5=BA=A6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/utils/telegram_push.py | 35 +++++++++++++++++++++++------------ 1 file changed, 23 insertions(+), 12 deletions(-) diff --git a/src/utils/telegram_push.py b/src/utils/telegram_push.py index f915c2ea..bde4206d 100644 --- a/src/utils/telegram_push.py +++ b/src/utils/telegram_push.py @@ -1065,10 +1065,29 @@ def _build_airport_status_message( lines.append("") temp_symbol = str(city_weather.get("temp_symbol") or "°C").strip() cur_str = f"{display_temp:.1f}{temp_symbol}" if display_temp is not None else "--" - if has_runway: - lines.append(f"结算跑道当前:{cur_str}") + + if city == "paris": + # Paris: show both AEROWEB and AROME explicitly + airport_primary = city_weather.get("airport_primary") or {} + if airport_primary.get("source_code") == "aeroweb" and display_temp is not None: + lines.append(f"AEROWEB 实况:{cur_str}") + else: + lines.append("AEROWEB 实况:--") + if arome_temp is not None: + diff_str = "" + if display_temp is not None and airport_primary.get("source_code") == "aeroweb": + d = arome_temp - display_temp + sign = "+" if d >= 0 else "" + diff_str = f"({'偏高' if d > 0 else '偏低'}{sign}{d:.1f}°)" + lines.append(f"AROME HD 临近预报:{arome_temp:.1f}{temp_symbol}{diff_str}") + else: + lines.append("AROME HD 临近预报:--") else: - lines.append(f"当前:{cur_str}") + if has_runway: + lines.append(f"结算跑道当前:{cur_str}") + else: + lines.append(f"当前:{cur_str}") + if max_so_far is not None: time_str = f"({max_temp_time})" if max_temp_time else "" if has_runway: @@ -1120,17 +1139,9 @@ def _build_airport_status_message( else: lines.append(f"DEB:{deb_pred:.1f}{temp_symbol}") - if source_label: + if source_label and city != "paris": lines.append("") lines.append(f"📡 {source_label}") - # Show AROME as supplementary info ONLY when AEROWEB is the primary source - if arome_temp is not None and "AEROWEB" in source_label: - diff_str = "" - if display_temp is not None: - d = arome_temp - display_temp - sign = "+" if d >= 0 else "" - diff_str = f"({'偏高' if d > 0 else '偏低'}{sign}{d:.1f}°)" - lines.append(f"🕐 AROME HD 15分钟临近预报:{arome_temp:.1f}{temp_symbol}{diff_str}") # Model summary (compact) models = city_weather.get("multi_model") or {}