GroupID management
Some checks failed
Build and Push Docker Image / build_and_push (push) Failing after 3m9s

This commit is contained in:
Arnaud Delcasse
2025-10-16 17:21:45 +02:00
parent 723c12a657
commit e0882db1bc
8 changed files with 68 additions and 5 deletions

View File

@@ -161,3 +161,15 @@ func (s MemoryStorage) UpdateBookingStatus(bookingid string, newStatus string, r
return nil
}
func (s MemoryStorage) GetBookingsByGroupId(groupId string) ([]*types.Booking, error) {
var bookings []*types.Booking
for _, booking := range s.Bookings {
if booking.GroupId == groupId {
bookings = append(bookings, booking)
}
}
return bookings, nil
}

View File

@@ -241,6 +241,20 @@ func (m *MockStorage) UpdateBookingStatus(bookingid string, newStatus string, re
return nil
}
func (m *MockStorage) GetBookingsByGroupId(groupId string) ([]*types.Booking, error) {
m.mu.RLock()
defer m.mu.RUnlock()
var bookings []*types.Booking
for _, booking := range m.bookings {
if booking.GroupId == groupId {
bookings = append(bookings, booking)
}
}
return bookings, nil
}
// Helper methods for testing
// Reset clears all data - useful for test setup

View File

@@ -229,3 +229,20 @@ func (s MongoDBStorage) UpdateBookingStatus(bookingid string, newStatus string,
return nil
}
func (s MongoDBStorage) GetBookingsByGroupId(groupId string) ([]*types.Booking, error) {
filter := bson.M{"groupid": groupId}
cursor, err := s.Collections.Bookings.Find(context.Background(), filter)
if err != nil {
return nil, err
}
defer cursor.Close(context.Background())
var bookings []*types.Booking
if err := cursor.All(context.Background(), &bookings); err != nil {
return nil, err
}
return bookings, nil
}

View File

@@ -23,6 +23,7 @@ type Storage interface {
CreateBooking(types.Booking) error
GetAllBookings() ([]*types.Booking, error)
GetBooking(id string) (*types.Booking, error)
GetBookingsByGroupId(groupId string) ([]*types.Booking, error)
UpdateBooking(booking types.Booking) error
UpdateBookingStatus(bookingid string, newStatus string, reason string) error
}