Phương thức UpdateBooking
Sử dụng bộ sưu tập để sắp xếp ngăn nắp các trang
Lưu và phân loại nội dung dựa trên lựa chọn ưu tiên của bạn.
Yêu cầu
UpdateBookingRequest
Thông báo yêu cầu chứa thông tin đã cập nhật trong trường đặt phòng và liệt kê đường dẫn của tất cả các trường đặt phòng cần cập nhật trong trường update_mask. Ví dụ: trường update_mask của một yêu cầu lên lịch lại một lượt đặt phòng hiện có chứa hai đường dẫn sau:
paths: "start_time"
paths: "duration"
Hãy xem FieldMask để biết thêm thông tin.
Giá trị trả về
UpdateBookingResponse
Mã lỗi gRPC chuẩn
INVALID_ARGUMENT
nếu mặt nạ trường được cung cấp chứa các giá trị không hợp lệ hoặc bất kỳ trường Đặt phòng nào được cập nhật đều không hợp lệ. Điều này bao gồm cả trường hợp logic nghiệp vụ không cho phép cập nhật trường, ví dụ: vì đã quá muộn để huỷ.
NOT_FOUND
nếu mã đặt phòng được cung cấp không xác định
RESOURCE_EXHAUSTED
nếu không thể đặt trước khung giờ tương ứng với thời gian bắt đầu mới cập nhật.
// Request to update a [ext.maps.booking.partner.v0.Booking]
message UpdateBookingRequest {
// Field mask of all booking fields to be updated
google.protobuf.FieldMask update_mask = 1;
// The booking to be updated
// The following fields can be set in a booking:
// - status, to cancel a booking.
// - start_time and duration to reschedule a booking.
Booking booking = 2;
}
// Response with the updated [ext.maps.booking.partner.v0.Booking]
message UpdateBookingResponse {
// The updated booking
Booking booking = 1;
// The updated user payment option originally used to pay for this booking.
// This should be set if the UpdateBookingRequest results in a change to
// the UserPaymentOption.
// For instance, if the booking is canceled, the UserPaymentOption should
// reflect an additional credit to the user. In the case of a multi-use
// payment option, the current_count should be increased by one to
// allow the user to create another booking with this payment option. In the
// case of a single-use payment option, a new single-use user payment option
// should be returned.
UserPaymentOption user_payment_option = 2;
}
Trừ phi có lưu ý khác, nội dung của trang này được cấp phép theo Giấy phép ghi nhận tác giả 4.0 của Creative Commons và các mẫu mã lập trình được cấp phép theo Giấy phép Apache 2.0. Để biết thông tin chi tiết, vui lòng tham khảo Chính sách trang web của Google Developers. Java là nhãn hiệu đã đăng ký của Oracle và/hoặc các đơn vị liên kết với Oracle.
Cập nhật lần gần đây nhất: 2025-07-26 UTC.
[null,null,["Cập nhật lần gần đây nhất: 2025-07-26 UTC."],[[["\u003cp\u003e\u003ccode\u003eUpdateBookingRequest\u003c/code\u003e updates booking information using the \u003ccode\u003eupdate_mask\u003c/code\u003e field to specify the fields to change.\u003c/p\u003e\n"],["\u003cp\u003eIt allows rescheduling by updating \u003ccode\u003estart_time\u003c/code\u003e and \u003ccode\u003eduration\u003c/code\u003e, and canceling by updating the \u003ccode\u003estatus\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003ePotential errors include \u003ccode\u003eINVALID_ARGUMENT\u003c/code\u003e for invalid updates, \u003ccode\u003eNOT_FOUND\u003c/code\u003e for unknown booking IDs, and \u003ccode\u003eRESOURCE_EXHAUSTED\u003c/code\u003e for unavailable slots.\u003c/p\u003e\n"],["\u003cp\u003e\u003ccode\u003eUpdateBookingResponse\u003c/code\u003e returns the updated booking and might include an updated \u003ccode\u003eUserPaymentOption\u003c/code\u003e if the update affects payment.\u003c/p\u003e\n"]]],["The `UpdateBookingRequest` message updates a booking by specifying the `booking` field with new information and `update_mask` with paths of the fields to modify, such as \"start_time\" and \"duration\". The request can modify a booking's status, start time, or duration. The `UpdateBookingResponse` returns the modified booking and any updated `UserPaymentOption`. Errors like `INVALID_ARGUMENT`, `NOT_FOUND`, and `RESOURCE_EXHAUSTED` may occur due to invalid input, unknown ID, or slot unavailability.\n"],null,["# UpdateBooking method\n\n**Request**\n\nUpdateBookingRequest\n\nA request message contains updated information in the booking field, and lists\npaths of all booking fields to be updated in the update_mask field. For example,\nthe update_mask field of a request that reschedules an existing booking contains\nthe following two paths: \n\n```scdoc\n paths: \"start_time\"\n paths: \"duration\"\n```\n\nSee\n[FieldMask](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#google.protobuf.FieldMask)\nfor additional information.\n\n**Return value**\n\nUpdateBookingResponse\n\n**Canonical gRPC error codes**\n\n- `INVALID_ARGUMENT` if the provided field mask contains invalid values or any of the updated Booking fields are invalid. This includes the case where updating the field is not permitted by business logic, e.g. because it is too late to cancel.\n- `NOT_FOUND` if the provided booking ID is unknown\n- `RESOURCE_EXHAUSTED` if the slot that corresponds to the updated start time is not available for booking.\n\n```scilab\n// Request to update a [ext.maps.booking.partner.v0.Booking]\nmessage UpdateBookingRequest {\n // Field mask of all booking fields to be updated\n google.protobuf.FieldMask update_mask = 1;\n\n // The booking to be updated\n // The following fields can be set in a booking:\n // - status, to cancel a booking.\n // - start_time and duration to reschedule a booking.\n Booking booking = 2;\n}\n\n// Response with the updated [ext.maps.booking.partner.v0.Booking]\nmessage UpdateBookingResponse {\n // The updated booking\n Booking booking = 1;\n\n // The updated user payment option originally used to pay for this booking.\n // This should be set if the UpdateBookingRequest results in a change to\n // the UserPaymentOption.\n // For instance, if the booking is canceled, the UserPaymentOption should\n // reflect an additional credit to the user. In the case of a multi-use\n // payment option, the current_count should be increased by one to\n // allow the user to create another booking with this payment option. In the\n // case of a single-use payment option, a new single-use user payment option\n // should be returned.\n UserPaymentOption user_payment_option = 2;\n}\n```"]]