• Mahmoud Aglan's avatar
    Rebuild pool grid as physical 2D zone system with timeline · 0b3ff07b
    Mahmoud Aglan authored
    Pool is now a real 2D grid (rows × cols = squares). Admin sets dimensions,
    selects time slot from timeline strip above, then assigns squares to
    academies/groups/hourly/blocked/maintenance via drag selection.
    
    - New table: sa_pool_zone_bookings (zone_row × zone_col per time slot)
    - ALTER sa_facilities: add pool_grid_rows, pool_grid_cols
    - Rewritten PoolGridService with zone-based logic + copy-slot feature
    - Interactive view: timeline strip, 2D grid with drag/click/shift-rect select
    - API: state, assign, clear, update-grid, copy-slot
    - Seed: 4×6 grid with sample zone bookings
    - Fix mirror route mismatch (/sa/mirror/{id} now works)
    Co-Authored-By: 's avatarClaude Opus 4.6 <noreply@anthropic.com>
    0b3ff07b
Phase_70_002_seed_pool_grid_zones.php 5 KB