/* Options: Date: 2026-04-01 02:30:59 Version: 10.05 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://api.bokamera.se //Package: //GlobalNamespace: dtos //AddPropertyAccessors: True //SettersReturnThis: True //AddServiceStackTypes: True //AddResponseStatus: False //AddDescriptionAsComments: True //AddImplicitVersion: IncludeTypes: CreateSummarizedInvoice.* //ExcludeTypes: //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.*; public class dtos { @Route(Path="/eaccounting/summarizedinvoice", Verbs="POST") @ApiResponse(Description="You were unauthorized to call this service", StatusCode=401) @ValidateRequest(Validator="IsAuthenticated") public static class CreateSummarizedInvoice implements IReturn, ICompany { /** * 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.") public UUID CompanyId = null; /** * Start date for the booking range to include. */ @ApiMember(Description="Start date for the booking range to include.", IsRequired=true) public Date DateFrom = null; /** * End date for the booking range to include. */ @ApiMember(Description="End date for the booking range to include.", IsRequired=true) public Date DateTo = null; /** * Optional customer id. If null, creates one summarized invoice per customer with eligible bookings. */ @ApiMember(Description="Optional customer id. If null, creates one summarized invoice per customer with eligible bookings.") public UUID CustomerId = null; /** * Optional service/event id filter. Only include bookings for this service. */ @ApiMember(Description="Optional service/event id filter. Only include bookings for this service.") public Integer ServiceId = null; /** * Optional list of booking status ids to include. If empty, all statuses are included. */ @ApiMember(Description="Optional list of booking status ids to include. If empty, all statuses are included.") public ArrayList BookingStatusIds = null; /** * The terms of payment id from EAccounting. */ @ApiMember(Description="The terms of payment id from EAccounting.", IsRequired=true) public String TermsOfPaymentId = null; /** * Invoice creation type: 'Draft' or 'Invoice'. Defaults to company's EAccounting DefaultCreateType. */ @ApiMember(Description="Invoice creation type: 'Draft' or 'Invoice'. Defaults to company's EAccounting DefaultCreateType.") public String CreateType = null; /** * Send type for final invoices. 0 = None, 1 = AutoInvoiceElectronic, 2 = AutoInvoicePrint, 3 = AutoInvoiceB2C. */ @ApiMember(Description="Send type for final invoices. 0 = None, 1 = AutoInvoiceElectronic, 2 = AutoInvoicePrint, 3 = AutoInvoiceB2C.") public EAccountingInvoiceSendTypes SendType = null; /** * Override corporate identity number for invoice address. */ @ApiMember(Description="Override corporate identity number for invoice address.") public String CorporateIdentityNumber = null; /** * Override invoice address line 1. */ @ApiMember(Description="Override invoice address line 1.") public String InvoiceAddress1 = null; /** * Override invoice address line 2. */ @ApiMember(Description="Override invoice address line 2.") public String InvoiceAddress2 = null; /** * Override invoice city. */ @ApiMember(Description="Override invoice city.") public String InvoiceCity = null; /** * Override invoice postal code. */ @ApiMember(Description="Override invoice postal code.") public String InvoicePostalCode = null; /** * Override invoice country code. */ @ApiMember(Description="Override invoice country code.") public String InvoiceCountryCode = null; public UUID getCompanyId() { return CompanyId; } public CreateSummarizedInvoice setCompanyId(UUID value) { this.CompanyId = value; return this; } public Date getDateFrom() { return DateFrom; } public CreateSummarizedInvoice setDateFrom(Date value) { this.DateFrom = value; return this; } public Date getDateTo() { return DateTo; } public CreateSummarizedInvoice setDateTo(Date value) { this.DateTo = value; return this; } public UUID getCustomerId() { return CustomerId; } public CreateSummarizedInvoice setCustomerId(UUID value) { this.CustomerId = value; return this; } public Integer getServiceId() { return ServiceId; } public CreateSummarizedInvoice setServiceId(Integer value) { this.ServiceId = value; return this; } public ArrayList getBookingStatusIds() { return BookingStatusIds; } public CreateSummarizedInvoice setBookingStatusIds(ArrayList value) { this.BookingStatusIds = value; return this; } public String getTermsOfPaymentId() { return TermsOfPaymentId; } public CreateSummarizedInvoice setTermsOfPaymentId(String value) { this.TermsOfPaymentId = value; return this; } public String getCreateType() { return CreateType; } public CreateSummarizedInvoice setCreateType(String value) { this.CreateType = value; return this; } public EAccountingInvoiceSendTypes getSendType() { return SendType; } public CreateSummarizedInvoice setSendType(EAccountingInvoiceSendTypes value) { this.SendType = value; return this; } public String getCorporateIdentityNumber() { return CorporateIdentityNumber; } public CreateSummarizedInvoice setCorporateIdentityNumber(String value) { this.CorporateIdentityNumber = value; return this; } public String getInvoiceAddress1() { return InvoiceAddress1; } public CreateSummarizedInvoice setInvoiceAddress1(String value) { this.InvoiceAddress1 = value; return this; } public String getInvoiceAddress2() { return InvoiceAddress2; } public CreateSummarizedInvoice setInvoiceAddress2(String value) { this.InvoiceAddress2 = value; return this; } public String getInvoiceCity() { return InvoiceCity; } public CreateSummarizedInvoice setInvoiceCity(String value) { this.InvoiceCity = value; return this; } public String getInvoicePostalCode() { return InvoicePostalCode; } public CreateSummarizedInvoice setInvoicePostalCode(String value) { this.InvoicePostalCode = value; return this; } public String getInvoiceCountryCode() { return InvoiceCountryCode; } public CreateSummarizedInvoice setInvoiceCountryCode(String value) { this.InvoiceCountryCode = value; return this; } private static Object responseType = CreateSummarizedInvoiceResponse.class; public Object getResponseType() { return responseType; } } public static class CreateSummarizedInvoiceResponse { public Integer TotalCustomersQueued = null; public ArrayList Jobs = new ArrayList(); public ResponseStatus ResponseStatus = null; public Integer getTotalCustomersQueued() { return TotalCustomersQueued; } public CreateSummarizedInvoiceResponse setTotalCustomersQueued(Integer value) { this.TotalCustomersQueued = value; return this; } public ArrayList getJobs() { return Jobs; } public CreateSummarizedInvoiceResponse setJobs(ArrayList value) { this.Jobs = value; return this; } public ResponseStatus getResponseStatus() { return ResponseStatus; } public CreateSummarizedInvoiceResponse setResponseStatus(ResponseStatus value) { this.ResponseStatus = value; return this; } } public static interface ICompany { public UUID CompanyId = null; } public static enum EAccountingInvoiceSendTypes { None, AutoInvoiceElectronic, AutoInvoicePrint, AutoInvoiceB2C; } public static class SummarizedInvoiceJobResponse { public UUID SummarizedInvoiceId = null; public UUID CustomerId = null; public String CustomerName = null; public Integer BookingCount = null; public UUID getSummarizedInvoiceId() { return SummarizedInvoiceId; } public SummarizedInvoiceJobResponse setSummarizedInvoiceId(UUID value) { this.SummarizedInvoiceId = value; return this; } public UUID getCustomerId() { return CustomerId; } public SummarizedInvoiceJobResponse setCustomerId(UUID value) { this.CustomerId = value; return this; } public String getCustomerName() { return CustomerName; } public SummarizedInvoiceJobResponse setCustomerName(String value) { this.CustomerName = value; return this; } public Integer getBookingCount() { return BookingCount; } public SummarizedInvoiceJobResponse setBookingCount(Integer value) { this.BookingCount = value; return this; } } }