/* Options: Date: 2024-11-21 12:13:13 Version: 8.23 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://api.bokamera.se //GlobalNamespace: //MakePropertiesOptional: False //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: EaccountingInvoicePrintQuery.* //ExcludeTypes: //DefaultImports: */ export interface IReturn { createResponse(): T; } export interface ICompany { CompanyId?: string; } export class InvoiceAddress { public CorporateIdentityNumber: string; public InvoiceAddress1: string; public InvoiceAddress2: string; public InvoiceCity: string; public InvoicePostalCode: string; public InvoiceCountryCode: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export enum EAccountingInvoiceSendTypes { None = 'None', AutoInvoiceElectronic = 'AutoInvoiceElectronic', AutoInvoicePrint = 'AutoInvoicePrint', AutoInvoiceB2C = 'AutoInvoiceB2C', } export enum GreenTechnologyType { None = 'None', SolarCellInstallation = 'SolarCellInstallation', ElectricEnergyStorageInstallation = 'ElectricEnergyStorageInstallation', ElectricVehicleChargingPointInstallation = 'ElectricVehicleChargingPointInstallation', } export class ContributionMargin { public Amount?: number; public Percentage?: number; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class InvoiceLineQueryResponse { public ArticleNumber: string; public ArticleId: string; public IsServiceArticle: boolean; public AmountNoVat: number; public PercentVat?: number; public LineNumber: number; public IsTextRow: boolean; public Text: string; public UnitPrice: number; public UnitAbbreviation: string; public UnitAbbreviationEnglish: string; public DiscountPercentage: number; public Quantity: number; public IsWorkCost: boolean; public IsVatFree: boolean; public CostCenterItemId1: string; public CostCenterItemId2: string; public CostCenterItemId3: string; public UnitId: string; public ProjectId: string; public WorkCostType?: number; public WorkHours?: number; public MaterialCosts?: number; public GreenTechnologyType?: GreenTechnologyType; public ContributionMargin: ContributionMargin; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class VatSpecificationQueryResponse { public AmountInvoiceCurrency: number; public VatAmountInvoiceCurrency: number; public VatPercent: number; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class Person { public Ssn: string; public Amount: number; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export enum PaymentStatus { Paid = 'Paid', Unpaid = 'Unpaid', Overdue = 'Overdue', } export class CreditedBy { public CreditInvoiceId: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class NoteQueryResponse { public Id: string; public Text: string; public CreatedUtc: string; public ModifiedUtc: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class EAccountingTermsOfPaymentQueryResponse { public Id: string; public Name: string; public NameEnglish: string; public NumberOfDays: number; public TermsOfPaymentTypeId: number; public TermsOfPaymentTypeText: string; public AvailableForSales: boolean; public AvailableForPurchase: boolean; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class InvoiceQueryResponse { public InvoiceId: string; public CreatedDate: string; public TotalAmount: number; public TotalVatAmount: number; public CustomerId: string; public Rows: InvoiceLineQueryResponse[]; public VatSpecification: VatSpecificationQueryResponse[]; public InvoiceDate: string; public DueDate: string; public DeliveryDate?: string; public Persons: Person[]; public InvoiceCustomerName: string; public InvoiceAddress: InvoiceAddress; public CustomerIsPrivatePerson: boolean; public TermsOfPaymentId: string; public TermsOfPaymentData: EAccountingTermsOfPaymentQueryResponse; public CustomerEmail: string; public InvoiceNumber: number; public CustomerNumber: string; public Notes: NoteQueryResponse[]; public NoteIds: string[]; public CreatedUtc: string; public ModifiedUtc: string; public IncludesVat: boolean; public SendType?: EAccountingInvoiceSendTypes; public IsSold: boolean; public PaymentDate?: string; public PaymentStatus: PaymentStatus; public PaymentStatusTitle: string; public CreditedBy: CreditedBy[]; public PriceSign: string; public BookingId: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } // @Route("/eaccounting/invoice/print", "GET") export class EaccountingInvoicePrintQuery implements IReturn, ICompany { public InvoiceId: string; public CompanyId?: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } public getTypeName() { return 'EaccountingInvoicePrintQuery'; } public getMethod() { return 'GET'; } public createResponse() { return new InvoiceQueryResponse(); } }