बुकिंग के लिए उपलब्धता का डेटा स्ट्रक्चर करना

पैरामीटर की परिभाषाएं

Availability की परिभाषा में बताया गया है:

  • party_size: इस समय स्लॉट में, पार्टी के कितने लोगों को शामिल किया जा सकता है. किसी रेस्टोरेंट को एक ही समय के लिए कई स्लॉट से जोड़ा जा सकता है. हर स्लॉट में अलग-अलग party_size की जानकारी दी जा सकती है. उदाहरण के लिए, अगर बुकिंग के साथ दो, तीन या चार लोगों के बैठने की सुविधा उपलब्ध है
  • spots_open: इस उपलब्धता की जानकारी के लिए, फ़िलहाल उपलब्ध सीटों की संख्या
  • spots_total: इस कॉन्फ़िगरेशन के लिए कारोबारी या कंपनी के पास मौजूद कुल सीटों की संख्या. इसमें वे सीटें भी शामिल हैं जो उपलब्ध नहीं हैं

ये तीनों पैरामीटर मिलकर, फ़्लोर प्लान का डिजिटल वर्शन बनाते हैं. party_size से पता चलता है कि हर टेबल पर कितने लोग बैठ सकते हैं. टेबल के हर साइज़ के लिए एक एंट्री होगी. spots_open और spots_total से पता चलता है कि party_size के हिसाब से कितनी टेबल उपलब्ध हैं.

खाली फ़्लोर प्लान का उदाहरण

मान लें कि किसी रेस्टोरेंट का फ़्लोर प्लान यह है और कोई बुकिंग चालू नहीं है:

पहली इमेज: फ़्लोर प्लान, जिसमें कोई बुकिंग नहीं है
पहली इमेज: फ़्लोर प्लान में कोई भी बुकिंग चालू नहीं है

party_size, spots_open, और spots_total के लिए वैल्यू ये होंगी:

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
          }
        }
      ]
}

बुकिंग के साथ फ़्लोर प्लान का उदाहरण

अब मान लें कि गोल टेबल में से एक बुक हो गई है:

दूसरी इमेज: फ़्लोर प्लान में एक बुकिंग दिखाई गई है
दूसरी इमेज: फ़्लोर प्लान में एक चालू बुकिंग

अब party_size, spots_open, और spots_total की वैल्यू ये होंगी:

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 को अपडेट किया जा सकता है.

मान लें कि किसी रेस्टोरेंट में सात से दस लोगों के ग्रुप के लिए, दो छोटी टेबल को एक साथ जोड़ा जा सकता है.

तीसरी इमेज: फ़्लोर प्लान, जिसमें कोई बुकिंग नहीं है
तीसरी इमेज: फ़्लोर प्लान में कोई भी बुकिंग चालू नहीं है

अगर कोई बुकिंग चालू नहीं है, तो party_size, spots_open, और spots_total की वैल्यू ये होंगी:

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 लोगों के लिए बुकिंग की जाती है. इसके लिए, दो छोटी टेबल को एक साथ मिलाया जाता है.

चौथी इमेज: फ़्लोर प्लान में दो टेबल पर फैली एक चालू बुकिंग दिखाई गई है
चौथी इमेज: फ़्लोर प्लान, जिसमें दो टेबल के लिए एक बुकिंग चालू है

इसके बाद, party_size, spots_open, और spots_total की वैल्यू ये होंगी:

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