From db632c621c948f32aae80079175de8054dcf6ec0 Mon Sep 17 00:00:00 2001 From: Sam Jaarsma Date: Thu, 11 Apr 2024 17:05:13 +0200 Subject: [PATCH] further comments from Alex --- .../v1alpha/search_parameters_types.proto | 2 +- .../v1alpha/search_parameters_types.proto | 2 +- proto/cmp/services/network/v1alpha/fee.proto | 9 +- proto/cmp/types/v1alpha/asset.proto | 14 -- proto/cmp/types/v1alpha/common.proto | 2 +- proto/cmp/types/v1alpha/document.proto | 50 ++-- proto/cmp/types/v1alpha/partner.proto | 5 +- proto/cmp/types/v1alpha/price.proto | 16 +- proto/cmp/types/v1alpha/price_type.proto | 231 ++++++++++++++++++ proto/cmp/types/v1alpha/service_fact.proto | 10 +- 10 files changed, 274 insertions(+), 67 deletions(-) delete mode 100644 proto/cmp/types/v1alpha/asset.proto create mode 100644 proto/cmp/types/v1alpha/price_type.proto diff --git a/proto/cmp/services/accommodation/v1alpha/search_parameters_types.proto b/proto/cmp/services/accommodation/v1alpha/search_parameters_types.proto index c98f480..98cce94 100644 --- a/proto/cmp/services/accommodation/v1alpha/search_parameters_types.proto +++ b/proto/cmp/services/accommodation/v1alpha/search_parameters_types.proto @@ -18,7 +18,7 @@ message AccommodationSearchParameters { // This "one of" field enforces only one of the fields below. They all share // memory, setting one will remove the others. oneof geo_location { - // FIXME: Do we need a list of location code here? Other fields are not lists. + // A list of location codes or just one code. cmp.types.v1alpha.LocationCodes location_codes = 1; // Single geographic point represented by two double fields. diff --git a/proto/cmp/services/activity/v1alpha/search_parameters_types.proto b/proto/cmp/services/activity/v1alpha/search_parameters_types.proto index 329f575..28c87a0 100644 --- a/proto/cmp/services/activity/v1alpha/search_parameters_types.proto +++ b/proto/cmp/services/activity/v1alpha/search_parameters_types.proto @@ -33,7 +33,7 @@ message ActivitySearchParameters { // like "Windsurfing" and "Kitesurfing" under "Salou Playa Llarga". // Code and description match the information provided in the ProductList and // ProductInfo message. These are in general also supplier specific. - repeated string unit_id = 4; + repeated string unit_codes = 4; // Specify one or more service codes to be included in the search response // Several different packages could be included like "Windsurfing" with or without diff --git a/proto/cmp/services/network/v1alpha/fee.proto b/proto/cmp/services/network/v1alpha/fee.proto index eb42db3..47056ea 100644 --- a/proto/cmp/services/network/v1alpha/fee.proto +++ b/proto/cmp/services/network/v1alpha/fee.proto @@ -2,8 +2,6 @@ syntax = "proto3"; package cmp.services.network.v1alpha; -import "cmp/types/v1alpha/asset.proto"; - // ### Network Fee Message Type // // ![Diagram](https://storage.googleapis.com/docs-cmp-files/diagrams/proto/cmp/services/network/v1alpha/fee.proto.dot.xs.svg) @@ -11,13 +9,8 @@ import "cmp/types/v1alpha/asset.proto"; message NetworkFee { // Network fee, unit is nCAM // 1 CAM == 1 000 000 000 nCAM + // TODO: explain in more detail when we have defined the CAM denominator on the T-Chain int32 amount = 1; - - // Asset of the fee - // - // FIXME: Not sure if we need this. For CAM it's a well known asset on the chain - // but maybe we'll need other assets also? - cmp.types.v1alpha.Asset asset = 2; } message GetNetworkFeeRequest { diff --git a/proto/cmp/types/v1alpha/asset.proto b/proto/cmp/types/v1alpha/asset.proto deleted file mode 100644 index fc3c84a..0000000 --- a/proto/cmp/types/v1alpha/asset.proto +++ /dev/null @@ -1,14 +0,0 @@ -syntax = "proto3"; - -package cmp.types.v1alpha; - -// An on-chain asset on the Camino Network -// -// ![Diagram](https://storage.googleapis.com/docs-cmp-files/diagrams/proto/cmp/types/v1alpha/asset.proto.dot.xs.svg) -// [Open Message Diagram](https://storage.googleapis.com/docs-cmp-files/diagrams/proto/cmp/types/v1alpha/asset.proto.dot.svg) -message Asset { - string asset_id = 1; - string name = 2; - string symbol = 3; - uint32 decimals = 4; -} diff --git a/proto/cmp/types/v1alpha/common.proto b/proto/cmp/types/v1alpha/common.proto index 6dbcb19..bf5b246 100644 --- a/proto/cmp/types/v1alpha/common.proto +++ b/proto/cmp/types/v1alpha/common.proto @@ -25,7 +25,7 @@ syntax = "proto3"; // Protobuf keeps the **order of the values inside a repeated field**. Conclusively if // you specify for example in a transport message trips travelling 1 June DUS-NYC, // travelling 15 June LAS->LAX, travelling 15 June LAX->LAS, returning NYC->DUS, by specifying -// the reips in this order it is defined that the trip in the middle is a same day return +// the trips in this order it is defined that the trip in the middle is a same day return // LAS to LAX and not LAX to LAS as then it should have been specified as travelling 15 June // LAX->LAS, travelling 15 June LAS->LAX. package cmp.types.v1alpha; diff --git a/proto/cmp/types/v1alpha/document.proto b/proto/cmp/types/v1alpha/document.proto index f939296..3d49a6c 100644 --- a/proto/cmp/types/v1alpha/document.proto +++ b/proto/cmp/types/v1alpha/document.proto @@ -12,29 +12,29 @@ message Document { } enum DocumentType { -DOCUMENT_TYPE_UNSPECIFIED = 0; -DOCUMENT_TYPE_VISA = 1; -DOCUMENT_TYPE_PASSPORT = 2; -DOCUMENT_TYPE_PASSPORT_CARD = 3; -DOCUMENT_TYPE_MILITARY_IDENTIFICATION = 4; -DOCUMENT_TYPE_DRIVERS_LICENSE = 5; -DOCUMENT_TYPE_NATIONAL_IDENTITY_DOCUMENT = 6; -DOCUMENT_TYPE_VACCINATION_CERTIFICATE = 7; -DOCUMENT_TYPE_ALIEN_REGISTRATION = 8; -DOCUMENT_TYPE_INSURANCE_POLICY = 9; -DOCUMENT_TYPE_TAX_REGISTRATION_EXEMPTION = 10; -DOCUMENT_TYPE_VEHICLE_REGISTRATION_LICENSE = 11; -DOCUMENT_TYPE_BORDER_CROSSING_CARD = 12; -DOCUMENT_TYPE_REFUGEE_TRAVEL_DOCUMENT = 13; -DOCUMENT_TYPE_PILOTS_LICENSE = 14; -DOCUMENT_TYPE_PERMANENT_RESIDENT_CARD = 15; -DOCUMENT_TYPE_REDRESS_NUMBER = 16; -DOCUMENT_TYPE_KNOWN_TRAVELER = 17; -DOCUMENT_TYPE_NON_STANDARD = 18; -DOCUMENT_TYPE_MERCHANT_MARINER = 19; -DOCUMENT_TYPE_AIR_NEXUS_CARD = 20; -DOCUMENT_TYPE_CREW_MEMBER_CERTIFICATE = 21; -DOCUMENT_TYPE_NATURALIZATION_CERTIFICATE = 22; -DOCUMENT_TYPE_CPF = 23; -DOCUMENT_TYPE_CEDULA = 24; + DOCUMENT_TYPE_UNSPECIFIED = 0; + DOCUMENT_TYPE_VISA = 1; + DOCUMENT_TYPE_PASSPORT = 2; + DOCUMENT_TYPE_PASSPORT_CARD = 3; + DOCUMENT_TYPE_MILITARY_IDENTIFICATION = 4; + DOCUMENT_TYPE_DRIVERS_LICENSE = 5; + DOCUMENT_TYPE_NATIONAL_IDENTITY_DOCUMENT = 6; + DOCUMENT_TYPE_VACCINATION_CERTIFICATE = 7; + DOCUMENT_TYPE_ALIEN_REGISTRATION = 8; + DOCUMENT_TYPE_INSURANCE_POLICY = 9; + DOCUMENT_TYPE_TAX_REGISTRATION_EXEMPTION = 10; + DOCUMENT_TYPE_VEHICLE_REGISTRATION_LICENSE = 11; + DOCUMENT_TYPE_BORDER_CROSSING_CARD = 12; + DOCUMENT_TYPE_REFUGEE_TRAVEL_DOCUMENT = 13; + DOCUMENT_TYPE_PILOTS_LICENSE = 14; + DOCUMENT_TYPE_PERMANENT_RESIDENT_CARD = 15; + DOCUMENT_TYPE_REDRESS_NUMBER = 16; + DOCUMENT_TYPE_KNOWN_TRAVELER = 17; + DOCUMENT_TYPE_NON_STANDARD = 18; + DOCUMENT_TYPE_MERCHANT_MARINER = 19; + DOCUMENT_TYPE_AIR_NEXUS_CARD = 20; + DOCUMENT_TYPE_CREW_MEMBER_CERTIFICATE = 21; + DOCUMENT_TYPE_NATURALIZATION_CERTIFICATE = 22; + DOCUMENT_TYPE_CPF = 23; + DOCUMENT_TYPE_CEDULA = 24; } diff --git a/proto/cmp/types/v1alpha/partner.proto b/proto/cmp/types/v1alpha/partner.proto index d556452..fbb9d90 100644 --- a/proto/cmp/types/v1alpha/partner.proto +++ b/proto/cmp/types/v1alpha/partner.proto @@ -37,10 +37,7 @@ message Partner { // On chain payment support bool on_chain_payment_supported = 5; - // Supported tokens for payment on-chain - // - // Note: Type of this field will depend on the T-Chain implementation If we go - // with X-Chain like (assets) we may need to switch to `Asset` type. + // Supported tokens for payment (on-chain) repeated Currency supported_currencies = 6; // Off chain payment support diff --git a/proto/cmp/types/v1alpha/price.proto b/proto/cmp/types/v1alpha/price.proto index f5c74c6..97f31f9 100644 --- a/proto/cmp/types/v1alpha/price.proto +++ b/proto/cmp/types/v1alpha/price.proto @@ -3,6 +3,7 @@ syntax = "proto3"; package cmp.types.v1alpha; import "cmp/types/v1alpha/currency.proto"; +import "cmp/types/v1alpha/price_type.proto"; // ### PriceDetail // @@ -15,7 +16,7 @@ import "cmp/types/v1alpha/currency.proto"; // ![Diagram](https://storage.googleapis.com/docs-cmp-files/diagrams/proto/cmp/types/v1alpha/price.proto.dot.xs.svg) // [Open Message Diagram](https://storage.googleapis.com/docs-cmp-files/diagrams/proto/cmp/types/v1alpha/price.proto.dot.svg) message PriceDetail { - // Principle price element + // Principle price element Price price = 1; // Identification whether the price must be respected towards the end-user @@ -31,11 +32,8 @@ message PriceDetail { // a hotel. Intended to be used in the breakdown. bool locally_payable = 4; - // Type of price - string type = 5; - - // Type code of the price - string type_code = 6; + // Type of price and price code + PriceTypeCode price_type_code =5; // We can use a single PriceDetail to represent a price breakdown. repeated PriceDetail breakdown = 7; @@ -77,7 +75,7 @@ message PriceDetail { // 0.000000001 CAM and minted in its smallest fraction by multiplying 0.000000001 * // 10^18 => 1000000000 aCAM message Price { - string value = 1; - int32 decimals = 2; - Currency currency =3; + string value = 1; + int32 decimals = 2; + Currency currency = 3; } diff --git a/proto/cmp/types/v1alpha/price_type.proto b/proto/cmp/types/v1alpha/price_type.proto new file mode 100644 index 0000000..02d7f38 --- /dev/null +++ b/proto/cmp/types/v1alpha/price_type.proto @@ -0,0 +1,231 @@ +syntax = "proto3"; + +package cmp.types.v1alpha; + + +message PriceTypeCode { + // Type code of the price + string type_code = 1; + + // A price type can be a type of service or produc delivered or form part of the fee or tax breakdown + oneof type{ + PriceType price_type = 2; + TaxCode tax_code = 3; + FeeCode fee_code = 4; + } + +enum PriceType{ + PRICE_TYPE_UNSPECIFIED = 0; + PRICE_TYPE_BASE_RATE = 1; + PRICE_TYPE_OVERRIDE = 2; + PRICE_TYPE_RATE = 3; + PRICE_TYPE_FARE = 4; + PRICE_TYPE_EXTRA_PASSENGER = 5; + PRICE_TYPE_UNIT = 6; + PRICE_TYPE_SERVICE = 7; + PRICE_TYPE_SUB_SERVICE = 8; + PRICE_TYPE_OFFER = 9; + PRICE_TYPE_DISCOUNT = 10; + PRICE_TYPE_EXTRA = 11; +} + +enum TaxCode{ + TAX_CODE_UNSPECIFIED = 0; + TAX_CODE_ASSESSMENT_TAX = 1; + TAX_CODE_LICENSE_TAX = 2; + TAX_CODE_BED_TAX = 3; + TAX_CODE_CHILD_ROLLAWAY_CHARGE = 4; + TAX_CODE_CITY_TAX = 5; + TAX_CODE_CONVENTION_TAX = 6; + TAX_CODE_COUNTRY_TAX = 7; + TAX_CODE_COUNTY_TAX = 8; + TAX_CODE_DEPARTURE_TAX = 9; + TAX_CODE_ENERGY_TAX = 10; + TAX_CODE_FEDERAL_TAX = 11; + TAX_CODE_FOOD_AND_BEVERAGE_TAX = 12; + TAX_CODE_FOOD_TAX = 13; + TAX_CODE_GENERAL_EXCISE_TAX = 14; + TAX_CODE_GOODS_AND_SERVICES_TAX = 15; + TAX_CODE_INSURANCE_PREMIUM_TAX = 16; + TAX_CODE_INTERNATIONAL_TAX = 17; + TAX_CODE_LESSOR_TAX = 18; + TAX_CODE_LODGING_TAX = 19; + TAX_CODE_NATIONAL_GOVERNMENT_TAX = 20; + TAX_CODE_OCCUPANCY_TAX = 21; + TAX_CODE_ROOM_TAX = 22; + TAX_CODE_SALES_TAX = 23; + TAX_CODE_STANDARD_TAX = 24; + TAX_CODE_STATE_TAX = 25; + TAX_CODE_SURPLUS_LINES_TAX = 26; + TAX_CODE_TAX_EXEMPT = 27; + TAX_CODE_TOBACCO_TAX = 28; + TAX_CODE_TOTAL_TAX = 29; + TAX_CODE_TOURISM_TAX = 30; + TAX_CODE_VALUE_ADDED_TAX = 31; + TAX_CODE_ZERO_RATED_TAX = 32; +} + +enum FeeCode{ + FEE_CODE_UNSPECIFIED = 0; + FEE_CODE_ADDITIONAL_DAY = 1; + FEE_CODE_ADDITIONAL_DISTANCE = 2; + FEE_CODE_ADDITIONAL_DRIVE = 3; + FEE_CODE_ADDITIONAL_DRIVER_FEE = 4; + FEE_CODE_ADDITIONAL_HOUR = 5; + FEE_CODE_ADDITIONAL_WEEK = 6; + FEE_CODE_ADDL_DEVIATION_SVC_CHARGE = 7; + FEE_CODE_ADJUSTMENT = 8; + FEE_CODE_ADMINISTRATION_FEE = 9; + FEE_CODE_ADULT_ROLLAWAY_FEE = 10; + FEE_CODE_AGE_DIFFERENTIAL = 11; + FEE_CODE_AIR_CANCEL_CHARGE = 12; + FEE_CODE_AIR_CONDITIONING_SURCHARGE = 13; + FEE_CODE_AIR_DEPOSIT_CHARGE = 14; + FEE_CODE_AIR_TICKET_CHARGE = 15; + FEE_CODE_AIRPORT_ACCESS_FEE = 16; + FEE_CODE_AIRPORT_CONCESSION_FEE_RECOVERY = 17; + FEE_CODE_AIRPORT_CONSTRUCTION_FEE = 18; + FEE_CODE_AIRPORT_CONTRACT_FEE = 19; + FEE_CODE_AIRPORT_FEE = 20; + FEE_CODE_AIRPORT_SURCHARGE = 21; + FEE_CODE_AMENDMENT_FEE = 22; + FEE_CODE_APPLICATION_FEE = 23; + FEE_CODE_AUTO_EXCISE = 24; + FEE_CODE_AV_SUPPLY_FEE = 25; + FEE_CODE_BANQUET_SERVICE_FEE = 26; + FEE_CODE_BOOKING_FEE = 27; + FEE_CODE_BORDER_CROSSING_FEE = 28; + FEE_CODE_CANCELLATION_FEE = 29; + FEE_CODE_CANCELLATION_FEES = 30; + FEE_CODE_CAR_SEAT_FEE = 31; + FEE_CODE_CARBON_OFFSET = 32; + FEE_CODE_CHARITY_SUPPORT_FEE = 33; + FEE_CODE_CITY_HOTEL_FEE = 34; + FEE_CODE_CITY_MITIGATION_FEE = 35; + FEE_CODE_CITY_PROJECT_FUND = 36; + FEE_CODE_CLEANING_FEE = 37; + FEE_CODE_CONCESSION_FEE = 38; + FEE_CODE_CONCESSION_RECOVERY_FEE = 39; + FEE_CODE_CONTRACT_FEE = 40; + FEE_CODE_CONVENTION_FEE = 41; + FEE_CODE_TOURISM_FEE = 42; + FEE_CODE_COUNTY_LICENSE_FEE = 43; + FEE_CODE_COUNTY_SURCHARGE = 44; + FEE_CODE_COUNTY_TAX = 45; + FEE_CODE_COVERAGE = 46; + FEE_CODE_CRIB_FEE = 47; + FEE_CODE_CRUISE_CANCEL_FEE = 48; + FEE_CODE_CUSTOMER_DROP_OFF = 49; + FEE_CODE_CUSTOMER_FACILITY_CHARGE = 50; + FEE_CODE_CUSTOMER_PICKUP = 51; + FEE_CODE_DEPARTURE_TAX_FEES = 52; + FEE_CODE_DESTINATION_AMENITY_FEE = 53; + FEE_CODE_DESTINATION_MARKETING_FEE = 54; + FEE_CODE_DISCOUNT = 55; + FEE_CODE_DOCUMENT_REISSUE_FEE = 56; + FEE_CODE_DROP = 57; + FEE_CODE_EARLY_AM_FEE = 58; + FEE_CODE_EARLY_CHECKOUT_FEE = 59; + FEE_CODE_ENERGY_SURCHARGE = 60; + FEE_CODE_ENVIRONMENTAL_SURCHARGE = 61; + FEE_CODE_EQUIPMENT = 62; + FEE_CODE_EVENT_FEE = 63; + FEE_CODE_EXPRESS_HANDLING_FEE = 64; + FEE_CODE_EXTRA_CHILD_CHARGE = 65; + FEE_CODE_EXTRA_PERSON_CHARGE = 66; + FEE_CODE_FACILITY_FEE = 67; + FEE_CODE_FEE = 68; + FEE_CODE_FUEL = 69; + FEE_CODE_FUEL_COST_PRICE_INCREASE = 70; + FEE_CODE_FUEL_SURCHARGE = 71; + FEE_CODE_GENERAL_EXCISE_TAX = 72; + FEE_CODE_GOODS_AND_SERVICE_FEE = 73; + FEE_CODE_GOVERNMENT_RATE_SUPPLEMENT = 74; + FEE_CODE_GOVERNMENT_RENTAL_SURCHARGE = 75; + FEE_CODE_GREENS_FEES = 76; + FEE_CODE_GROSS_RECEIPTS_FEE = 77; + FEE_CODE_GUEST_PC_FEE = 78; + FEE_CODE_HIGH_SEASON_SURCHARGE = 79; + FEE_CODE_HIGHWAY_USE_CHARGE = 80; + FEE_CODE_HOLIDAY_SURCHARGE = 81; + FEE_CODE_HOTEL_DEVELOPMENT_FEE = 82; + FEE_CODE_CHILD_RESTRAINT_DEVICE_SURCHARGE = 83; + FEE_CODE_INSURANCE_CANCEL_CHARGE = 84; + FEE_CODE_INSURANCE_FEE = 85; + FEE_CODE_LATE_PM_FEE = 86; + FEE_CODE_LICENSE_RECOUPMENT_FEE = 87; + FEE_CODE_LOCAL_AMENITY_USAGE_FEE = 88; + FEE_CODE_MAINTAINENCE_FEE = 89; + FEE_CODE_LOCAL_FEE = 90; + FEE_CODE_LOCAL_GOVERNMENT_FEE = 91; + FEE_CODE_LOCAL_ORDINANCE_SURCHARGE = 92; + FEE_CODE_LOCATION_CUSTOMER_FEE = 93; + FEE_CODE_MAINTENANCE_FACILITY_FEE = 94; + FEE_CODE_MAINTENANCE_FEE = 95; + FEE_CODE_MANDATORY_CHARGES_TOTAL = 96; + FEE_CODE_MISCELLANEOUS_FEE = 97; + FEE_CODE_MITIGATION_FEE = 98; + FEE_CODE_MOTOR_VEHICLE_CHARGE = 99; + FEE_CODE_NAME_CHANGE_FEE = 100; + FEE_CODE_OPTIONAL = 101; + FEE_CODE_OUT_OF_HOURS_FEE = 102; + FEE_CODE_PACKAGE_CANCEL_CHARGE = 103; + FEE_CODE_PACKAGE_FEE = 104; + FEE_CODE_PARKING_FEE = 105; + FEE_CODE_PASSENGER_SERVICES_FEE = 106; + FEE_CODE_PAY_ON_ARRIVAL_AMOUNT = 107; + FEE_CODE_PC_FEE = 108; + FEE_CODE_PENALTY_FEE = 109; + FEE_CODE_PET_SANITATION_FEE = 110; + FEE_CODE_PET_SURCHARGE = 111; + FEE_CODE_PREMIUM_LOCATION_SURCHARGE = 112; + FEE_CODE_PREPAID_FUEL = 113; + FEE_CODE_PREPAY_AMOUNT = 114; + FEE_CODE_PTA_SERVICE_CHARGE = 115; + FEE_CODE_REFUELING_SURCHARGE = 116; + FEE_CODE_REFUNDABLE_PET_FEE = 117; + FEE_CODE_REGISTRATION_FEE = 118; + FEE_CODE_REIMBURSEMENT_FEE = 119; + FEE_CODE_RESORT_FEE = 120; + FEE_CODE_ROAD_SAFETY_PROGRAM_FEE = 121; + FEE_CODE_ROAD_USAGE_SURCHARGE = 122; + FEE_CODE_ROLLAWAY_FEE = 123; + FEE_CODE_ROOM_SERVICE_FEE = 124; + FEE_CODE_SCREEN_FEE = 125; + FEE_CODE_SECURITY_FEE = 126; + FEE_CODE_SENIOR = 127; + FEE_CODE_SERVICE_CHARGE = 128; + FEE_CODE_SERVICE_FEE = 129; + FEE_CODE_SHORE_EXCURSION_FEE = 130; + FEE_CODE_STANDARD_FOOD_AND_BEVERAGE_GRATUITY = 131; + FEE_CODE_STATE_COST_RECOVERY_FEE = 132; + FEE_CODE_STATE_RENTAL_FEE = 133; + FEE_CODE_STATE_SURCHARGE = 134; + FEE_CODE_STATE_TOURISM_FUND = 135; + FEE_CODE_SUBTOTAL = 136; + FEE_CODE_SURCHARGE = 137; + FEE_CODE_SURFACE_TRANSPORTATION_CHARGE = 138; + FEE_CODE_SUSTAINABILITY_FEE = 139; + FEE_CODE_TAX = 140; + FEE_CODE_TICKETING_FEE = 141; + FEE_CODE_TIRE_AND_BATTERY_FEE = 142; + FEE_CODE_TIRE_MANAGEMENT_FEE = 143; + FEE_CODE_TOTAL_SURCHARGES = 144; + FEE_CODE_TOURISM_CHARGE = 145; + FEE_CODE_TRANSACTION_FEE = 146; + FEE_CODE_TRANSPORTATION_FEE = 147; + FEE_CODE_TRANSFER_FEE = 148; + FEE_CODE_TRAVEL_TIME_FEE = 149; + FEE_CODE_U_DRIVE_IT_FEE = 150; + FEE_CODE_VALIDATING_CARRIER_FEE = 151; + FEE_CODE_VEHICLE_COLLECTION = 152; + FEE_CODE_VEHICLE_DELIVERY = 153; + FEE_CODE_VEHICLE_LICENSE_FEE = 154; + FEE_CODE_VEHICLE_MAINTENANCE_FEE = 155; + FEE_CODE_VEHICLE_RENTAL = 156; + FEE_CODE_WINTER_SERVICE_CHARGE = 157; + FEE_CODE_YOUNG_DRIVER = 158; + FEE_CODE_YOUNGER_DRIVER = 159; +} +} + diff --git a/proto/cmp/types/v1alpha/service_fact.proto b/proto/cmp/types/v1alpha/service_fact.proto index 92343e6..aed22de 100644 --- a/proto/cmp/types/v1alpha/service_fact.proto +++ b/proto/cmp/types/v1alpha/service_fact.proto @@ -22,8 +22,8 @@ import "cmp/types/v1alpha/price.proto"; message ServiceFact { // A code for the specific service, when a service is optional, this code is - // referenced in the booking so that the optional service will be added to the - // booking. + // referenced in the validate request, so that the optional service will be added + // to the booking. string code = 1; // A description of the service like "business class", "shuttle transfer", "early @@ -52,8 +52,10 @@ message ServiceFact { // priority boarding, which also allows for a larger carry-on bag. repeated ServiceFact details = 6; - // the count of the number of services required - int32 count = 7; + // the count of the number of services. In case the service requires specification + // of the number or frequency of the products that will be included. For example + // "bouquet of roses, qty=24" or "baggage qty=2". + int32 quantity = 7; } enum ServiceAvailabilityType {