summaryrefslogtreecommitdiff
path: root/providers/manual.py
blob: 4623b263895c93f878cf4f08cf1b64b4abfdbb35 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
"""manual_slots.json に手で書いた予約済み枠を読む。書いていない枠は空きとみなす。

形式:
{
  "uen": {
    "2026-11-03": {"1st": [18, 19, 20], "2nd": [21]}
  }
}
"""

import json
from pathlib import Path

PATH = Path(__file__).resolve().parent.parent / "manual_slots.json"


def fetch(studio, date):
    data = json.loads(PATH.read_text(encoding="utf-8")) if PATH.exists() else {}
    booked = data.get(studio["id"], {}).get(date.isoformat(), {})
    return [
        {
            "room": room,
            "hour": hour,
            "status": "booked" if hour in booked.get(room, []) else "free",
        }
        for room in studio["rooms"]
        for hour in range(studio["open"], studio["close"])
    ]