เอนทิตีบริการ

เอนทิตี Service จะกำหนดบริการสั่งอาหารที่มีให้บริการที่ร้านอาหาร เช่น บริการจัดส่งหรือสั่งกลับบ้าน เมื่อกำหนดเอนทิตี Service ให้ใช้ประเภท Service ร้านอาหารแต่ละแห่งต้องเชื่อมต่อกับเอนทิตีบริการประเภทซื้อกลับบ้านหรือจัดส่งอย่างน้อย 1 รายการ และไม่เกิน 2 รายการ โดยต้องเป็นประเภทซื้อกลับบ้าน 1 รายการและประเภทจัดส่ง 1 รายการ

แผนภาพความสัมพันธ์ของเอนทิตีบริการ
รูปที่ 1: เอนทิตีบริการแสดงความสัมพันธ์กับเอนทิตี ServiceArea, ServiceHours, OperationHours และ Fee

เอนทิตีบริการจะกำหนดพร็อพเพอร์ตี้ต่างๆ เช่น ประเภทบริการ เวลาทําการ และพื้นที่ให้บริการ คาดว่าเอนทิตีบริการจะเปลี่ยนแปลงและรีเฟรชเมื่อมีการอัปโหลดฟีดข้อมูลแต่ละครั้ง

ตัวอย่างเอนทิตีบริการ

ตัวอย่างต่อไปนี้กำหนดเอนทิตี Service พื้นฐานที่รับคำสั่งซื้อทุกวัน

{
  "@type":"Service",
  "@id":"takeout_1",
  "serviceType":"TAKEOUT",
  "menuId":"menu_1",
  "restaurantId":"restaraunt_1"
}
{
  "@type":"OperationHours",
  "@id":"takeout_1_op_hours",
  "serviceId":"takeout_1",
  "opens":"00:00",
  "closes":"23:59"
}
{
  "@type":"ServiceHours",
  "@id":"takeout_1_service_hours",
  "orderType":"ASAP",
  "serviceId":"takeout_1",
  "operationHoursId":"takeout_1_op_hours",
  "opens":"11:00",
  "closes":"21:00",
  "dayOfWeek":["MONDAY","TUESDAY","WEDNESDAY","THURSDAY", "FRIDAY", "SATURDAY"],
  "leadTimeMin":"20",
  "leadTimeMax":"20",
  "isSpecialHour":false
}
{
  "@type":"ServiceHours",
  "@id":"takeout_1_service_hours_sun",
  "orderType":"ASAP",
  "serviceId":"takeout_1",
  "operationHoursId":"takeout_1_op_hours",
  "opens":"16:00",
  "closes":"21:00",
  "dayOfWeek":["SUNDAY"],
  "leadTimeMin":"20",
  "leadTimeMax":"20",
  "isSpecialHour":false
}
{
  "@type":"Service",
  "@id":"delivery_1",
  "serviceType":"DELIVERY",
  "menuId":"10824",
  "restaurantId":"10824"
}
{
  "@type":"OperationHours",
  "@id":"delivery_1_op_hours",
  "serviceId":"delivery_1",
  "opens":"00:00",
  "closes":"23:59"
}
{
  "@type":"ServiceHours",
  "@id":"delivery_1_service_hours",
  "orderType":"ASAP",
  "serviceId":"delivery_1",
  "operationHoursId":"delivery_1_op_hours",
  "opens":"11:00",
  "closes":"21:00",
  "dayOfWeek":["MONDAY","TUESDAY","WEDNESDAY","THURSDAY", "FRIDAY", "SATURDAY",
  "SUNDAY"],
  "leadTimeMin":"50",
  "leadTimeMax":"50",
  "isSpecialHour":false
}
{
  "@type":"ServiceArea",
  "@id":"delivery_1_service_area",
  "serviceId":"delivery_1",
  "polygon":["37.4818562 -122.25801303 37.48247836 -122.25801303 37.48434484
  -122.25621319 37.48621133 -122.25424681 37.49181077 -122.24704744 37.49305509
  -122.24541414 37.49429942 -122.2436143 37.49803238 -122.23821477 37.49803238
  -122.21285044 37.49367726 -122.15885517 37.49056645 -122.15722187 37.48621133
  -122.15542202 37.48558917 -122.15525548 37.4818562 -122.15525548 37.43191387
  -122.17865343 37.43191387 -122.23444854"]
}
{
  "@type":"Fee",
  "@id":"delivery_1_fee",
  "serviceId":"delivery_1",
  "feeType":"DELIVERY",
  "priceCurrency":"USD",
  "eligibleRegion":"delivery_1_service_area",
  "eligibleTransactionVolumeMin":20,
  "percentageOfCart": 7
}

"โดยเร็วที่สุด" และ "เวลาล่วงหน้า"

ผู้ใช้สามารถสั่งซื้อโดยเร็วที่สุดได้ในช่วงServiceHours "โดยเร็วที่สุด" ของร้านอาหาร หรือจะสั่งซื้อล่วงหน้าภายในOperationHoursของร้านอาหารเพื่อให้มีการดำเนินการในช่วงServiceHoursล่วงหน้าก็ได้ หากต้องการกำหนดเวลาทำการล่วงหน้า ให้สร้างเอนทิตี ServiceHours โดยตั้งค่าพร็อพเพอร์ตี้ orderType เป็น ADVANCE ดูรายละเอียดและตัวอย่างเพิ่มเติมได้ที่เวลานำส่งและรับสินค้า

ปิดใช้เอนทิตี Service ชั่วคราว

คุณสามารถระงับหรือเขียนทับ ServiceHours ชั่วคราวเป็นระยะเวลาหนึ่งๆ ที่ทราบล่วงหน้าได้โดยการตั้งค่าวันหยุดและเวลาทำการพิเศษ หากต้องการปิดใช้เอนทิตีบริการด้วยเหตุผลที่ไม่คาดคิด ให้ส่งคำขออัปเดตแบบเรียลไทม์โดยตั้งค่าพร็อพเพอร์ตี้ isDisabled ของเอนทิตีบริการเป็น true

ดูรายละเอียดและตัวอย่างเพิ่มเติมได้ที่การลบและปิดใช้เอนทิตี