/* Options: Date: 2026-06-13 03:56:50 SwiftVersion: 6.0 Version: 8.80 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://api.dev.dynamics.trendsic.com //BaseClass: //AddModelExtensions: True //AddServiceStackTypes: True //MakePropertiesOptional: True IncludeTypes: RfpPricingRequest.* //ExcludeTypes: //ExcludeGenericBaseTypes: False //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True //InitializeCollections: True //TreatTypesAsStrings: //DefaultImports: Foundation,ServiceStack */ import Foundation import ServiceStack // @Route("/v1/Rfp/{RfpDocumentUID}/Pricing", "GET,OPTIONS") public class RfpPricingRequest : IReturn, Codable { public typealias Return = RfpPricingResponse public var rfpDocumentUID:String? required public init(){} } public class RfpPricingResponse : Codable { public var responseStatus:ResponseStatus? public var rfpDocumentID:Int? public var pricing:PricedProposal? required public init(){} } public class PricedProposal : Codable { public var rfpDocumentID:Int? public var projectName:String? public var currency:String? public var tasks:[PricedTask] = [] public var total:CostRange? public var positionsNeedingRate:Int? public var equipmentNotInCatalog:Int? public var materialsNotInCatalog:Int? public var positionsNotInCatalog:Int? public var equipmentMargin:Double? required public init(){} } public class PricedTask : Codable { public var name:String? public var category:String? public var positions:[PricedPosition] = [] public var equipment:[PricedEquipment] = [] public var materials:[PricedMaterial] = [] public var subtotal:CostRange? required public init(){} } public class CostRange : Codable { public var min:Double? public var max:Double? public var mid:Double? required public init(){} } public class PricedPosition : Codable { public var positionTag:String? public var hours:Double? public var hasInternalRate:Bool? public var rateMin:Double? public var rateMax:Double? public var rateAvg:Double? public var contactCount:Int? public var cost:CostRange? public var marketRateReference:Double? required public init(){} } public class PricedEquipment : Codable { public var equipmentID:Int? public var equipmentName:String? public var quantity:Double? public var durationDays:Double? public var rateType:String? public var billedRate:Double? public var costRate:Double? public var hasRate:Bool? public var isInCatalog:Bool? public var cost:Double? public var companyCost:Double? public var margin:Double? required public init(){} } public class PricedMaterial : Codable { public var materialID:Int? public var materialName:String? public var quantity:Double? public var unitCost:Double? public var hasRate:Bool? public var isInCatalog:Bool? public var cost:Double? required public init(){} }