Skip to content

Latest commit

 

History

History
98 lines (53 loc) · 6.76 KB

File metadata and controls

98 lines (53 loc) · 6.76 KB

JobRelation

Properties

Name Type Description Notes
Type string Specifies the type of relation. It must be either of type `in_same_route`, `in_sequence` or `in_direct_sequence`. `in_same_route`: As the name suggest, it enforces the specified services or shipments to be in the same route. It can be specified as follows: ```json { "type": "in_same_route", "ids": ["serv_i_id","serv_j_id"] } ``` This enforces service i to be in the same route as service j no matter which vehicle will be employed. If a specific vehicle (driver) is required to conduct this, just add a `vehicle_id` like this: ``` { "type": "in_same_route", "ids": ["serv_i_id","serv_j_id"], "vehicle_id": "vehicle1" } ``` This not only enforce service i and j to be in the same route, but also makes sure that both services are in the route of `vehicle1`. Tip: This way initial loads and vehicle routes can be modelled. For example, if your vehicles are already on the road and new orders come in, then vehicles can still be rescheduled subject to the orders that have already been assigned to these vehicles. `in_sequence`: This relation type enforces n jobs to be in sequence. It can be specified as ```json { "type": "in_sequence", "ids": ["serv_i_id","serv_j_id"] } ``` which means that service j need to be in the same route as service i AND it needs to occur somewhere after service i. As described above if a specific vehicle needs to conduct this, just add `vehicle_id`. `in_direct_sequence`: This enforces n services or shipments to be in direct sequence. It can be specified as ```json { "type": "in_direct_sequence", "ids": ["serv_i_id","serv_j_id","serv_k_id"] } ``` yielding service j to occur directly after service i, and service k to occur directly after service j i.e. in strong order. Again, a vehicle can be assigned a priority by adding a `vehicle_id` to the relation. Special IDs: If you look at the previous example and you want service i to be the first in the route, use the special ID `start` as follows: ```json { "type": "in_direct_sequence", "ids": ["start","serv_i_id","serv_j_id","serv_k_id"] } ``` Latter enforces the direct sequence of i, j and k at the beginning of the route. If this sequence should be bound to the end of the route, use the special ID `end` like this: ```json { "type": "in_direct_sequence", "ids": ["serv_i_id","service_j_id","serv_k_id","end"] } ``` If you deal with services then you need to use the 'id' of your services in the field 'ids'. To also consider sequences of the pickups and deliveries of your shipments, you need to use a special ID, i.e. use the shipment id plus the keyword `_pickup` or `_delivery`. For example, to ensure that the pickup and delivery of the shipment with the id 'my_shipment' are direct neighbors, you need the following specification: ``` { "type": "in_direct_sequence", "ids": ["my_ship_pickup","my_ship_delivery"] } ```
Ids []string Specifies an array of shipment and/or service ids that are in relation. If you deal with services then you need to use the id of your services in ids. To also consider sequences of the pickups and deliveries of your shipments, you need to use a special ID, i.e. use your shipment id plus the keyword `_pickup` or `_delivery`. If you want to place a service or shipment activity at the beginning of your route, use the special ID `start`. In turn, use `end` to place it at the end of the route.
VehicleId Pointer to string Id of pre-assigned vehicle, i.e. the vehicle id that is determined to conduct the services and shipments in this relation. [optional]

Methods

NewJobRelation

func NewJobRelation(type_ string, ids []string, ) *JobRelation

NewJobRelation instantiates a new JobRelation object This constructor will assign default values to properties that have it defined, and makes sure properties required by API are set, but the set of arguments will change when the set of required properties is changed

NewJobRelationWithDefaults

func NewJobRelationWithDefaults() *JobRelation

NewJobRelationWithDefaults instantiates a new JobRelation object This constructor will only assign default values to properties that have it defined, but it doesn't guarantee that properties required by API are set

GetType

func (o *JobRelation) GetType() string

GetType returns the Type field if non-nil, zero value otherwise.

GetTypeOk

func (o *JobRelation) GetTypeOk() (*string, bool)

GetTypeOk returns a tuple with the Type field if it's non-nil, zero value otherwise and a boolean to check if the value has been set.

SetType

func (o *JobRelation) SetType(v string)

SetType sets Type field to given value.

GetIds

func (o *JobRelation) GetIds() []string

GetIds returns the Ids field if non-nil, zero value otherwise.

GetIdsOk

func (o *JobRelation) GetIdsOk() (*[]string, bool)

GetIdsOk returns a tuple with the Ids field if it's non-nil, zero value otherwise and a boolean to check if the value has been set.

SetIds

func (o *JobRelation) SetIds(v []string)

SetIds sets Ids field to given value.

GetVehicleId

func (o *JobRelation) GetVehicleId() string

GetVehicleId returns the VehicleId field if non-nil, zero value otherwise.

GetVehicleIdOk

func (o *JobRelation) GetVehicleIdOk() (*string, bool)

GetVehicleIdOk returns a tuple with the VehicleId field if it's non-nil, zero value otherwise and a boolean to check if the value has been set.

SetVehicleId

func (o *JobRelation) SetVehicleId(v string)

SetVehicleId sets VehicleId field to given value.

HasVehicleId

func (o *JobRelation) HasVehicleId() bool

HasVehicleId returns a boolean if a field has been set.

[Back to Model list] [Back to API list] [Back to README]