রিজার্ভেশনের জন্য প্রাপ্যতা ডেটা গঠন করা

পরামিতি সংজ্ঞা

Availability সংজ্ঞায় উল্লেখ করা হয়েছে:

  • party_size : পার্টির আকার যা এই সময়ের স্লটে মিটমাট করা যেতে পারে। একটি রেস্তোরাঁ একই সময়ের জন্য একাধিক স্লটের সাথে যুক্ত হতে পারে, প্রতিটি একটি আলাদা party_size নির্দিষ্ট করে, যদি উদাহরণস্বরূপ 2, 3, বা 4 জন একটি রিজার্ভেশনের সাথে বসতে পারে
  • spots_open : এই প্রাপ্যতা এন্ট্রির জন্য বর্তমানে উপলব্ধ দাগের সংখ্যা
  • spots_total : এই কনফিগারেশনের জন্য বণিকের মোট দাগের সংখ্যা (যেগুলি উপলব্ধ নয় সেগুলি সহ)

ফ্লোর প্ল্যানের একটি ডিজিটাল উপস্থাপনা তৈরি করতে এই তিনটি পরামিতি একসঙ্গে কাজ করে। party_size হল প্রতিটি টেবিলে কত লোক ধরে রাখতে পারে (একটি টেবিলে থাকা প্রতিটি আকারের জন্য একটি এন্ট্রি থাকবে)। spots_open এবং spots_total হল সেই party_size কতগুলি টেবিল মিটমাট করতে পারে তার গণনা।

উদাহরণ খালি মেঝে পরিকল্পনা

নিম্নলিখিত ফ্লোর প্ল্যান সহ একটি রেস্তোরাঁর কল্পনা করুন এবং কোনও সক্রিয় বুকিং নেই:

ছবি 1: কোনো সক্রিয় বুকিং ছাড়াই ফ্লোর প্ল্যান
ছবি 1: কোনো সক্রিয় বুকিং ছাড়াই ফ্লোর প্ল্যান

party_size , spots_open , এবং spots_total এর মান হবে:

পার্টি_সাইজ দাগ_খোলা দাগ_মোট
4 3 3
5 3 3
6 4 4
7 1 1
8 1 1

এই বণিকের এককালীন স্লটের জন্য উপলব্ধতা ফিডটি দেখতে এরকম হবে:

JSON

{
  "availability": [
        {
          "spots_total": 3,
          "spots_open": 3,
          "duration_sec": 3600,
          "service_id": "1000",
          "start_sec": 1535806800,
          "merchant_id": "merch1",
          "resources": {
            "party_size": 4
          }
        },
        {
          "spots_total": 3,
          "spots_open": 3,
          "duration_sec": 3600,
          "service_id": "1000",
          "start_sec": 1535806800,
          "merchant_id": "merch1",
          "resources": {
            "party_size": 5
          }
        },
        {
          "spots_total": 4,
          "spots_open": 4,
          "duration_sec": 3600,
          "service_id": "1000",
          "start_sec": 1535806800,
          "merchant_id": "merch1",
          "resources": {
            "party_size": 6
          }
        },
        {
          "spots_total": 1,
          "spots_open": 1,
          "duration_sec": 3600,
          "service_id": "1000",
          "start_sec": 1535806800,
          "merchant_id": "merch1",
          "resources": {
            "party_size": 7
          }
        },
        {
          "spots_total": 1,
          "spots_open": 1,
          "duration_sec": 3600,
          "service_id": "1000",
          "start_sec": 1535806800,
          "merchant_id": "merch1",
          "resources": {
            "party_size": 8
          }
        }
      ]
}

বুকিং সহ মেঝে পরিকল্পনার উদাহরণ

এখন কল্পনা করুন যে একটি গোল টেবিল বুক করা হয়েছে:

চিত্র 2: একটি সক্রিয় বুকিং সহ ফ্লোর প্ল্যান
চিত্র 2: একটি সক্রিয় বুকিং সহ ফ্লোর প্ল্যান

party_size , spots_open , এবং spots_total এর মান এখন হবে:

পার্টি_সাইজ দাগ_খোলা দাগ_মোট
4 2 3
5 2 3
6 3 4
7 1 1
8 1 1

