Rezervasyonlar için stok durumu verilerini yapılandırma

Parametre tanımları

Availability tanımında belirtildiği gibi:

  • party_size: Bu zaman aralığında ağırlanabilecek parti boyutu. Örneğin, rezervasyonla 2, 3 veya 4 kişi oturabiliyorsa bir restoran aynı saat için birden fazla yerle ilişkilendirilebilir ve her biri farklı bir party_size belirtir.
  • spots_open: Bu müsaitlik durumu girişi için şu anda mevcut olan yer sayısı
  • spots_total: Satıcının bu yapılandırma için sahip olduğu toplam yer sayısı (kullanılamayanlar dahil)

Bu üç parametre, kat planının dijital bir temsilini oluşturmak için birlikte çalışır. party_size, her masanın alabileceği kişi sayısıdır (masanın alabileceği her boyut için bir giriş olur). spots_open ve spots_total party_size için kaç masanın uygun olduğunu gösterir.

Boş kat planı örneği

Aşağıdaki kat planına sahip ve aktif rezervasyonu olmayan bir restoran düşünün:

Şekil 1: Etkin rezervasyon içermeyen kat planı
Şekil 1: Etkin rezervasyonların olmadığı kat planı

party_size, spots_open ve spots_total değerleri şu şekilde olur:

party_size spots_open spots_total
4 3 3
5 3 3
6 4 4
7 1 1
8 1 1

Bu satıcıdaki bir zaman aralığı için stok durumu feed'i şu şekilde görünür:

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

Rezervasyon içeren örnek kat planı

Şimdi de yuvarlak masalardan birinin rezerve edildiğini düşünün:

2. Şekil: Etkin bir rezervasyonun bulunduğu kat planı
Şekil 2: Bir etkin rezervasyonun bulunduğu kat planı

party_size, spots_open ve spots_total değerleri artık şu şekilde olacaktır:

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

Birleştirilmiş tablolar desteğiyle yemek yeme yerlerinin kullanılabilirliğini belirtme

Restoranlar, daha büyük gruplara hizmet vermek için masaları birleştirmenin birçok yolunu kullanabilir. Feed'lerinizde spots_open ve spots_total özelliklerini, belirli bir boyuttaki grupları kabul edip edemeyeceğinizi doğru şekilde yansıtacak şekilde belirtmeniz beklenir. Aşağıda, tabloları birleştirme işlemini nasıl belirtebileceğinize dair bir örnek verilmiştir. Feed'leriniz bu hesaplamanın yapılma şekli bakımından biraz farklılık gösterebilir. spots_open ve spots_total değerlerini iş mantığınıza uygun şekilde belirtmeniz kabul edilir.

Bir restoran, daha büyük bir grup oluşturmak için masaları birleştirmeyi destekliyorsa spots_open ve spots_total değerlerinizi bunu yansıtacak şekilde güncelleyebilirsiniz.

Örneğin, bir restoran 7-10 kişilik bir grubu ağırlamak için iki küçük masayı birleştirebilir.

Şekil 3: Etkin rezervasyon içermeyen kat planı
Şekil 3: Etkin rezervasyonların olmadığı kat planı

Etkin rezervasyon olmaması durumunda party_size, spots_open ve spots_total değerleri şunlardır:

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

Şimdi aynı kat planında, iki küçük masanın birleştirildiği 10 kişilik bir parti için rezervasyon yapılıyor.

Şekil 4: İki masayı kapsayan etkin bir rezervasyonun bulunduğu kat planı
Şekil 4: İki masayı kapsayan bir etkin rezervasyonun bulunduğu kat planı

Ardından, party_size, spots_open ve spots_total değerleri şu şekilde olur:

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