gendesign/backend/app/workers/tasks/poi_sync.py
lekss361 6dea34186b feat(site-finder): OSM POI loader + Celery weekly sync
- New poi_loader.py: Overpass QL query for 13 POI categories in EKB bbox,
  UPSERT into osm_poi_ekb with soft 2-year filter tracking (skipped_old counter)
- New poi_sync.py Celery task wrapping sync_poi_to_db()
- celery_app.py: include poi_sync module, add poi-sync-weekly beat entry (Mon 03:00 MSK)
2026-05-11 18:08:34 +03:00

20 lines
660 B
Python
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

"""Celery task: еженедельная синхронизация OSM POI для site-finder."""
import logging
from app.workers.celery_app import celery_app
logger = logging.getLogger(__name__)
@celery_app.task(name="tasks.poi_sync.sync_osm_poi_ekb", queue="celery")
def sync_osm_poi_ekb() -> dict:
"""Еженедельная синхронизация OSM POI из Overpass API в osm_poi_ekb.
Запускается через beat (понедельник 03:00 МСК).
"""
from app.services.site_finder.poi_loader import sync_poi_to_db
result = sync_poi_to_db()
logger.info("POI sync done: %s", result)
return result