feat: Phase 1 critical gaps — gamification API, Razorpay checkout, Google OAuth, notifications
- Fix gamification endpoints to use Node.js server (app.eventifyplus.com) - Replace 6 mock gamification methods with real API calls (dashboard, leaderboard, shop, redeem, submit) - Add booking models, service, payment service (Razorpay), checkout provider - Add 3-step CheckoutScreen with Razorpay native modal integration - Add Google OAuth login (Flutter + Django backend) - Add full notifications system (Django model + 3 endpoints + Flutter UI) - Register CheckoutProvider, NotificationProvider in main.dart MultiProvider - Wire notification bell in HomeScreen app bar - Add razorpay_flutter ^1.3.7 and google_sign_in ^6.2.2 packages
This commit is contained in:
@@ -35,11 +35,28 @@ class ApiEndpoints {
|
||||
static const String reviewHelpful = "$_reviewBase/helpful";
|
||||
static const String reviewFlag = "$_reviewBase/flag";
|
||||
|
||||
// Gamification / Contributor Module (TechDocs v2)
|
||||
static const String gamificationProfile = "$baseUrl/v1/user/gamification-profile/";
|
||||
static const String leaderboard = "$baseUrl/v1/leaderboard/";
|
||||
static const String shopItems = "$baseUrl/v1/shop/items/";
|
||||
static const String shopRedeem = "$baseUrl/v1/shop/redeem/";
|
||||
static const String contributeSubmit = "$baseUrl/v1/contributions/submit/";
|
||||
static const String gradeContribution = "$baseUrl/v1/admin/contributions/"; // append {id}/grade/
|
||||
// Node.js gamification server (same host as reviews)
|
||||
static const String _nodeBase = "https://app.eventifyplus.com/api";
|
||||
|
||||
// Gamification / Contributor Module
|
||||
static const String gamificationDashboard = "$_nodeBase/v1/gamification/dashboard";
|
||||
static const String leaderboard = "$_nodeBase/v1/gamification/leaderboard";
|
||||
static const String shopItems = "$_nodeBase/v1/shop/items";
|
||||
static const String shopRedeem = "$_nodeBase/v1/shop/redeem";
|
||||
static const String contributeSubmit = "$_nodeBase/v1/gamification/submit-event";
|
||||
static const String gradeContribution = "$_nodeBase/v1/admin/contributions/"; // append {id}/grade/
|
||||
|
||||
// Bookings
|
||||
static const String ticketMetaList = "$baseUrl/bookings/ticket-meta/list/";
|
||||
static const String cartAdd = "$baseUrl/bookings/cart/add/";
|
||||
static const String checkout = "$baseUrl/bookings/checkout/";
|
||||
static const String checkIn = "$baseUrl/bookings/check-in/";
|
||||
|
||||
// Auth - Google OAuth
|
||||
static const String googleLogin = "$baseUrl/user/google-login/";
|
||||
|
||||
// Notifications
|
||||
static const String notificationList = "$baseUrl/notifications/list/";
|
||||
static const String notificationMarkRead = "$baseUrl/notifications/mark-read/";
|
||||
static const String notificationCount = "$baseUrl/notifications/count/";
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user