25 lines
1013 B
Python
25 lines
1013 B
Python
from __future__ import annotations
|
|
|
|
import argparse
|
|
from datetime import date
|
|
|
|
from app.services.historical_sync import get_historical_sync_service
|
|
from app.utils.serialization import to_plain
|
|
|
|
|
|
parser = argparse.ArgumentParser(description="Import dziennych agregatow PV z InfluxDB do lokalnego cache SQLite")
|
|
parser.add_argument("--start-date", dest="start_date", help="Data startowa YYYY-MM-DD")
|
|
parser.add_argument("--end-date", dest="end_date", help="Data koncowa YYYY-MM-DD")
|
|
parser.add_argument("--chunk-days", dest="chunk_days", type=int, default=7, help="Liczba dni na chunk")
|
|
parser.add_argument("--force", action="store_true", help="Nadpisz dni juz zapisane w cache")
|
|
args = parser.parse_args()
|
|
|
|
service = get_historical_sync_service()
|
|
status = service.run_blocking(
|
|
start_date=date.fromisoformat(args.start_date) if args.start_date else None,
|
|
end_date=date.fromisoformat(args.end_date) if args.end_date else None,
|
|
chunk_days=args.chunk_days,
|
|
force=args.force,
|
|
)
|
|
print(to_plain(status))
|