Multi-customer config system: - CUSTOMER env var selects customer (tianpu/zpark) - customers/tianpu/config.yaml — Tianpu branding, collectors, features - customers/zpark/config.yaml — Z-Park branding, Sungrow collector - GET /api/v1/branding endpoint for customer-specific branding - main.py loads customer config for app title, CORS, logging - Collector manager filters by customer's enabled collectors Z-Park (中关村医疗器械园) support: - Sungrow iSolarCloud API collector (sungrow_collector.py) - Z-Park device definitions (10 inverters, 8 combiner boxes, 22+ buildings) - Z-Park TOU pricing config (Beijing 2026 rates) - Z-Park seed script (seed_zpark.py) Gitea migration scripts (Mac Studio → labmac3): - 5 migration scripts + README in scripts/gitea-migration/ - Creates 3-repo structure: ems-core, tp-ems, zpark-ems Version: v1.0.0 Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
14 lines
559 B
JSON
14 lines
559 B
JSON
{
|
|
"name": "2026年北京工商业分时电价",
|
|
"energy_type": "electricity",
|
|
"pricing_type": "tou",
|
|
"periods": [
|
|
{"name": "peak", "start": "10:00", "end": "15:00", "price": 1.35},
|
|
{"name": "peak", "start": "18:00", "end": "21:00", "price": 1.35},
|
|
{"name": "flat", "start": "07:00", "end": "10:00", "price": 0.85},
|
|
{"name": "flat", "start": "15:00", "end": "18:00", "price": 0.85},
|
|
{"name": "valley", "start": "23:00", "end": "07:00", "price": 0.35},
|
|
{"name": "shoulder", "start": "21:00", "end": "23:00", "price": 0.95}
|
|
]
|
|
}
|