021 - Link F&B pre-orders to resto reservations
- Tanggal: 2026-08-13
- DB:
mpcdb (shared Postgres — mpc-be / mpc-admin)
- Ringkas: Tambah
transactions.space_reservation_id supaya order F&B yang dipilih setelah reservasi Resto confirmed bisa ditampilkan menyatu dengan reservasinya di History (bukan dua hal terpisah).
ALTER (jalankan di DB server)
-- Idempotent; safe to re-run.
ALTER TABLE transactions
ADD COLUMN IF NOT EXISTS space_reservation_id uuid REFERENCES space_reservations(id);
CREATE INDEX IF NOT EXISTS idx_transactions_space_reservation_id
ON transactions(space_reservation_id);
Rollback (opsional)
DROP INDEX IF EXISTS idx_transactions_space_reservation_id;
ALTER TABLE transactions DROP COLUMN IF EXISTS space_reservation_id;
Catatan
- Nullable, tidak mengubah alur checkout court booking existing (
space_reservation_id hanya diisi saat member memilih "Order food & drinks" dari layar sukses reservasi Resto).
mpc-be: POST /orders terima space_reservation_id opsional (divalidasi milik customer); GET /spaces/reservations/me menyertakan array orders (ringkasan transaksi + item) per reservasi.
mpc-admin: sync prisma/schema.prisma (kolom baru di model Transaction) agar tidak drift; tampilan detail order di halaman Resto admin dapat menyusul (tidak wajib untuk perubahan ini).
mpc-be-pos / mpc-pos: tidak terdampak.