-
Notifications
You must be signed in to change notification settings - Fork 0
Redesign ticketing check-in process #394
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
- Require UIN or iCard swipe - Do not call UIN endpoint on client side, instead call it on the server side to enforce no NetID can be used. - Filter tickets for current event
|
Caution Review failedThe pull request is closed. WalkthroughRefactored user purchases lookup from email-based to UIN (Unique Identification Number) based with optional product filtering. Added Changes
Sequence Diagram(s)sequenceDiagram
actor User
participant UI as ScanTickets Page
participant API as POST /getPurchasesByUser
participant UinFunc as getUserIdByUin
participant DynamoDB
participant TicketsFunc as getUserTicketingPurchases<br/>getUserMerchPurchases
User->>UI: Scan UIN / Enter UIN
UI->>API: POST body: { uin, productId }
API->>UinFunc: Resolve UIN to user ID
UinFunc->>DynamoDB: Query UinHashIndex with hashed UIN
DynamoDB-->>UinFunc: Return user ID
API->>TicketsFunc: Get purchases with productId filter
TicketsFunc->>DynamoDB: Query with FilterExpression on event_id/item_id
DynamoDB-->>TicketsFunc: Return filtered purchases
TicketsFunc-->>API: Tickets & Merch data
API-->>UI: { tickets, merch }
UI->>UI: Display results or multi-select modal
UI-->>User: Show claimable tickets
sequenceDiagram
participant Old as Old Flow
participant New as New Flow
rect rgb(220, 240, 255)
Old->>Old: GET /purchases/:email (URL param)
Old->>Old: Direct DB lookup by email
New->>New: POST /getPurchasesByUser (body)
New->>New: UIN → User ID lookup
New->>New: DB lookup with user ID + productId filter
end
Estimated code review effort🎯 4 (Complex) | ⏱️ ~50 minutes Areas requiring extra attention:
✨ Finishing touches
🧪 Generate unit tests (beta)
📜 Recent review detailsConfiguration used: CodeRabbit UI Review profile: CHILL Plan: Pro Cache: Disabled due to data retention organization setting Knowledge base: Disabled due to data retention organization setting 📒 Files selected for processing (10)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
💰 Infracost reportMonthly estimate generatedThis comment will be updated when code changes. |
Summary by CodeRabbit
Release Notes