Commit Graph

14 Commits

Author SHA1 Message Date
ats-tech25
34ee29c26e refactor(cli): Update terminal package import and usage in admin CLI
- Replace deprecated `golang.org/x/crypto/ssh/terminal` with `golang.org/x/term`
- Update `terminal.ReadPassword()` calls to use `term.ReadPassword()`
- Remove unnecessary version of `golang.org/x/sys` in go.sum
- Ensure compatibility with latest terminal package recommendations
2025-11-06 09:15:59 +00:00
ats-tech25
df39550eb1 feat(admin): Implement comprehensive CLI admin management functionality
- Add new `internal/cli/admin.go` package for admin management
- Implement interactive admin account creation with secure password input
- Add CLI command for creating admin accounts with flexible input options
- Implement validation for admin account creation details
- Support both interactive and flag-based admin account creation
- Integrate with existing user and authentication services
- Update go.mod and go.sum with new dependencies and version upgrades
Enhances system administration capabilities by providing a flexible CLI tool for creating admin accounts with robust security and usability features.
2025-11-06 09:13:26 +00:00
ats-tech25
c265e8f866 feat(admin): Implement comprehensive admin management functionality
- Add new AdminHandler with methods for dashboard, schedules, users, and bookings
- Implement GetDashboard method to retrieve admin dashboard statistics
- Add CreateSchedule method with validation and error handling
- Implement GetUsers method with pagination support
- Add GetBookings method with pagination and filtering capabilities
- Implement GetFinancialReports method with date range filtering
- Add UpdateSchedule method to modify existing schedule slots
- Enhance error handling and response formatting for admin-related operations
- Integrate admin service methods for comprehensive administrative tasks
2025-11-05 16:58:34 +00:00
ats-tech25
1cb21847d9 chore(dependencies): Update go.mod module dependencies
- Remove unnecessary commented dependencies
- Add direct import for gopkg.in/gomail.v2
- Streamline module dependency configuration
- Ensure clean and minimal module dependency management
2025-11-05 16:37:53 +00:00
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