/* Options: Date: 2026-06-23 00:06:45 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: PortalQuoteRequest.* //ExcludeTypes: //ExcludeGenericBaseTypes: False //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True //InitializeCollections: True //TreatTypesAsStrings: //DefaultImports: Foundation,ServiceStack */ import Foundation import ServiceStack // @Route("/portal/{Token}/quote", "GET,OPTIONS") public class PortalQuoteRequest : IReturn, Codable { public typealias Return = PortalQuoteResponse public var token:String? required public init(){} } public class PortalQuoteResponse : Codable { public var responseStatus:ResponseStatus? public var name:String? public var status:String? public var currency:String? public var total:Double? public var notes:String? public var fromName:String? public var fromAddress:String? public var toName:String? public var toAddress:String? public var expiresAt:Date? public var isLocked:Bool? public var finalPriceAfterCompletion:Bool? public var approvedByName:String? public var approvedAt:Date? public var declinedByName:String? public var declinedAt:Date? public var declineReason:String? public var lineItems:[QuoteItem] = [] required public init(){} } public class QuoteItem : Codable { public var quoteItemID:Int? public var quoteID:Int? public var itemType:String? public var sourceRefId:Int? public var jobID:Int? public var name:String? public var Description:String? public var quantity:Double? public var unitPrice:Double? public var isTaxable:Bool? public var displayOrder:Int? public var isDeleted:Bool? required public init(){} }