HotelSync
1ad2a8057a
feat: TTLock — correct DLL flow with buildNo/floorNo per lock
Backend: room-locks now store/return build_no, floor_no (required by
CE_WriteCard). issue-card passes buildNo/floorNo to agent instead of
cardSectors/username/password. testApi route simplified (no OAuth).
Frontend: remove username/password fields (not needed), add buildNo/floorNo
fields to lock mapping form, show building/floor in lock list.
Migration 056: adds build_no, floor_no columns to room_lock_mappings.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>