چیدمان طبقه و میزها
ویرایشگر Floor Plan یک بوم بصری برای چیدن میزهاست. صفحه Tables یک نمای عملیاتی برای هر میز است که جزئیات و اقدامها را نشان میدهد. هر دو صفحه روی همان رکوردهای پایه میز کار میکنند.
طبقات
طبقات، میزها را بر اساس موقعیت فیزیکی گروهبندی میکنند؛ برای مثال "Main Hall"، "Mezzanine" یا "Outdoor Patio". شما طبقات را از مسیر Settings > کافهتریا میسازید و مدیریت میکنید.
هر کافه حداقل به یک طبقه نیاز دارد. هر میز همیشه فقط به یک طبقه اختصاص داده میشود. میتوانید طبقات را با دکمههای move-up و move-down جابهجا کنید و طبقه بالایی وقتی تب Floor Plan باز میشود بهصورت پیشفرض انتخاب میشود. صفحه Floor Plan همچنین یک pill با عنوان "All floors" دارد که همه میزها را در یک نمای ترکیبی نشان میدهد.
ویرایشگر Floor Plan
ویرایشگر Floor Plan روی یک بوم 1200 در 720 با شبکه 10 پیکسلی رندر میشود. میزها به شکلهایی در موقعیتهای ذخیرهشده خود نمایش داده میشوند. این ویرایشگر دو حالت نمایش دارد:
| حالت | کاربرد |
|---|---|
| 2D | ویرایش و چیدمان. میزها را جابهجا کنید، اضافه یا حذف کنید، نام را تغییر دهید. |
| 3D | ارائه و بازدید نمایشی. بوم با استفاده از CSS perspective کج میشود تا نمای dimetric شبیه نقشه معماری ایجاد شود. در حالت 3D امکان drag غیرفعال است، چون نگاشت اشارهگر روی بوم شیبدار مبهم میشود. |
افزودن و جابهجایی میزها
- کافهتریا > Floor Plan را باز کنید.
- طبقه هدف را از pillهای بالای صفحه انتخاب کنید.
- روی Add Table کلیک کنید. یک میز جدید با شکل، اندازه و تعداد صندلی پیشفرض در مبدأ بوم ظاهر میشود.
- بدنه میز را به موقعیت دلخواه بکشید. وقتی ماوس را رها میکنید، موقعیت بهصورت خودکار ذخیره میشود.
- برای هر گروه صندلی این کار را تکرار کنید.
موقعیتها به شبکه 10 پیکسلی snap میشوند تا میزهای همراستا منظم به نظر برسند، بدون اینکه نیاز به placement کاملاً پیکسلی باشد.
ویژگیهای میز
هر میز فیلدهای قابل ویرایش زیر را دارد:
| فیلد | معنی |
|---|---|
| Code | شناسه کوتاهی که روی QR چاپ میشود و برای کارکنان قابل مشاهده است. باید در کل کافه یکتا باشد. |
| Display Name | برچسب بلندتری که برای کارکنان نمایش داده میشود؛ برای مثال "Window 3" یا "Booth A". |
| Seat Count | تعداد صندلیهای میز. مقدار پیشفرض 2 است. |
| Shape | یکی از اینها: square، rectangle horizontal، rectangle vertical، round. |
| Size | عددی بین 1 تا 10. اندازه رندر میز را در ویرایشگر و نمای 3D کنترل میکند. |
| Floor | طبقهای که این میز به آن تعلق دارد. با ویرایش این فیلد میتوانید میز را بین طبقات جابهجا کنید. |
| State | idle، in_use یا out_of_order. |
وضعیتهای میز
| وضعیت | معنی |
|---|---|
| idle | هیچ نشست فعالی وجود ندارد. تا وقتی مشتری را ننشاندهاید، هیچکس نمیتواند سفارش ثبت کند. |
| in_use | یک کد امنیتی فعال است. مشتری میتواند QR را اسکن کند و سفارش بدهد. |
| out_of_order | میز در دسترس نیست. در چیدمان کمرنگ نمایش داده میشود و صفحه QR هم یک پیام عدم دسترسی نشان میدهد. برای تعمیرات یا خرابی مبلمان مفید است. |
نشاندن مشتری
برای پذیرش سفارش از یک میز، کارکنان باید مشتری را بنشانند. این کار یک کد امنیتی صادر میکند و میز را به وضعیت in_use میبرد.
- در صفحه Tables یا از منوی اقدام Floor Plan، میز را انتخاب کنید.
- روی Seat Customer کلیک کنید (همچنین با عنوان "Open Table" نمایش داده میشود).
- سیستم یک کد امنیتی 6 رقمی تولید و نمایش میدهد.
- کد را به مشتری بدهید. او بعد از اسکن QR آن را وارد میکند.
کد فقط در لحظه تولید بهصورت متن ساده نمایش داده میشود، و وقتی یک مدیر دیالوگ Show Code را برای میزی که قبلاً نشسته است باز میکند. سمت سرور این کد hash میشود. کد بعد از مدت زمان پیشفرض منقضی میشود و هر زمان که بخواهید میتوان آن را rotate یا reset کرد.
نمایش و چرخاندن کد
- Show Code. کد متن ساده ذخیرهشده فعلی را برای میز باز نشان میدهد. وقتی مشتری عدد را بار اول متوجه نشده، این گزینه مفید است. این عملیات کد را rotate نمیکند و QR قبلی را نامعتبر نمیسازد.
- Rotate QR. یک token جدید QR برای میز میسازد. برچسب QR قبلی نامعتبر میشود. از این گزینه وقتی برچسب را دوباره چاپ میکنید یا شک دارید QR قدیمی بیرون از مجموعه به اشتراک گذاشته شده است استفاده کنید.
بستن یک میز
وقتی مشتری بدون صورتحساب باز میرود، روی Close Table کلیک کنید. کد امنیتی فوراً منقضی میشود، میز به idle برمیگردد و هر تلاش بعدی برای اسکن نیازمند نشاندن دوباره است.
اگر روی میز سفارش پرداختنشده وجود دارد، بهجای آن از Settle Check استفاده کنید. تسویه همه سفارشهای باز را با روش پرداخت انتخابی میبندد و سپس میز را به حالت idle برمیگرداند. برای جریان تسویه به صفحه Orders نگاه کنید.
QRها
هر میز یک QR دارد که URL handy.cafe/{cafe-slug}/{table-code} را رمز میکند. یک query parameter هم token QR را حمل میکند تا ثابت کند برچسب اصیل است. وقتی مشتری QR را اسکن میکند:
- صفحه منو slug و کد میز را در برابر cloud API resolve میکند.
- اگر میز در وضعیت
in_useباشد، از مشتری کد امنیتی ۶ رقمی خواسته میشود. - در صورت موفقیت، یک session token صادر میشود و در cookie و یک fallback از نوع Bearer token ذخیره میشود. این fallback برای حالتی است که Safari در iPhone در بعضی پیکربندیها third-party cookie را مسدود کند.
QR قابل چاپ را از صفحه Tables تولید کنید. هر میز یک پیشنمایش QR دارد که میتوانید آن را بهصورت SVG یا PNG ذخیره کنید. هر وقت QR token را rotate میکنید یا slug را تغییر میدهید، برچسبها را دوباره چاپ کنید.
نکتههایی برای طراحی چیدمان
- اول چیدمان واقعی فضا را روی بوم ترسیم کنید. ورودی را نزدیک یک لبه قرار دهید و به سمت داخل پیش بروید. این کار جهتیابی کارکنان را راحتتر میکند.
- حتی اگر فضای شما فقط یک طبقه دارد، میزها را بر اساس طبقه گروهبندی کنید. داشتن "Hall" و "Terrace" بهعنوان طبقات جداگانه، فیلتر کردن داشبورد سفارشها بر اساس ناحیه را سادهتر میکند.
- برای boothهایی که چهار نفر یا بیشتر جا میدهند از مقدار Size بزرگتر و برای صندلیهای کانتر از مقدارهای کوچکتر استفاده کنید.
- وقتی مبلمان نیاز به تعمیر دارد، میز را
out_of_orderکنید تا مشتری نتواند روی آن سفارش ثبت کند. رکورد میز را فقط وقتی حذف کنید که آن صندلی برای همیشه از بین رفته باشد.