feat: add recurring bookings feature with related handlers and services
- Introduced recurring booking groups with the ability to create and cancel them. - Added database migrations for recurring bookings, including new tables and relationships. - Implemented handlers for creating and canceling recurring bookings in the admin booking module. - Enhanced existing booking services to support recurring bookings logic. - Updated API contract to include new schemas for recurring bookings. - Refactored existing code for improved readability and maintainability.
This commit is contained in:
@@ -6,7 +6,7 @@ export {
|
||||
planSummarySchema,
|
||||
planWithFeaturesSchema,
|
||||
planLimitsSchema,
|
||||
} from './plan'
|
||||
} from './plan';
|
||||
export type {
|
||||
Plan,
|
||||
PlanFeatureFlags,
|
||||
@@ -15,7 +15,7 @@ export type {
|
||||
PlanSummary,
|
||||
PlanWithFeatures,
|
||||
PlanLimits,
|
||||
} from './plan'
|
||||
} from './plan';
|
||||
export {
|
||||
acceptComplexInvitationsSchema,
|
||||
complexInvitationSchema,
|
||||
@@ -30,7 +30,7 @@ export {
|
||||
revokeComplexUserSchema,
|
||||
selectComplexSchema,
|
||||
updateComplexSchema,
|
||||
} from './complex'
|
||||
} from './complex';
|
||||
export type {
|
||||
AcceptComplexInvitationsInput,
|
||||
AcceptComplexInvitationsResponse,
|
||||
@@ -52,7 +52,7 @@ export type {
|
||||
UpdateComplexPayload,
|
||||
UpdateComplexResponse,
|
||||
RevokeComplexUserInput,
|
||||
} from './complex'
|
||||
} from './complex';
|
||||
export {
|
||||
dayOfWeekSchema,
|
||||
courtAvailabilityInputSchema,
|
||||
@@ -61,7 +61,7 @@ export {
|
||||
courtSchema,
|
||||
createCourtSchema,
|
||||
updateCourtSchema,
|
||||
} from './court'
|
||||
} from './court';
|
||||
export type {
|
||||
DayOfWeek,
|
||||
Court,
|
||||
@@ -70,25 +70,31 @@ export type {
|
||||
CourtPriceRule,
|
||||
CreateCourtInput,
|
||||
UpdateCourtInput,
|
||||
} from './court'
|
||||
} from './court';
|
||||
export {
|
||||
adminBookingSchema,
|
||||
adminBookingSportSchema,
|
||||
bookingStatusSchema,
|
||||
createAdminBookingSchema,
|
||||
createRecurringBookingSchema,
|
||||
listAdminBookingsQuerySchema,
|
||||
listAdminBookingsResponseSchema,
|
||||
recurringBookingGroupSchema,
|
||||
recurringGroupStatusSchema,
|
||||
updateAdminBookingStatusSchema,
|
||||
} from './admin-booking'
|
||||
} from './admin-booking';
|
||||
export type {
|
||||
AdminBooking,
|
||||
AdminBookingSport,
|
||||
BookingStatus,
|
||||
CreateAdminBookingInput,
|
||||
CreateRecurringBookingInput,
|
||||
ListAdminBookingsQuery,
|
||||
ListAdminBookingsResponse,
|
||||
RecurringBookingGroup,
|
||||
RecurringGroupStatus,
|
||||
UpdateAdminBookingStatusInput,
|
||||
} from './admin-booking'
|
||||
} from './admin-booking';
|
||||
export {
|
||||
createPublicBookingSchema,
|
||||
publicAvailabilityCourtSchema,
|
||||
@@ -99,7 +105,7 @@ export {
|
||||
publicBookingSlotSchema,
|
||||
publicBookingSportSchema,
|
||||
cancelPublicBookingSchema,
|
||||
} from './public-booking'
|
||||
} from './public-booking';
|
||||
export type {
|
||||
CreatePublicBookingInput,
|
||||
CancelPublicBookingInput,
|
||||
@@ -110,15 +116,15 @@ export type {
|
||||
PublicBookingConfirmation,
|
||||
PublicBookingSlot,
|
||||
PublicBookingSport,
|
||||
} from './public-booking'
|
||||
export { sportSchema, createSportSchema, updateSportSchema } from './sport'
|
||||
export type { Sport, CreateSportInput, UpdateSportInput } from './sport'
|
||||
} from './public-booking';
|
||||
export { sportSchema, createSportSchema, updateSportSchema } from './sport';
|
||||
export type { Sport, CreateSportInput, UpdateSportInput } from './sport';
|
||||
export {
|
||||
userProfileSchema,
|
||||
passwordResetStartSchema,
|
||||
passwordResetVerifySchema,
|
||||
passwordResetResendSchema,
|
||||
} from './user'
|
||||
} from './user';
|
||||
export type {
|
||||
UserProfile,
|
||||
UserProfileResponse,
|
||||
@@ -128,7 +134,7 @@ export type {
|
||||
PasswordResetStartResponse,
|
||||
PasswordResetVerifyResponse,
|
||||
PasswordResetResendResponse,
|
||||
} from './user'
|
||||
} from './user';
|
||||
export {
|
||||
adminComplexListItemSchema,
|
||||
adminComplexStatsSchema,
|
||||
@@ -142,7 +148,7 @@ export {
|
||||
adminGeoCitySchema,
|
||||
adminGeoCountrySchema,
|
||||
adminGeoStatsSchema,
|
||||
} from './admin'
|
||||
} from './admin';
|
||||
export type {
|
||||
AdminComplexListItem,
|
||||
AdminComplexStats,
|
||||
@@ -156,4 +162,4 @@ export type {
|
||||
AdminGeoCity,
|
||||
AdminGeoCountry,
|
||||
AdminGeoStats,
|
||||
} from './admin'
|
||||
} from './admin';
|
||||
|
||||
Reference in New Issue
Block a user