/* Options: Date: 2024-06-26 09:55:39 SwiftVersion: 5.0 Version: 8.23 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://testapi.bokamera.se //BaseClass: //AddModelExtensions: True //AddServiceStackTypes: True IncludeTypes: EAccountingInvoiceDraftConvertQuery.* //ExcludeTypes: //ExcludeGenericBaseTypes: False //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True //InitializeCollections: True //TreatTypesAsStrings: //DefaultImports: Foundation,ServiceStack */ import Foundation import ServiceStack // @Route("/eaccounting/invoicedrafts/convert", "POST") public class EAccountingInvoiceDraftConvertQuery : IReturn, ICompany, Codable { public typealias Return = CreateInvoiceQueryResponse public var invoiceDraftId:String public var bookingId:Int /** * Used for sending the invoice via Auto-invoice Default:None, 0 = None, 1 = AutoInvoiceElectronic, 2 = AutoInvoicePrint, 3 = AutoInvoiceB2C = ['0', '1', '2', '3']. */ // @ApiMember(Description="Used for sending the invoice via Auto-invoice Default:None, 0 = None, 1 = AutoInvoiceElectronic, 2 = AutoInvoicePrint, 3 = AutoInvoiceB2C = ['0', '1', '2', '3'].", IsRequired=true) public var sendType:EAccountingInvoiceSendTypes? public var companyId:String? required public init(){} } public class CreateInvoiceQueryResponse : Codable { public var invoice:InvoiceQueryResponse public var invoiceUri:String public var responseStatus:ResponseStatus required public init(){} } public protocol ICompany { var companyId:String? { get set } } public enum EAccountingInvoiceSendTypes : String, Codable { case None case AutoInvoiceElectronic case AutoInvoicePrint case AutoInvoiceB2C } public class InvoiceQueryResponse : Codable { public var invoiceId:String public var createdDate:Date public var totalAmount:Double public var totalVatAmount:Double public var customerId:String public var rows:[InvoiceLineQueryResponse] = [] public var vatSpecification:[VatSpecificationQueryResponse] = [] public var invoiceDate:String public var dueDate:String public var deliveryDate:Date? public var persons:[Person] = [] public var invoiceCustomerName:String public var invoiceAddress:InvoiceAddress public var customerIsPrivatePerson:Bool public var termsOfPaymentId:String public var termsOfPaymentData:EAccountingTermsOfPaymentQueryResponse public var customerEmail:String public var invoiceNumber:Int public var customerNumber:String public var notes:[NoteQueryResponse] = [] public var noteIds:[String] = [] public var createdUtc:Date public var modifiedUtc:Date public var includesVat:Bool public var sendType:EAccountingInvoiceSendTypes? public var isSold:Bool public var paymentDate:Date? public var paymentStatus:PaymentStatus public var paymentStatusTitle:String public var creditedBy:[CreditedBy] = [] public var priceSign:String public var bookingId:String required public init(){} }