| PUT,OPTIONS | /v1/projects/{ProjectID}/change-orders/{ChangeOrderID} |
|---|
import Foundation
import ServiceStack
public class ChangeOrderUpdateRequest : Codable
{
public var projectID:Int
public var changeOrderID:Int
public var title:String
public var scope:String
public var originType:String
public var originRef:String
public var costCode:String
public var scheduleDays:Int
public var overheadProfitPct:Double
public var pricingMethod:String
public var lines:[ChangeOrderLine] = []
required public init(){}
}
public class ChangeOrderLine : Codable
{
public var changeOrderLineID:Int
public var changeOrderID:Int
public var category:String
public var Description:String
public var costUSD:Double
public var markupPct:Double
public var costCode:String
public var sortOrder:Int
required public init(){}
}
public class ChangeOrderResponse : Codable
{
public var responseStatus:ResponseStatus
public var order:ChangeOrder
public var summary:ChangeOrderContractSummary
required public init(){}
}
public class ChangeOrder : Codable
{
public var changeOrderID:Int
public var changeOrderUID:String
public var projectID:Int
public var coNumber:String
public var title:String
public var scope:String
public var status:String
public var costUSD:Double
public var priceUSD:Double
public var scheduleDays:Int
public var overheadProfitPct:Double
public var pricingMethod:String
public var originType:String
public var originRef:String
public var costCode:String
public var openedAt:Date?
public var submittedAt:Date?
public var decidedAt:Date?
public var createdBy:String
public var createdAt:Date?
public var updatedAt:Date?
public var daysOpen:Int
public var lines:[ChangeOrderLine] = []
required public init(){}
}
public class ChangeOrderContractSummary : Codable
{
public var projectID:Int
public var originalContract:Double
public var approvedCOValue:Double
public var approvedCOCount:Int
public var pendingCOValue:Double
public var pendingCOCount:Int
public var revisedContract:Double
public var potentialContract:Double
public var approvedScheduleDays:Int
required public init(){}
}
Swift ChangeOrderUpdateRequest 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.
PUT /v1/projects/{ProjectID}/change-orders/{ChangeOrderID} HTTP/1.1
Host: api.dev.dynamics.trendsic.com
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
ProjectID: 0,
ChangeOrderID: 0,
Title: String,
Scope: String,
OriginType: String,
OriginRef: String,
CostCode: String,
ScheduleDays: 0,
OverheadProfitPct: 0,
PricingMethod: String,
Lines:
[
{
ChangeOrderLineID: 0,
ChangeOrderID: 0,
Category: String,
Description: String,
CostUSD: 0,
MarkupPct: 0,
CostCode: String,
SortOrder: 0
}
]
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
ResponseStatus:
{
ErrorCode: String,
Message: String,
StackTrace: String,
Errors:
[
{
ErrorCode: String,
FieldName: String,
Message: String,
Meta:
{
String: String
}
}
],
Meta:
{
String: String
}
},
Order:
{
ChangeOrderID: 0,
ChangeOrderUID: 00000000000000000000000000000000,
ProjectID: 0,
CONumber: String,
Title: String,
Scope: String,
Status: String,
CostUSD: 0,
PriceUSD: 0,
ScheduleDays: 0,
OverheadProfitPct: 0,
PricingMethod: String,
OriginType: String,
OriginRef: String,
CostCode: String,
OpenedAt: 0001-01-01,
SubmittedAt: 0001-01-01,
DecidedAt: 0001-01-01,
CreatedBy: String,
CreatedAt: 0001-01-01,
UpdatedAt: 0001-01-01,
DaysOpen: 0,
Lines:
[
{
ChangeOrderLineID: 0,
ChangeOrderID: 0,
Category: String,
Description: String,
CostUSD: 0,
MarkupPct: 0,
CostCode: String,
SortOrder: 0
}
]
},
Summary:
{
ProjectID: 0,
OriginalContract: 0,
ApprovedCOValue: 0,
ApprovedCOCount: 0,
PendingCOValue: 0,
PendingCOCount: 0,
RevisedContract: 0,
PotentialContract: 0,
ApprovedScheduleDays: 0
}
}