From a661eedbd30206e940ed8fb6a19f139311adbdfb Mon Sep 17 00:00:00 2001 From: yyamashita <8nmdh5w22f@privaterelay.appleid.com> Date: Sun, 1 Nov 2026 08:59:15 +0900 Subject: 西荻窪周辺スタジオの空き枠一覧ページを追加 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Opus 5.5 --- providers/manual.py | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 providers/manual.py (limited to 'providers/manual.py') diff --git a/providers/manual.py b/providers/manual.py new file mode 100644 index 0000000..4623b26 --- /dev/null +++ b/providers/manual.py @@ -0,0 +1,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"]) + ] -- cgit v1.3