/* Options: Date: 2025-12-06 06:22:02 Version: 8.0 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://1fetch.api.client.prod.86degrees.com //GlobalNamespace: //MakePartial: True //MakeVirtual: True //MakeInternal: False //MakeDataContractsExtensible: False //AddNullableAnnotations: False //AddReturnMarker: True //AddDescriptionAsComments: True //AddDataContractAttributes: False //AddIndexesToDataMembers: False //AddGeneratedCodeAttributes: False //AddResponseStatus: False //AddImplicitVersion: //InitializeCollections: True //ExportValueTypes: False IncludeTypes: Order.* //ExcludeTypes: //AddNamespaces: //AddDefaultXmlNamespace: http://schemas.servicestack.net/types */ using System; using System.Collections; using System.Collections.Generic; using System.Runtime.Serialization; using ServiceStack; using ServiceStack.DataAnnotations; using WebService.ClientServiceModel.Base; using CommonService.Api.Operations.Base; using CommonService.Api.Operations; using WebService.ClientServiceModel; using BusinessLogic.Entities; namespace BusinessLogic.Entities { public enum OrderStatus { AwaitingPayment = 0, ProcessingPayment = 1, AwaitingDispatch = 2, DriverDispatched = 3, PackageEnRoute = 4, Completed = 5, Cancelled = 6, DeliveryFailed = 7, } } namespace CommonService.Api.Operations { public partial interface IHasApiKey { string ApiKey { get; set; } } public partial interface ILogRequest { } } namespace CommonService.Api.Operations.Base { public partial interface IServiceRequest { } } namespace WebService.ClientServiceModel { public partial class EventDetail { public virtual string Description { get; set; } public virtual string Time { get; set; } public virtual DateTime EventDateTime { get; set; } } [Route("/order", "GET")] public partial class Order : ApiServiceRequest, IReturn, ILogRequest { /// ///The ID if getting specific order /// [ApiMember(Description="The ID if getting specific order")] public virtual string OrderId { get; set; } /// ///The amount of elements to offset the index by /// [ApiMember(Description="The amount of elements to offset the index by")] public virtual int Offset { get; set; } /// ///The number of elements to be returned, defaults to 10 /// [ApiMember(Description="The number of elements to be returned, defaults to 10")] public virtual int Count { get; set; } } public partial class OrderDetail { public OrderDetail() { Waypoints = new List{}; TransitPoints = new List{}; Events = new List{}; } /// ///ID of quote attached to the order /// [ApiMember(Description="ID of quote attached to the order")] public virtual Guid QuoteId { get; set; } /// ///ID of order /// [ApiMember(Description="ID of order")] public virtual Guid OrderId { get; set; } /// ///User friendly order identifier /// [ApiMember(Description="User friendly order identifier")] public virtual string Waybill { get; set; } /// ///Invoice number for the order /// [ApiMember(Description="Invoice number for the order")] public virtual string InvoiceNumber { get; set; } /// ///The date and time the order is scheduled for in ISO 8601 string format, will be set if IsScheduled is true /// [ApiMember(Description="The date and time the order is scheduled for in ISO 8601 string format, will be set if IsScheduled is true")] public virtual string ScheduledDate { get; set; } /// ///Order status number /// [ApiMember(Description="Order status number")] public virtual OrderStatus OrderStatus { get; set; } /// ///String value of order status /// [ApiMember(Description="String value of order status")] public virtual string OrderStatusValue { get; set; } /// ///List of waypoints for this order /// [ApiMember(Description="List of waypoints for this order")] public virtual List Waypoints { get; set; } /// ///List of sections between waypoints /// [ApiMember(Description="List of sections between waypoints")] public virtual List TransitPoints { get; set; } /// ///Order Final price including VAT /// [ApiMember(Description="Order Final price including VAT")] public virtual decimal FinalPrice { get; set; } /// ///Final price formatted as ZA currency /// [ApiMember(Description="Final price formatted as ZA currency")] public virtual string FinalPriceValue { get; set; } /// ///Total distance for the order in km /// [ApiMember(Description="Total distance for the order in km")] public virtual double TotalDistance { get; set; } /// ///Total distance for the order formatted as a string /// [ApiMember(Description="Total distance for the order formatted as a string")] public virtual string TotalDistanceValue { get; set; } /// ///Date order was placed /// [ApiMember(Description="Date order was placed")] public virtual string Date { get; set; } /// ///Google encoded maps polyline path for drawing route on a google map /// [ApiMember(Description="Google encoded maps polyline path for drawing route on a google map")] public virtual string EncodedPolyPath { get; set; } /// ///List of events as they occurred while the order was in progress /// [ApiMember(Description="List of events as they occurred while the order was in progress")] public virtual List Events { get; set; } } public partial class OrderItemWaypoint { /// ///Has the driver completed this waypoint /// [ApiMember(Description="Has the driver completed this waypoint")] public virtual bool Completed { get; set; } public virtual double Latitude { get; set; } public virtual double Longitude { get; set; } public virtual string Address { get; set; } public virtual string ContactName { get; set; } public virtual string ContactNumber { get; set; } public virtual string DeliveryInstructions { get; set; } /// ///Details captured at waypoint /// [ApiMember(Description="Details captured at waypoint")] public virtual ScanDetail ScanDetail { get; set; } } public partial class OrderResponse : ApiServiceResponse { public OrderResponse() { OrderItems = new List{}; } /// ///List with order details, will only contain one item if requested with order id /// [ApiMember(Description="List with order details, will only contain one item if requested with order id")] public virtual List OrderItems { get; set; } /// ///Total number of items in order collection /// [ApiMember(Description="Total number of items in order collection")] public virtual int TotalCount { get; set; } /// ///Used to indicate if there are more items available /// [ApiMember(Description="Used to indicate if there are more items available")] public virtual bool LastPage { get; set; } } public partial class OrderTransitPoint { /// ///Origin waypoint number /// [ApiMember(Description="Origin waypoint number")] public virtual int FromWaypointNumber { get; set; } /// ///Destination waypoint number /// [ApiMember(Description="Destination waypoint number")] public virtual int ToWaypointNumber { get; set; } /// ///Distance between waypoints /// [ApiMember(Description="Distance between waypoints")] public virtual double Distance { get; set; } /// ///Distance between waypoints rounded and converted to a string /// [ApiMember(Description="Distance between waypoints rounded and converted to a string")] public virtual string DistanceValue { get; set; } /// ///Price calculated between waypoints /// [ApiMember(Description="Price calculated between waypoints")] public virtual decimal Price { get; set; } /// ///Price calculated between waypoints formatted as ZA currency /// [ApiMember(Description="Price calculated between waypoints formatted as ZA currency")] public virtual string PriceValue { get; set; } } public partial class ScanDetail { public ScanDetail() { PhotoUrls = new List{}; SignatureUrls = new List{}; } /// ///List of URLs for images captured at the waypoint /// [ApiMember(Description="List of URLs for images captured at the waypoint")] public virtual List PhotoUrls { get; set; } /// ///List of URLs for images of signatures captured at the waypoint /// [ApiMember(Description="List of URLs for images of signatures captured at the waypoint")] public virtual List SignatureUrls { get; set; } /// ///Name of person the driver interacted with at the waypoint /// [ApiMember(Description="Name of person the driver interacted with at the waypoint")] public virtual string ReceivedBy { get; set; } /// ///The date the driver interacted with the person /// [ApiMember(Description="The date the driver interacted with the person")] public virtual string ReceivedDate { get; set; } /// ///Number of packages collected by the driver /// [ApiMember(Description="Number of packages collected by the driver")] public virtual int PackagesCollected { get; set; } } } namespace WebService.ClientServiceModel.Base { public partial class ApiServiceRequest : IServiceRequest, IHasApiKey { /// ///The API Key required for authentication /// [ApiMember(DataType="string", Description="The API Key required for authentication", IsRequired=true)] public virtual string ApiKey { get; set; } } public partial class ApiServiceResponse : IServiceResponse { /// ///Information about the response. /// [ApiMember(Description="Information about the response.", IsRequired=true)] public virtual string Description { get; set; } /// ///Heading or summary of the response. /// [ApiMember(Description="Heading or summary of the response.", IsRequired=true)] public virtual string Heading { get; set; } /// ///Did the intended operation for this response complete successfully? /// [ApiMember(DataType="boolean", Description="Did the intended operation for this response complete successfully?", IsRequired=true)] public virtual bool WasSuccessful { get; set; } } }