# app/bot/utils/regions.py from typing import List, Dict from app.models import Regions def get_sorted_regions(): """ Получить отсортированный список регионов (из базы, например). """ # Здесь предполагается, что вызывающий код находится в контексте Flask (app.app_context()) return Regions.query.filter(Regions.active == True).order_by(Regions.region_id).all() def get_sorted_regions_plain() -> List[Dict[str, str]]: regions = Regions.query.filter(Regions.active == True).order_by(Regions.region_id).all() return [{"id": r.region_id, "name": r.region_name} for r in regions] def format_regions_list(regions): """ Форматировать список регионов в удобочитаемый текст """ lines = [] for region in regions: lines.append(f"✅ {region.region_id}: {region.region_name}") return "\n".join(lines) def format_regions_list_marked(regions, subscribed_region_ids): lines = [] for region in regions: mark = "✅" if region.region_id in subscribed_region_ids else "❌" lines.append(f"{mark} {region.region_id}: {region.region_name}") return "\n".join(lines)