nordabiz/database/migrations/063_paid_events.sql
Maciej Pienczyn 652fb62fce
Some checks are pending
NordaBiz Tests / Unit & Integration Tests (push) Waiting to run
NordaBiz Tests / E2E Tests (Playwright) (push) Blocked by required conditions
NordaBiz Tests / Smoke Tests (Production) (push) Blocked by required conditions
NordaBiz Tests / Send Failure Notification (push) Blocked by required conditions
feat: paid events — payment tracking for event attendees and guests
Add is_paid, price_member, price_guest to NordaEvent. Add payment_status,
payment_amount, payment_confirmed_by/at to EventAttendee and EventGuest.
Auto-assign amounts on RSVP. Admin panel at /admin/kalendarz/<id>/platnosci
for OFFICE_MANAGER to confirm payments. User sees payment status on event page.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-08 10:57:07 +02:00

28 lines
1.4 KiB
SQL

-- Migration 063: Paid events — payment tracking for event attendees and guests
-- Date: 2026-04-08
-- NordaEvent: paid event fields
ALTER TABLE norda_events ADD COLUMN IF NOT EXISTS is_paid BOOLEAN DEFAULT FALSE;
ALTER TABLE norda_events ADD COLUMN IF NOT EXISTS price_member NUMERIC(10,2);
ALTER TABLE norda_events ADD COLUMN IF NOT EXISTS price_guest NUMERIC(10,2);
-- EventAttendee: payment tracking
ALTER TABLE event_attendees ADD COLUMN IF NOT EXISTS payment_status VARCHAR(20) DEFAULT 'unpaid';
ALTER TABLE event_attendees ADD COLUMN IF NOT EXISTS payment_amount NUMERIC(10,2);
ALTER TABLE event_attendees ADD COLUMN IF NOT EXISTS payment_confirmed_by INTEGER REFERENCES users(id);
ALTER TABLE event_attendees ADD COLUMN IF NOT EXISTS payment_confirmed_at TIMESTAMP;
-- EventGuest: payment tracking
ALTER TABLE event_guests ADD COLUMN IF NOT EXISTS payment_status VARCHAR(20) DEFAULT 'unpaid';
ALTER TABLE event_guests ADD COLUMN IF NOT EXISTS payment_amount NUMERIC(10,2);
ALTER TABLE event_guests ADD COLUMN IF NOT EXISTS payment_confirmed_by INTEGER REFERENCES users(id);
ALTER TABLE event_guests ADD COLUMN IF NOT EXISTS payment_confirmed_at TIMESTAMP;
-- Grants for app user
GRANT ALL ON TABLE norda_events TO nordabiz_app;
GRANT ALL ON TABLE event_attendees TO nordabiz_app;
GRANT ALL ON TABLE event_guests TO nordabiz_app;
-- Set grill event as paid
UPDATE norda_events SET is_paid = true, price_member = 140, price_guest = 240 WHERE id = 57;