Class: Google::Cloud::Optimization::V1::ShipmentTypeRequirement

Inherits:
Object
  • Object
show all
Extended by:
Protobuf::MessageExts::ClassMethods
Includes:
Protobuf::MessageExts
Defined in:
proto_docs/google/cloud/optimization/v1/fleet_routing.rb

Overview

Specifies requirements between shipments based on their shipment_type. The specifics of the requirement are defined by the requirement mode.

Defined Under Namespace

Modules: RequirementMode

Instance Attribute Summary collapse

Instance Attribute Details

#dependent_shipment_types::Array<::String>

Returns All shipments with a type in the dependent_shipment_types field require at least one shipment of type required_shipment_type_alternatives to be visited on the same route.

NOTE: Chains of requirements such that a shipment_type depends on itself are not allowed.

Returns:

  • (::Array<::String>)

    All shipments with a type in the dependent_shipment_types field require at least one shipment of type required_shipment_type_alternatives to be visited on the same route.

    NOTE: Chains of requirements such that a shipment_type depends on itself are not allowed.



1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
# File 'proto_docs/google/cloud/optimization/v1/fleet_routing.rb', line 1092

class ShipmentTypeRequirement
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Modes defining the appearance of dependent shipments on a route.
  module RequirementMode
    # Unspecified requirement mode. This value should never be used.
    REQUIREMENT_MODE_UNSPECIFIED = 0

    # In this mode, all "dependent" shipments must share the same vehicle as at
    # least one of their "required" shipments.
    PERFORMED_BY_SAME_VEHICLE = 1

    # With the `IN_SAME_VEHICLE_AT_PICKUP_TIME` mode, all "dependent"
    # shipments need to have at least one "required" shipment on their vehicle
    # at the time of their pickup.
    #
    # A "dependent" shipment pickup must therefore have either:
    #
    # * A delivery-only "required" shipment delivered on the route after, or
    # * A "required" shipment picked up on the route before it, and if the
    #   "required" shipment has a delivery, this delivery must be performed
    #   after the "dependent" shipment's pickup.
    IN_SAME_VEHICLE_AT_PICKUP_TIME = 2

    # Same as before, except the "dependent" shipments need to have a
    # "required" shipment on their vehicle at the time of their *delivery*.
    IN_SAME_VEHICLE_AT_DELIVERY_TIME = 3
  end
end

#required_shipment_type_alternatives::Array<::String>

Returns List of alternative shipment types required by the dependent_shipment_types.

Returns:

  • (::Array<::String>)

    List of alternative shipment types required by the dependent_shipment_types.



1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
# File 'proto_docs/google/cloud/optimization/v1/fleet_routing.rb', line 1092

class ShipmentTypeRequirement
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Modes defining the appearance of dependent shipments on a route.
  module RequirementMode
    # Unspecified requirement mode. This value should never be used.
    REQUIREMENT_MODE_UNSPECIFIED = 0

    # In this mode, all "dependent" shipments must share the same vehicle as at
    # least one of their "required" shipments.
    PERFORMED_BY_SAME_VEHICLE = 1

    # With the `IN_SAME_VEHICLE_AT_PICKUP_TIME` mode, all "dependent"
    # shipments need to have at least one "required" shipment on their vehicle
    # at the time of their pickup.
    #
    # A "dependent" shipment pickup must therefore have either:
    #
    # * A delivery-only "required" shipment delivered on the route after, or
    # * A "required" shipment picked up on the route before it, and if the
    #   "required" shipment has a delivery, this delivery must be performed
    #   after the "dependent" shipment's pickup.
    IN_SAME_VEHICLE_AT_PICKUP_TIME = 2

    # Same as before, except the "dependent" shipments need to have a
    # "required" shipment on their vehicle at the time of their *delivery*.
    IN_SAME_VEHICLE_AT_DELIVERY_TIME = 3
  end
end

#requirement_mode::Google::Cloud::Optimization::V1::ShipmentTypeRequirement::RequirementMode

Returns Mode applied to the requirement.

Returns:



1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
# File 'proto_docs/google/cloud/optimization/v1/fleet_routing.rb', line 1092

class ShipmentTypeRequirement
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Modes defining the appearance of dependent shipments on a route.
  module RequirementMode
    # Unspecified requirement mode. This value should never be used.
    REQUIREMENT_MODE_UNSPECIFIED = 0

    # In this mode, all "dependent" shipments must share the same vehicle as at
    # least one of their "required" shipments.
    PERFORMED_BY_SAME_VEHICLE = 1

    # With the `IN_SAME_VEHICLE_AT_PICKUP_TIME` mode, all "dependent"
    # shipments need to have at least one "required" shipment on their vehicle
    # at the time of their pickup.
    #
    # A "dependent" shipment pickup must therefore have either:
    #
    # * A delivery-only "required" shipment delivered on the route after, or
    # * A "required" shipment picked up on the route before it, and if the
    #   "required" shipment has a delivery, this delivery must be performed
    #   after the "dependent" shipment's pickup.
    IN_SAME_VEHICLE_AT_PICKUP_TIME = 2

    # Same as before, except the "dependent" shipments need to have a
    # "required" shipment on their vehicle at the time of their *delivery*.
    IN_SAME_VEHICLE_AT_DELIVERY_TIME = 3
  end
end