Commit Graph

  • 4b337a3b85 feat: tech tasks page, priority in HK context menu, room status sync HotelSync 2026-03-23 23:35:24 +03:00
  • 3bb7262b59 feat: add category field to housekeeping tasks + TechnicalPage for maintenance tasks HotelSync 2026-03-23 23:28:42 +03:00
  • 9be51e5d07 fix: jobs run every 1h, auto-checkout from hotel check_out_time HotelSync 2026-03-23 23:13:55 +03:00
  • b9116c427a feat: notifications API, auto-jobs, calendar housekeeping fixes HotelSync 2026-03-23 23:02:30 +03:00
  • b631a281d2 fix: normalizeRoom converts NUMERIC baseRate string to number in api.ts HotelSync 2026-03-23 22:48:51 +03:00
  • 9af11df1b0 feat: housekeeping automation — auto-task on checkout + room status on done HotelSync 2026-03-23 22:27:18 +03:00
  • ce20c6545d fix: robust night price calculation in BookingModal + clear test DB data HotelSync 2026-03-23 16:54:17 +03:00
  • 15936753b9 feat: use availability rate overrides in calendar tooltip and booking modal HotelSync 2026-03-23 16:35:13 +03:00
  • 70531c3a9a fix: RateOverrideApi type to camelCase — transformKeys was converting keys but type was snake_case HotelSync 2026-03-23 16:26:51 +03:00
  • 2a741d89d0 fix: rate overrides save + add Без категории group HotelSync 2026-03-23 16:23:10 +03:00
  • e5daf91ed4 feat: persist rate overrides to DB when applying prices in AvailabilityPage HotelSync 2026-03-23 16:14:45 +03:00
  • 8312d2372e fix: maintenance overlay + context menu UX improvements HotelSync 2026-03-23 16:03:17 +03:00
  • c3a30be74e feat: calendar hover price tooltip + AvailabilityPage API integration HotelSync 2026-03-23 15:05:12 +03:00
  • 63da3d21cc feat: maintenance/blocked date ranges with booking overlap warning HotelSync 2026-03-23 14:49:19 +03:00
  • 4a39d5f731 fix: context menu reposition after mount to prevent viewport overflow HotelSync 2026-03-23 14:41:56 +03:00
  • 7bcc1ca0ab feat: visual overlay for maintenance/blocked rooms in calendar HotelSync 2026-03-23 14:38:36 +03:00
  • fd50e02be0 feat: right-click context menu for room status + bed type capacity HotelSync 2026-03-23 14:30:14 +03:00
  • 8c6cdfb1c7 feat: configurable bed types via BedTypesContext HotelSync 2026-03-23 14:20:09 +03:00
  • 6bf1391890 fix: "без категории" filter matches rooms with undefined categoryId HotelSync 2026-03-23 14:07:35 +03:00
  • d46101b032 fix: compact filters row with dropdowns for floor and category HotelSync 2026-03-23 14:04:17 +03:00
  • 3e9622d281 feat: bulk room creation + category filter on rooms page HotelSync 2026-03-23 13:57:31 +03:00
  • eea76657e1 fix: smart next-free room number suggestion HotelSync 2026-03-23 13:51:10 +03:00
  • 4ea6dcc368 fix: calendar room label dedup + room number validation HotelSync 2026-03-23 13:44:33 +03:00
  • 5d17ad0579 feat: delete photo from server on remove + fix file drag-and-drop HotelSync 2026-03-23 13:39:10 +03:00
  • 036885dd24 feat: drag-and-drop photo reordering in category form HotelSync 2026-03-23 13:28:08 +03:00
  • 31d135563f fix: cdn.hotelsync.ru nginx config + RoomModal key for state reset HotelSync 2026-03-23 13:14:20 +03:00
  • 95809851fb fix: correct token read in upload + remove upload button, keep drop zone HotelSync 2026-03-23 13:05:08 +03:00
  • c0945e7264 fix: add photos column to room_categories via migration 019 HotelSync 2026-03-23 12:53:44 +03:00
  • dd75794a78 feat: organize uploads by folder + cdn.hotelsync.ru active HotelSync 2026-03-23 12:41:27 +03:00
  • f625d82cc5 fix: downgrade @fastify/multipart to ^8 and @fastify/static to ^7 (Fastify 4 compat) HotelSync 2026-03-23 12:32:29 +03:00
  • 3ed3156fe8 feat: move amenities directory to RoomCategoriesPage + cdn.hotelsync.ru for uploads HotelSync 2026-03-23 12:31:08 +03:00
  • 3ef7f8265a feat: real file upload to /opt/hotelsync/uploads + serve via /uploads/ on API HotelSync 2026-03-23 12:23:13 +03:00
  • 5540d0cdfa fix: category form — async save with error display, drag-and-drop photos, 20MB body limit HotelSync 2026-03-23 12:17:53 +03:00
  • 1f761e65cf feat: room category — remove hardcoded types, show 'Без категории' with link when none exist HotelSync 2026-03-23 12:08:47 +03:00
  • 04258a4f50 feat: room type dropdown uses categories from API when available HotelSync 2026-03-23 12:02:32 +03:00
  • c36d94e22a feat: show occupied slots in new rental step-1 modal HotelSync 2026-03-23 11:54:52 +03:00
  • d54ea551b4 fix: RoomsPage load categories from API instead of mock HotelSync 2026-03-23 11:45:40 +03:00
  • 5c40b154d0 feat: categories + tariffs — migration, API routes, frontend integration HotelSync 2026-03-23 11:42:29 +03:00
  • b494224af0 feat: BookingsPage rental tab — connect to API (replace mock data) HotelSync 2026-03-23 11:19:04 +03:00
  • 2475c76d45 feat: RentalBookingModal 2-column layout HotelSync 2026-03-22 01:38:25 +03:00
  • 7c65bebc22 feat: rental tab 2-column layout + payment section HotelSync 2026-03-22 01:31:16 +03:00
  • b1b6854663 feat: single ФИО field with autocomplete replaces 3 separate name inputs HotelSync 2026-03-22 01:22:46 +03:00
  • e403689522 fix: toggle CSS + guest autocomplete in BookingModal rental tab HotelSync 2026-03-22 01:08:25 +03:00
  • f21c5d5054 fix: rental calendar cells cap at 3 bookings + show +N overflow HotelSync 2026-03-21 23:08:25 +03:00
  • db05898c08 feat: 15-minute rental slots + compact calendar cell display HotelSync 2026-03-21 23:02:24 +03:00
  • 370fe8a9a9 feat: move rental module to main nav under Цены и тарифы HotelSync 2026-03-21 22:46:39 +03:00
  • 20582581be fix: sync endHour state when effectiveStartHour shifts past it HotelSync 2026-03-21 22:37:49 +03:00
  • fe4b9aa6eb feat: connect RentalPage to API (objects + bookings persisted in DB) HotelSync 2026-03-21 22:23:16 +03:00
  • 3961585196 fix: rental booking buffer applied to end times + phone mask HotelSync 2026-03-21 22:16:12 +03:00
  • 31858ca5cc feat: room/rental tabs in booking modal + smart time slot filtering HotelSync 2026-03-21 22:07:40 +03:00
  • 5cab0ce8da fix: checkout form defaults to planned checkOut date, not today HotelSync 2026-03-21 19:39:24 +03:00
  • c0a086a7b8 fix: normalize checkIn/checkOut dates with .slice(0,10) before comparison HotelSync 2026-03-21 19:30:02 +03:00
  • edd493e24e feat: early check-in / late checkout fees with room-level configuration HotelSync 2026-03-21 19:24:36 +03:00
  • 9f1dd0c8c9 fix: block 'Заселить' button for future bookings (checkIn > today) HotelSync 2026-03-21 19:15:51 +03:00
  • 2c458dfc09 feat: early checkout with refund calculation for any checked_in booking HotelSync 2026-03-21 19:11:29 +03:00
  • b111cc0898 fix: early check-in checkout date capped at original planned checkout HotelSync 2026-03-21 19:07:14 +03:00
  • 6dbff276c8 feat: early check-in for guests who arrive before booking date HotelSync 2026-03-21 18:49:23 +03:00
  • b831106ae2 Rental modal: require phone for new guests, auto-create in guests DB HotelSync 2026-03-21 17:02:59 +03:00
  • 033882790d Rental guest search: show phone number as subtitle in suggestions HotelSync 2026-03-21 16:49:44 +03:00
  • dbccc59dfc Fix: rental booking save (date comparison), add DB guest search in rental modal HotelSync 2026-03-21 16:45:37 +03:00
  • 68c9caf46f RentalBookingModal: guest search autocomplete + link to room booking HotelSync 2026-03-21 15:56:13 +03:00
  • b48e50e62b Rental: connect to API, improve cell UI; remove price from room labels HotelSync 2026-03-21 15:46:01 +03:00
  • 3f4d0dac4c Calendar: compact mobile layout — narrow left column, hide View btn, move + to month row HotelSync 2026-03-21 14:52:32 +03:00
  • 7bd0e038ba Fix: block drag-to-move if target room has conflicting booking HotelSync 2026-03-21 01:05:40 +03:00
  • 456a35e00d Revert: drag ghost back to small badge style HotelSync 2026-03-21 01:02:43 +03:00
  • 80e3b21827 Fix: drag ghost visual, check-in date auto-fill, backend room_id patch HotelSync 2026-03-21 00:56:49 +03:00
  • 97b2ca1f91 Fix drag drop: use ref for target room ID instead of elementFromPoint in mouseup (stale closure fix) HotelSync 2026-03-21 00:44:30 +03:00
  • 3e4a2a3cd2 Calendar: add drag ghost element + grabbing cursor; BookingDetail: add Relocate room for checked_in guests HotelSync 2026-03-21 00:37:26 +03:00
  • 75d7d6aa08 Fix: drag booking passes roomId to API; checked_out rooms available for new booking; remove time-based theme text HotelSync 2026-03-21 00:22:03 +03:00
  • fd804926e4 BookingModal: move guest fields to right column; Theme: auto mode follows system prefers-color-scheme HotelSync 2026-03-21 00:04:24 +03:00
  • d3581f27f2 BookingModal: move extra beds+tags to right col, payment to full-width bottom; Calendar: fix today booking left edge fill HotelSync 2026-03-20 23:56:02 +03:00
  • 0464259273 BookingModal: redesign — dates first, category cards, specific room toggle HotelSync 2026-03-20 23:45:11 +03:00
  • babd6e950e Fix: add passport_issued_by/issue_date to guests table for full autocomplete HotelSync 2026-03-20 17:47:12 +03:00
  • 887c362c18 Fix: widen passport columns to TEXT for encrypted values HotelSync 2026-03-20 17:28:52 +03:00
  • 8282155237 Add AES-256-GCM encryption for sensitive personal data fields HotelSync 2026-03-20 17:19:27 +03:00
  • aa4a1fdb39 LoginPage: remove demo accounts hint, add terms agreement checkbox on register HotelSync 2026-03-20 17:01:55 +03:00
  • 84cfca500c BookingModal: replace guestName with FIO+phone fields, remove passport tab HotelSync 2026-03-19 21:15:37 +03:00
  • 873a9a4fc4 Add multi-guest management: per-booking roster, docs, guest autocomplete HotelSync 2026-03-19 20:53:07 +03:00
  • de4fb2126b Add Guests module: API integration + passport identification HotelSync 2026-03-19 14:03:04 +03:00
  • 3da2d5e0ab Fix drag-to-move and WS keepalive HotelSync 2026-03-19 13:44:12 +03:00
  • 14c5327870 Fix booking click broken: restore onClick, fix drag vs click detection HotelSync 2026-03-19 13:35:58 +03:00
  • 26412a04dd Fix WS offline: nginx WebSocket headers + keepalive ping + drag-to-move fix HotelSync 2026-03-19 13:24:37 +03:00
  • 3602ea7318 Calendar: hide cancelled bookings, drag-to-move rooms, allow booking through checked-out HotelSync 2026-03-19 13:09:13 +03:00
  • ed397dbcd9 Remove pull integration; persist push log to DB (last 50 per hotel) HotelSync 2026-03-19 12:55:39 +03:00
  • 32115399ee Fix reservation_id: numeric string via hex→decimal UUID conversion HotelSync 2026-03-19 12:40:52 +03:00
  • f5ade5cb53 Fix: reservation_id must be string not number (NetUP API) HotelSync 2026-03-19 12:34:54 +03:00
  • c656d0c6ae Log NetUP request/response body; fix reservation_id to be numeric HotelSync 2026-03-19 12:29:45 +03:00
  • d8f560ae12 Fix TS type: status literal union for PushEvent HotelSync 2026-03-19 12:23:58 +03:00
  • 44fa9d24f1 Improve NetUP diagnostics: push event log + test check-in button HotelSync 2026-03-19 12:19:48 +03:00
  • 142be49211 Add Diagnostics tab to TV Welcome: view NetUP poll requests in UI HotelSync 2026-03-18 19:08:57 +03:00
  • 8350309645 Add TravelLine pull integration for NetUP: capture endpoint + tl_token HotelSync 2026-03-18 18:57:10 +03:00
  • 05d0c94a9a Fix NetUP settings not loading: snake_case → camelCase (transformKeys) HotelSync 2026-03-18 18:39:01 +03:00
  • cc5f9c18d3 Fix NetUP API path: /mw/a → /mw/api (actual server URL from spec) HotelSync 2026-03-18 18:27:55 +03:00
  • 61d25628ae Add NetUP IPTV integration module (TV Welcome settings page) HotelSync 2026-03-18 18:18:41 +03:00
  • bc12f8aabc Fix WS offline on first login: sync token between api.ts and AuthContext HotelSync 2026-03-18 17:37:36 +03:00
  • cbd85c5c7e Clear stale WS locks on reconnect to fix phantom overlays HotelSync 2026-03-17 20:13:10 +03:00
  • bda0cbb7d5 Improve email deliverability: plain text, contrast fix, Content-Language, List-Unsubscribe HotelSync 2026-03-17 20:01:25 +03:00
  • 5e0c388b3d Add nginx config with /ws WebSocket location block HotelSync 2026-03-17 19:58:20 +03:00
  • 684073c4ad Fix booking creation: localStorage token, conflict detection, paid_amount HotelSync 2026-03-17 19:48:37 +03:00
  • e59bc752b0 Add password letter requirement + labeled strength UI + auto-capitalize name fields HotelSync 2026-03-17 19:35:54 +03:00