/* Options: Date: 2025-09-14 16:19:06 Version: 8.80 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://api.bookmore.com //Package: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: CreateInvoiceDraft.* //ExcludeTypes: //InitializeCollections: False //TreatTypesAsStrings: //DefaultImports: java.math.*,java.util.*,java.io.InputStream,net.servicestack.client.* */ import java.math.* import java.util.* import java.io.InputStream import net.servicestack.client.* @Route(Path="/eaccounting/invoicedraft", Verbs="POST") open class CreateInvoiceDraft : InvoiceAddressResponse(), IReturn, ICompany { /** * The booking id, to be used to create the customer. */ @ApiMember(Description="The booking id, to be used to create the customer.", IsRequired=true) open var BookingId:Int? = null /** * The Term of payment Id, to be used to create the invoice. */ @ApiMember(Description="The Term of payment Id, to be used to create the invoice.", IsRequired=true) open var TermsOfPaymentId:UUID? = null /** * Note id's to add to this invoice */ @ApiMember(Description="Note id's to add to this invoice") open var Notes:ArrayList? = null /** * Invoice Customer name */ @ApiMember(Description="Invoice Customer name") open var InvoiceCustomerName:String? = null /** * 1 = Apartment, 2 = Property Leave blank or set to null if you do not intend to use ROT or Green Technology functionality. */ @ApiMember(Description="1 = Apartment, 2 = Property Leave blank or set to null if you do not intend to use ROT or Green Technology functionality.", IsRequired=true) open var RotPropertyType:RotPropertyTypes? = null /** * 0 = Normal, 1 = Rot, 2 = Rut = ['0', '1', '2'] */ @ApiMember(Description="0 = Normal, 1 = Rot, 2 = Rut = ['0', '1', '2']", IsRequired=true) open var RotReducedInvoicingType:RotReducedInvoicingTypes? = null /** * The company id, if empty will use the company id for the user you are logged in with. */ @ApiMember(Description="The company id, if empty will use the company id for the user you are logged in with.") override var CompanyId:UUID? = null companion object { private val responseType = CreateInvoiceDraftQueryResponse::class.java } override fun getResponseType(): Any? = CreateInvoiceDraft.responseType } open class CreateInvoiceDraftQueryResponse { open var Invoice:InvoiceDraftQueryResponse? = null open var InvoiceUri:String? = null open var ResponseStatus:ResponseStatus? = null } interface ICompany { var CompanyId:UUID? } enum class RotPropertyTypes(val value:Int) { Apartment(1), Property(2), } enum class RotReducedInvoicingTypes { Normal, Rot, Rut, } open class InvoiceAddressResponse { open var InvoiceAddressId:UUID? = null open var UserId:UUID? = null open var CorporateIdentityNumber:String? = null open var InvoiceAddress1:String? = null open var InvoiceAddress2:String? = null open var InvoiceCity:String? = null open var InvoicePostalCode:String? = null open var InvoiceCountryCode:String? = null } open class InvoiceDraftQueryResponse { open var InvoiceId:UUID? = null open var CreatedDate:Date? = null open var TotalAmount:BigDecimal? = null open var TotalVatAmount:BigDecimal? = null open var CustomerId:String? = null open var Rows:ArrayList? = null open var InvoiceDate:String? = null open var DueDate:String? = null open var DeliveryDate:Date? = null open var Persons:ArrayList? = null open var InvoiceCustomerName:String? = null open var InvoiceAddress:EAccountingInvoiceAddress? = null open var CustomerIsPrivatePerson:Boolean? = null open var CustomerNumber:String? = null open var Notes:ArrayList? = null open var NoteIds:ArrayList? = null open var CreatedUtc:Date? = null open var IncludesVat:Boolean? = null open var PriceSign:String? = null open var BookingId:String? = null }