Commit Graph

10 Commits

Author SHA1 Message Date
ats-tech25
98f4b4392d feat(booking): Implement comprehensive booking management functionality
- Add full implementation for booking handlers with complete CRUD operations
- Implement GetAvailableSlots endpoint to retrieve available booking time slots
- Add CreateBooking handler with robust error handling and validation
- Implement GetUserBookings endpoint to fetch user's booking history
- Add CancelBooking handler with specific error scenarios and authorization checks
- Integrate booking service and middleware for authentication and request processing
- Add support for date parsing and slot availability checking
- Enhance error responses with detailed error messages and appropriate HTTP status codes
- Integrate with existing authentication and middleware components
2025-11-05 16:35:36 +00:00
ats-tech25
b8dd31b449 feat(services): Implement comprehensive booking service with Jitsi integration
- Add BookingService with core booking management functionality
- Implement mock repositories for testing booking service interactions
- Create booking integration test with Jitsi room generation
- Add methods for creating, retrieving, and managing bookings
- Integrate Jitsi service for generating meeting room URLs
- Implement schedule management within booking service
- Add support for booking creation with user and schedule context
- Enhance database layer to support repository retrieval
Closes #TICKET_NUMBER (if applicable)
2025-11-05 15:42:59 +00:00
ats-tech25
d0117e6ac7 feat(server): Implement payment routes and handler initialization
- Add payment routes with placeholders for CreatePaymentIntent, ConfirmPayment, and HandleWebhook
- Introduce initializeServices method to set up payment service and handler
- Update Server struct to include paymentHandler
- Prepare infrastructure for payment-related functionality
- Enhance server initialization process with service setup
2025-11-05 15:34:11 +00:00
ats-tech25
a45b22afd0 feat(payments): Implement comprehensive Stripe payment integration
- Add PaymentHandler with methods for creating payment intents, confirming payments, and handling webhooks
- Implement PaymentService interface with Stripe payment processing logic
- Create DTOs for payment-related requests in services/interfaces.go
- Add error handling and validation for payment-related operations
- Configure Stripe API key and support for automatic payment methods
- Implement webhook signature verification and event processing
- Enhance error responses with detailed error messages and appropriate HTTP status codes
Enables full payment flow using Stripe, supporting intent creation, payment confirmation, and webhook handling for robust transaction management.
2025-11-05 15:30:53 +00:00
ats-tech25
0e83ee056c feat(auth): Implement comprehensive user authentication and authorization
- Add complete authentication handlers for registration, login, profile retrieval, and update
- Implement UserService with robust validation and error handling
- Create new user_service.go with core authentication logic
- Add support for JWT token generation and user management
- Implement input validation, password hashing, and error responses
- Enhance security with email normalization and input sanitization
- Prepare groundwork for secure user authentication flow
2025-11-05 15:25:41 +00:00
ats-tech25
8309f38999 feat(auth): Implement comprehensive authentication and authorization middleware
- Add JWT authentication middleware with token validation
- Implement user context extraction methods for user ID, email, and admin status
- Create admin middleware to restrict access to admin-only routes
- Add convenience method to combine authentication and admin authorization
- Update auth middleware to handle token parsing, validation, and context setting
- Enhance error handling for various authentication scenarios
- Add new JWT service and related dependencies in go.mod
2025-11-05 15:21:56 +00:00
ats-tech25
c9d20afda8 refactor(models): Enhance notification and schedule model structures
- Add comprehensive validation and error handling for Notification model
- Introduce strongly typed enums for notification types and statuses
- Implement GORM hooks for pre-create and pre-update validation
- Add helper methods for notification retry and sending logic
- Improve Schedule model with validation, availability checks, and duration methods
- Add constraints and validation for schedule time slots
- Enhance model relationships with foreign key references
- Implement additional utility methods for schedule management
Improves data integrity, adds robust validation, and provides more comprehensive model behaviors for notifications and schedules.
2025-11-05 15:07:28 +00:00
ats-tech25
488be7b8ef feat(project): Initialize project structure and core components
- Add initial project scaffolding with Go module and project structure
- Create server and CLI entry points for application
- Implement Makefile with development and build commands
- Add `.env.example` with comprehensive configuration template
- Set up README.md with project documentation and setup instructions
- Configure basic dependencies for server, database, and CLI tools
- Establish internal package structure for models, services, and handlers
- Add initial configuration and environment management
- Prepare for HTTP server, CLI, and database integration
2025-11-05 15:06:07 +00:00
ats-tech25
8c32b49813 docs(brainstorm): Update payment method from PayPal to Stripe
- Changed payment method references from PayPal to Stripe
- Updated payment method description for both new and existing user flows
- Maintained overall structure and intent of user registration and booking process
2025-11-05 14:33:46 +00:00
ats-tech25
3e2c16c074 init 2025-11-05 13:49:27 +00:00