| POST,OPTIONS | /v1/worker/dispatch/od/{Code}/arrive |
|---|
import java.math.*
import java.util.*
import java.io.InputStream
import net.servicestack.client.*
open class CourierArriveRequest
{
open var Code:String? = null
open var Lat:BigDecimal? = null
open var Lng:BigDecimal? = null
}
open class CourierDriverResponse
{
open var Courier:CourierDriverView? = null
open var Result:String? = null
open var Detail:String? = null
open var Message:String? = null
open var ResponseStatus:ResponseStatus? = null
}
open class CourierDriverView
{
open var DriverCode:String? = null
open var Name:String? = null
open var Online:Boolean? = null
open var OnRoster:Boolean? = null
open var Van:CourierVanView? = null
open var Current:CourierDriverOrder? = null
open var Queue:ArrayList<CourierDriverOrder> = ArrayList<CourierDriverOrder>()
open var Aboard:ArrayList<CourierDriverOrder> = ArrayList<CourierDriverOrder>()
open var Runs:ArrayList<CourierRunView> = ArrayList<CourierRunView>()
open var UpNext:CourierDriverOrder? = null
}
open class CourierVanView
{
open var State:String? = null
open var LeaveByUtc:Date? = null
open var LeaveByText:String? = null
open var SlackMin:Int? = null
open var InVan:Int? = null
open var Committed:Int? = null
open var Cap:BigDecimal? = null
open var CapUnit:String? = null
open var VehicleUnit:String? = null
open var CriticalCode:String? = null
open var DriveMin:Int? = null
open var FacilityName:String? = null
open var SendNote:String? = null
}
open class CourierDriverOrder
{
open var Code:String? = null
open var CourierStep:String? = null
open var RouteShape:String? = null
open var ProfileName:String? = null
open var UnitOne:String? = null
open var UnitMany:String? = null
open var FacilityNoun:String? = null
open var FacilityName:String? = null
open var LevelName:String? = null
open var DueUtc:Date? = null
open var DueText:String? = null
open var Units:Int? = null
open var UnitsFound:Int? = null
open var Area:String? = null
open var Minutes:Int? = null
open var Address:String? = null
open var Unit:String? = null
open var City:String? = null
open var Lat:BigDecimal? = null
open var Lng:BigDecimal? = null
open var CustomerName:String? = null
open var CustomerPhone:String? = null
open var Handoff:String? = null
open var GateCode:String? = null
open var Instructions:String? = null
open var DropoffAddress:String? = null
open var DropoffContactName:String? = null
open var DropLat:BigDecimal? = null
open var DropLng:BigDecimal? = null
open var ArrivedUtc:Date? = null
open var Tags:ArrayList<CourierItemView> = ArrayList<CourierItemView>()
open var Proof:HashMap<String,String> = HashMap<String,String>()
open var Photos:HashMap<String,Int> = HashMap<String,Int>()
open var Needs:ArrayList<String> = ArrayList<String>()
open var MissedWaitMin:Int? = null
open var MissedRequireContact:Boolean? = null
open var MissedRequirePhoto:Boolean? = null
open var MissedFee:BigDecimal? = null
}
open class CourierItemView
{
open var CourierItemID:Int? = null
open var DispatchOdRequestID:Int? = null
open var Seq:Int? = null
open var TagCode:String? = null
open var Custody:String? = null
open var IsOpen:Boolean? = null
open var IsMissing:Boolean? = null
open var MissingReason:String? = null
open var IsManual:Boolean? = null
open var ReTagFlag:Boolean? = null
open var Scanned:Boolean? = null
}
open class CourierRunView
{
open var CourierRunID:Int? = null
open var Code:String? = null
open var Status:String? = null
open var CourierProfileId:Int? = null
open var ProfileName:String? = null
open var CourierFacilityId:Int? = null
open var FacilityName:String? = null
open var FacilityAddress:String? = null
open var DriverContactId:Int? = null
open var DriverName:String? = null
open var EquipmentID:Int? = null
open var VehicleUnit:String? = null
open var UnitOne:String? = null
open var UnitMany:String? = null
open var Units:Int? = null
open var StopCount:Int? = null
open var StopsDone:Int? = null
open var Pay:BigDecimal? = null
open var BuiltUtc:Date? = null
open var StartedUtc:Date? = null
open var CompletedUtc:Date? = null
open var ToLoad:Int? = null
open var ToReturn:Int? = null
open var Stops:ArrayList<CourierStopView> = ArrayList<CourierStopView>()
}
open class CourierStopView
{
open var Sequence:Int? = null
open var Status:String? = null
open var DispatchOdRequestID:Int? = null
open var Code:String? = null
open var CourierStep:String? = null
open var Address:String? = null
open var Unit:String? = null
open var City:String? = null
open var Zip:String? = null
open var Lat:BigDecimal? = null
open var Lng:BigDecimal? = null
open var CustomerName:String? = null
open var CustomerPhone:String? = null
open var Handoff:String? = null
open var GateCode:String? = null
open var Instructions:String? = null
open var Units:Int? = null
open var DueText:String? = null
open var Note:String? = null
open var Needs:ArrayList<String> = ArrayList<String>()
open var Items:ArrayList<CourierItemView> = ArrayList<CourierItemView>()
}
Kotlin CourierArriveRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /v1/worker/dispatch/od/{Code}/arrive HTTP/1.1
Host: api.dev.dynamics.trendsic.com
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
Code: String,
Lat: 0,
Lng: 0
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
Courier:
{
DriverCode: String,
Name: String,
Online: False,
OnRoster: False,
Van:
{
State: String,
LeaveByUtc: 0001-01-01,
LeaveByText: String,
SlackMin: 0,
InVan: 0,
Committed: 0,
Cap: 0,
CapUnit: String,
VehicleUnit: String,
CriticalCode: String,
DriveMin: 0,
FacilityName: String,
SendNote: String
},
Current:
{
Code: String,
CourierStep: String,
RouteShape: String,
ProfileName: String,
UnitOne: String,
UnitMany: String,
FacilityNoun: String,
FacilityName: String,
LevelName: String,
DueUtc: 0001-01-01,
DueText: String,
Units: 0,
UnitsFound: 0,
Area: String,
Minutes: 0,
Address: String,
Unit: String,
City: String,
Lat: 0,
Lng: 0,
CustomerName: String,
CustomerPhone: String,
Handoff: String,
GateCode: String,
Instructions: String,
DropoffAddress: String,
DropoffContactName: String,
DropLat: 0,
DropLng: 0,
ArrivedUtc: 0001-01-01,
Tags:
[
{
CourierItemID: 0,
DispatchOdRequestID: 0,
Seq: 0,
TagCode: String,
Custody: String,
IsOpen: False,
IsMissing: False,
MissingReason: String,
IsManual: False,
ReTagFlag: False,
Scanned: False
}
],
Proof:
{
String: String
},
Photos:
{
String: 0
},
Needs:
[
String
],
MissedWaitMin: 0,
MissedRequireContact: False,
MissedRequirePhoto: False,
MissedFee: 0
},
Queue:
[
{
Code: String,
CourierStep: String,
RouteShape: String,
ProfileName: String,
UnitOne: String,
UnitMany: String,
FacilityNoun: String,
FacilityName: String,
LevelName: String,
DueUtc: 0001-01-01,
DueText: String,
Units: 0,
UnitsFound: 0,
Area: String,
Minutes: 0,
Address: String,
Unit: String,
City: String,
Lat: 0,
Lng: 0,
CustomerName: String,
CustomerPhone: String,
Handoff: String,
GateCode: String,
Instructions: String,
DropoffAddress: String,
DropoffContactName: String,
DropLat: 0,
DropLng: 0,
ArrivedUtc: 0001-01-01,
Tags:
[
{
CourierItemID: 0,
DispatchOdRequestID: 0,
Seq: 0,
TagCode: String,
Custody: String,
IsOpen: False,
IsMissing: False,
MissingReason: String,
IsManual: False,
ReTagFlag: False,
Scanned: False
}
],
Proof:
{
String: String
},
Photos:
{
String: 0
},
Needs:
[
String
],
MissedWaitMin: 0,
MissedRequireContact: False,
MissedRequirePhoto: False,
MissedFee: 0
}
],
Aboard:
[
{
Code: String,
CourierStep: String,
RouteShape: String,
ProfileName: String,
UnitOne: String,
UnitMany: String,
FacilityNoun: String,
FacilityName: String,
LevelName: String,
DueUtc: 0001-01-01,
DueText: String,
Units: 0,
UnitsFound: 0,
Area: String,
Minutes: 0,
Address: String,
Unit: String,
City: String,
Lat: 0,
Lng: 0,
CustomerName: String,
CustomerPhone: String,
Handoff: String,
GateCode: String,
Instructions: String,
DropoffAddress: String,
DropoffContactName: String,
DropLat: 0,
DropLng: 0,
ArrivedUtc: 0001-01-01,
Tags:
[
{
CourierItemID: 0,
DispatchOdRequestID: 0,
Seq: 0,
TagCode: String,
Custody: String,
IsOpen: False,
IsMissing: False,
MissingReason: String,
IsManual: False,
ReTagFlag: False,
Scanned: False
}
],
Proof:
{
String: String
},
Photos:
{
String: 0
},
Needs:
[
String
],
MissedWaitMin: 0,
MissedRequireContact: False,
MissedRequirePhoto: False,
MissedFee: 0
}
],
Runs:
[
{
CourierRunID: 0,
Code: String,
Status: String,
CourierProfileId: 0,
ProfileName: String,
CourierFacilityId: 0,
FacilityName: String,
FacilityAddress: String,
DriverContactId: 0,
DriverName: String,
EquipmentID: 0,
VehicleUnit: String,
UnitOne: String,
UnitMany: String,
Units: 0,
StopCount: 0,
StopsDone: 0,
Pay: 0,
BuiltUtc: 0001-01-01,
StartedUtc: 0001-01-01,
CompletedUtc: 0001-01-01,
ToLoad: 0,
ToReturn: 0,
Stops:
[
{
Sequence: 0,
Status: String,
DispatchOdRequestID: 0,
Code: String,
CourierStep: String,
Address: String,
Unit: String,
City: String,
Zip: String,
Lat: 0,
Lng: 0,
CustomerName: String,
CustomerPhone: String,
Handoff: String,
GateCode: String,
Instructions: String,
Units: 0,
DueText: String,
Note: String,
Needs:
[
String
],
Items:
[
{
CourierItemID: 0,
DispatchOdRequestID: 0,
Seq: 0,
TagCode: String,
Custody: String,
IsOpen: False,
IsMissing: False,
MissingReason: String,
IsManual: False,
ReTagFlag: False,
Scanned: False
}
]
}
]
}
],
UpNext:
{
Code: String,
CourierStep: String,
RouteShape: String,
ProfileName: String,
UnitOne: String,
UnitMany: String,
FacilityNoun: String,
FacilityName: String,
LevelName: String,
DueUtc: 0001-01-01,
DueText: String,
Units: 0,
UnitsFound: 0,
Area: String,
Minutes: 0,
Address: String,
Unit: String,
City: String,
Lat: 0,
Lng: 0,
CustomerName: String,
CustomerPhone: String,
Handoff: String,
GateCode: String,
Instructions: String,
DropoffAddress: String,
DropoffContactName: String,
DropLat: 0,
DropLng: 0,
ArrivedUtc: 0001-01-01,
Tags:
[
{
CourierItemID: 0,
DispatchOdRequestID: 0,
Seq: 0,
TagCode: String,
Custody: String,
IsOpen: False,
IsMissing: False,
MissingReason: String,
IsManual: False,
ReTagFlag: False,
Scanned: False
}
],
Proof:
{
String: String
},
Photos:
{
String: 0
},
Needs:
[
String
],
MissedWaitMin: 0,
MissedRequireContact: False,
MissedRequirePhoto: False,
MissedFee: 0
}
},
Result: String,
Detail: String,
Message: String,
ResponseStatus:
{
ErrorCode: String,
Message: String,
StackTrace: String,
Errors:
[
{
ErrorCode: String,
FieldName: String,
Message: String,
Meta:
{
String: String
}
}
],
Meta:
{
String: String
}
}
}