-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* adding insurance claim services (not complete) --------- Co-authored-by: Sam Jaarsma C4T <[email protected]> Co-authored-by: Ekrem Seren <[email protected]>
- Loading branch information
1 parent
0787e9c
commit 95cb5a2
Showing
38 changed files
with
2,826 additions
and
4 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,45 @@ | ||
syntax = "proto3"; | ||
|
||
package cmp.services.accommodation.v3; | ||
|
||
import "cmp/services/accommodation/v3/property_types.proto"; | ||
import "cmp/types/v1/common.proto"; | ||
import "cmp/types/v1/language.proto"; | ||
import "cmp/types/v2/product_code.proto"; | ||
import "google/protobuf/timestamp.proto"; | ||
|
||
message AccommodationProductInfoRequest { | ||
// Message header | ||
cmp.types.v1.RequestHeader header = 1; | ||
|
||
// Only respond with the products that are modified after this timestamp | ||
// | ||
// Timestamps may be used for both off-chain and on-chain operations. | ||
// For on-chain operations, only seconds are supported, and nanoseconds | ||
// will be ignored. | ||
google.protobuf.Timestamp modified_after = 2; | ||
|
||
// Languages | ||
repeated cmp.types.v1.Language languages = 3; | ||
|
||
// Property codes | ||
repeated cmp.types.v2.SupplierProductCode supplier_codes = 4; | ||
} | ||
|
||
message AccommodationProductInfoResponse { | ||
// Message header | ||
cmp.types.v1.ResponseHeader header = 1; | ||
|
||
// Product list: Properties | ||
repeated cmp.services.accommodation.v3.PropertyExtendedInfo properties = 2; | ||
} | ||
|
||
// Accommodation product info service definition | ||
// | ||
//  | ||
// | ||
// [Open Message Diagram](https://storage.googleapis.com/docs-cmp-files/diagrams/proto/cmp/services/accommodation/v3/info.proto.dot.svg) | ||
service AccommodationProductInfoService { | ||
// Returns product list for accommodation (properties) | ||
rpc AccommodationProductInfo(AccommodationProductInfoRequest) returns (AccommodationProductInfoResponse); | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,37 @@ | ||
syntax = "proto3"; | ||
|
||
package cmp.services.accommodation.v3; | ||
|
||
import "cmp/services/accommodation/v3/property_types.proto"; | ||
import "cmp/types/v1/common.proto"; | ||
import "google/protobuf/timestamp.proto"; | ||
|
||
message AccommodationProductListRequest { | ||
// Message header | ||
cmp.types.v1.RequestHeader header = 1; | ||
|
||
// Only respond with the products that are modified after this timestamp | ||
// | ||
// Timestamps may be used for both off-chain and on-chain operations. | ||
// For on-chain operations, only seconds are supported, and nanoseconds | ||
// will be ignored. | ||
google.protobuf.Timestamp modified_after = 2; | ||
} | ||
|
||
message AccommodationProductListResponse { | ||
// Message header | ||
cmp.types.v1.ResponseHeader header = 1; | ||
|
||
// Product list: Properties | ||
repeated cmp.services.accommodation.v3.Property properties = 2; | ||
} | ||
|
||
// Accommodation product list service definition | ||
// | ||
//  | ||
// | ||
// [Open Message Diagram](https://storage.googleapis.com/docs-cmp-files/diagrams/proto/cmp/services/accommodation/v3/list.proto.dot.svg) | ||
service AccommodationProductListService { | ||
// Returns product list for accommodation (properties) | ||
rpc AccommodationProductList(AccommodationProductListRequest) returns (AccommodationProductListResponse); | ||
} |
198 changes: 198 additions & 0 deletions
198
proto/cmp/services/accommodation/v3/property_types.proto
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,198 @@ | ||
syntax = "proto3"; | ||
|
||
package cmp.services.accommodation.v3; | ||
|
||
import "cmp/types/v1/amenity.proto"; | ||
import "cmp/types/v1/bed.proto"; | ||
import "cmp/types/v1/description.proto"; | ||
import "cmp/types/v1/meal_plan.proto"; | ||
import "cmp/types/v1/product_status.proto"; | ||
import "cmp/types/v2/contact_info.proto"; | ||
import "cmp/types/v2/location.proto"; | ||
import "cmp/types/v2/product_code.proto"; | ||
import "cmp/types/v2/service_fact.proto"; | ||
import "cmp/types/v3/file.proto"; | ||
import "cmp/types/v3/traveller.proto"; | ||
import "google/protobuf/timestamp.proto"; | ||
|
||
// Represents property info for an accommodation product | ||
// | ||
//  | ||
// | ||
// [Open Message Diagram](https://storage.googleapis.com/docs-cmp-files/diagrams/proto/cmp/services/accommodation/v3/property_types.proto.dot.svg) | ||
message Property { | ||
// Ex: "2023-08-28T12:03:50", specifying when the static data of a product was | ||
// last updated | ||
// | ||
// Timestamps may be used for both off-chain and on-chain operations. | ||
// For on-chain operations, only seconds are supported, and nanoseconds | ||
// will be ignored. | ||
google.protobuf.Timestamp last_modified = 1; | ||
|
||
// Supplier product Code | ||
cmp.types.v2.SupplierProductCode supplier_code = 2; | ||
|
||
// Product code which can be of different types | ||
repeated cmp.types.v2.ProductCode product_codes = 3; | ||
|
||
// Ex: "Beach Hotel Alanya" | ||
string name = 4; | ||
|
||
// Ex: "Hilton" | ||
string chain = 5; | ||
|
||
// Ex: CATEGORY_RATING_4_5 | ||
cmp.services.accommodation.v3.CategoryRating category_rating = 6; | ||
|
||
// Ex: CATEGORY_UNIT_PALMS | ||
cmp.services.accommodation.v3.CategoryUnit category_unit = 7; | ||
|
||
// Contact Info: phone, address, email, links | ||
cmp.types.v2.ContactInfo contact_info = 8; | ||
|
||
// Location coordinate | ||
cmp.types.v2.Coordinates coordinates = 9; | ||
|
||
// Status of the property | ||
cmp.types.v1.ProductStatus status = 10; | ||
|
||
// Airports | ||
// Ex: ["PMI", "ZRH", "AYT"] | ||
repeated string airports = 11; | ||
} | ||
|
||
enum CategoryRating { | ||
CATEGORY_RATING_UNSPECIFIED = 0; | ||
CATEGORY_RATING_0_5 = 1; | ||
CATEGORY_RATING_1_0 = 2; | ||
CATEGORY_RATING_1_5 = 3; | ||
CATEGORY_RATING_2_0 = 4; | ||
CATEGORY_RATING_2_5 = 5; | ||
CATEGORY_RATING_3_0 = 6; | ||
CATEGORY_RATING_3_5 = 7; | ||
CATEGORY_RATING_4_0 = 8; | ||
CATEGORY_RATING_4_5 = 9; | ||
CATEGORY_RATING_5_0 = 10; | ||
CATEGORY_RATING_5_5 = 11; | ||
CATEGORY_RATING_6_0 = 12; | ||
CATEGORY_RATING_6_5 = 13; | ||
CATEGORY_RATING_7_0 = 14; | ||
CATEGORY_RATING_7_5 = 15; | ||
CATEGORY_RATING_8_0 = 16; | ||
CATEGORY_RATING_8_5 = 17; | ||
CATEGORY_RATING_9_0 = 18; | ||
CATEGORY_RATING_9_5 = 19; | ||
CATEGORY_RATING_10_0 = 20; | ||
} | ||
|
||
enum CategoryUnit { | ||
CATEGORY_UNIT_UNSPECIFIED = 0; | ||
CATEGORY_UNIT_STARS = 1; | ||
CATEGORY_UNIT_PALMS = 2; | ||
} | ||
|
||
// This message type contains extended info about a property | ||
message PropertyExtendedInfo { | ||
// Property | ||
cmp.services.accommodation.v3.Property property = 1; | ||
|
||
// Images | ||
repeated cmp.types.v3.Image images = 2; | ||
|
||
// Videos | ||
repeated cmp.types.v3.Video videos = 3; | ||
|
||
// Segmentation classification | ||
repeated string classifications = 4; | ||
|
||
// Property descriptions | ||
repeated cmp.types.v1.LocalizedDescriptionSet localized_descriptions = 5; | ||
|
||
// Room descriptions | ||
repeated cmp.types.v1.LocalizedDescriptionSet localized_room_descriptions = 6; | ||
|
||
// Payment type. Ex: "MERCHANT" | ||
string payment_type = 7; | ||
|
||
// Rooms | ||
repeated cmp.services.accommodation.v3.Room rooms = 8; | ||
} | ||
|
||
message Room { | ||
// Room code of the unit in case of hotel. Ex: "RMSDDB0000". For holiday homes | ||
// often no room codes are used. This code must explicitly match the supplier_room_code | ||
// in the ProductList and the ProductInfo messages, so that the static data like room | ||
// amenities, descriptions, images etc. can be married to the dynamic price and | ||
// availability data for display to the end user. | ||
string supplier_code = 1; | ||
|
||
// Room name. In case of hotel a standardized room name is often derived from | ||
// room code structures. Example: "superior sea view room". | ||
// For holiday homes we expect names like "Master Bedroom", "Second Bedroom" or | ||
// "Bathroom" when specific descriptions for each room are available. | ||
string supplier_name = 2; | ||
|
||
// Original room name as assigned by the hotel. In case of specifically designated room | ||
// names by chains and both the chain and the customer wants to adhere to them. | ||
// Ex: "CEIBA CLUB", "CEIBA GOVERNORS SUITE", "GOVERNORS SUITE" or "ENCLAVE NATURE VIEW" | ||
// For holiday homes specific room names if available can be given. | ||
string original_name = 3; | ||
|
||
repeated cmp.types.v3.Image images = 4; | ||
repeated cmp.types.v3.Video videos = 5; | ||
|
||
// Room descriptions | ||
repeated cmp.types.v1.LocalizedDescriptionSet descriptions = 6; | ||
|
||
// Meal plan (Board code) | ||
repeated cmp.types.v1.MealPlan meal_plans = 7; | ||
|
||
// Beds | ||
repeated cmp.types.v1.Bed beds = 8; | ||
|
||
// Occupancy | ||
cmp.services.accommodation.v3.Occupancy total_occupancy = 9; | ||
|
||
// Services | ||
repeated cmp.types.v2.ServiceFact services = 10; | ||
|
||
// Amenities | ||
repeated cmp.types.v1.Amenity amenities = 11; | ||
} | ||
|
||
message Occupancy { | ||
// Min guests | ||
int32 min_guests = 1; | ||
|
||
// Max guests | ||
int32 max_guests = 2; | ||
|
||
// Standard occupancy | ||
int32 standard_occupancy = 3; | ||
|
||
// Full payers | ||
int32 full_payers = 4; | ||
|
||
// If infants are counted in total guests or not | ||
bool infant_counted_in_total_guests = 5; | ||
|
||
// Occupancy options | ||
repeated cmp.services.accommodation.v3.OccupancyOption occupancy_options = 6; | ||
} | ||
|
||
message OccupancyOption { | ||
// Guest type like adult, child, infant. | ||
cmp.types.v3.TravellerType guest_type = 1; | ||
|
||
// Min guests | ||
int32 min = 2; | ||
|
||
// Max guests | ||
int32 max = 3; | ||
|
||
// Min age | ||
int32 min_age = 4; | ||
|
||
// Max age | ||
int32 max_age = 5; | ||
} |
Oops, something went wrong.