JSON

{
  "availability": [
        {
          "spots_total": 3,
          "spots_open": 2,
          "duration_sec": 3600,
          "service_id": "1000",
          "start_sec": 1535806800,
          "merchant_id": "merch1",
          "resources": {
            "party_size": 4
          }
        },
        {
          "spots_total": 3,
          "spots_open": 2,
          "duration_sec": 3600,
          "service_id": "1000",
          "start_sec": 1535806800,
          "merchant_id": "merch1",
          "resources": {
            "party_size": 5
          }
        },
        {
          "spots_total": 4,
          "spots_open": 3,
          "duration_sec": 3600,
          "service_id": "1000",
          "start_sec": 1535806800,
          "merchant_id": "merch1",
          "resources": {
            "party_size": 6
          }
        },
        {
          "spots_total": 1,
          "spots_open": 1,
          "duration_sec": 3600,
          "service_id": "1000",
          "start_sec": 1535806800,
          "merchant_id": "merch1",
          "resources": {
            "party_size": 7
          }
        },
        {
          "spots_total": 1,
          "spots_open": 1,
          "duration_sec": 3600,
          "service_id": "1000",
          "start_sec": 1535806800,
          "merchant_id": "merch1",
          "resources": {
            "party_size": 8
          }
        }
      ]
}

সম্মিলিত টেবিল সমর্থন সঙ্গে ডাইনিং প্রাপ্যতা নির্দিষ্ট করা

একটি রেস্তোঁরা বড় গোষ্ঠীকে সমর্থন করার জন্য টেবিলগুলিকে একত্রিত করতে পারে এমন অনেক উপায় রয়েছে। আপনি আপনার ফিডে spots_open এবং spots_total এমনভাবে নির্দিষ্ট করবেন যা সঠিকভাবে প্রতিফলিত করে যে আপনি একটি প্রদত্ত আকারের দলগুলি গ্রহণ করতে পারবেন কিনা। আপনি কিভাবে সংমিশ্রণ সারণি নির্দিষ্ট করতে পারেন তার একটি উদাহরণ নিম্নলিখিত। এই গণনা কীভাবে করা হয় তাতে আপনার ফিডগুলি কিছুটা আলাদা হতে পারে এবং আপনার ব্যবসার যুক্তির সাথে মেলে এমনভাবে spots_open এবং spots_total নির্দিষ্ট করা আপনার পক্ষে গ্রহণযোগ্য।

যদি একটি রেস্তোরাঁ একটি বৃহত্তর পার্টি গঠনের জন্য টেবিলের সমন্বয় সমর্থন করে, আপনি এটি প্রতিফলিত করতে আপনার spots_open এবং spots_total আপডেট করতে পারেন।

বলুন একটি রেস্তোরাঁ 7-10 জনের একটি পার্টির জন্য দুটি ছোট টেবিল একত্রিত করতে পারে।

ছবি 3: কোনো সক্রিয় বুকিং ছাড়াই ফ্লোর প্ল্যান
ছবি 3: কোনো সক্রিয় বুকিং ছাড়াই ফ্লোর প্ল্যান

কোনো সক্রিয় বুকিং না থাকলে, party_size , spots_open , এবং spots_total মানগুলি হল:

পার্টি_সাইজ দাগ_খোলা দাগ_মোট
4 3 3
5 3 3
6 4 4
7 1 1
8 1 1
9 1 1
10 1 1

এখন, একই ফ্লোর প্ল্যানের সাথে, 10 এর পার্টি সাইজের জন্য একটি বুকিং করা হয় যা দুটি ছোট টেবিলকে একত্রিত করে।

চিত্র 4: দুটি টেবিলের মধ্যে একটি সক্রিয় বুকিং সহ ফ্লোর প্ল্যান
চিত্র 4: দুটি টেবিলের মধ্যে একটি সক্রিয় বুকিং সহ ফ্লোর প্ল্যান

তারপর, party_size , spots_open , এবং spots_total এর মানগুলি এখন হল:

পার্টি_সাইজ দাগ_খোলা দাগ_মোট
4 1 3
5 1 3
6 2 4
7 1 1
8 1 1
9 0 1
10 0 1