feat(server): add booking, payment, and scheduler modules

Booking: reservation with atomic transactions, cancellation with refund
logic based on cancelHoursLimit (23 tests)
Payment: WeChat Pay integration (mock), order lifecycle, membership
creation on payment callback (13 tests)
Scheduler: cron tasks for slot generation, cleanup, membership expiry (8 tests)
109 total tests passing across 9 test suites
This commit is contained in:
richarjiang
2026-04-02 12:33:50 +08:00
parent 593a6e5453
commit 994d1f75d5
15 changed files with 2183 additions and 0 deletions

View File

@@ -7,6 +7,9 @@ import { AuthModule } from './auth/auth.module'
import { StudioModule } from './studio/studio.module'
import { TimeSlotModule } from './time-slot/time-slot.module'
import { MembershipModule } from './membership/membership.module'
import { BookingModule } from './booking/booking.module'
import { SchedulerModule } from './scheduler/scheduler.module'
import { PaymentModule } from './payment/payment.module'
@Module({
imports: [
@@ -20,6 +23,9 @@ import { MembershipModule } from './membership/membership.module'
StudioModule,
TimeSlotModule,
MembershipModule,
BookingModule,
SchedulerModule,
PaymentModule,
],
controllers: [AppController],
})