121 lines
2.7 KiB
TypeScript
121 lines
2.7 KiB
TypeScript
|
import * as tsclass from '@tsclass/tsclass';
|
||
|
const fromContact: tsclass.business.IContact = {
|
||
|
name: 'Awesome From Company',
|
||
|
type: 'company',
|
||
|
description: 'a company that does stuff',
|
||
|
address: {
|
||
|
streetName: 'Awesome Street',
|
||
|
houseNumber: '5',
|
||
|
city: 'Bremen',
|
||
|
country: 'Germany',
|
||
|
postalCode: '28359',
|
||
|
},
|
||
|
vatId: 'DE12345678',
|
||
|
sepaConnection: {
|
||
|
bic: 'BPOTBEB1',
|
||
|
iban: 'BE01234567891616'
|
||
|
},
|
||
|
email: 'hello@awesome.company',
|
||
|
phone: '+49 421 1234567',
|
||
|
fax: '+49 421 1234568',
|
||
|
|
||
|
};
|
||
|
|
||
|
const toContact: tsclass.business.IContact = {
|
||
|
name: 'Awesome To GmbH',
|
||
|
type: 'company',
|
||
|
customerNumber: 'LL-CLIENT-123',
|
||
|
description: 'a company that does stuff',
|
||
|
address: {
|
||
|
streetName: 'Awesome Street',
|
||
|
houseNumber: '5',
|
||
|
city: 'Bremen',
|
||
|
country: 'Germany',
|
||
|
postalCode: '28359'
|
||
|
},
|
||
|
vatId: 'BE12345678',
|
||
|
}
|
||
|
|
||
|
export const demoLetter: tsclass.business.ILetter = {
|
||
|
versionInfo: {
|
||
|
type: 'draft',
|
||
|
version: '1.0.0',
|
||
|
},
|
||
|
accentColor: null,
|
||
|
content: {
|
||
|
textData: null,
|
||
|
timesheetData: null,
|
||
|
contractData: {
|
||
|
contractDate: Date.now(),
|
||
|
id: 'someid'
|
||
|
},
|
||
|
invoiceData: {
|
||
|
id: 'LL-INV-48765',
|
||
|
reverseCharge: true,
|
||
|
dueInDays: 30,
|
||
|
billedBy: fromContact,
|
||
|
billedTo: toContact,
|
||
|
status: null,
|
||
|
deliveryDate: new Date().getTime(),
|
||
|
periodOfPerformance: null,
|
||
|
printResult: null,
|
||
|
|
||
|
items: [
|
||
|
{
|
||
|
name: 'Item with 19% VAT',
|
||
|
unitQuantity: 1,
|
||
|
unitNetPrice: 100,
|
||
|
unitType: 'hours',
|
||
|
vatPercentage: 19,
|
||
|
currency: 'EUR',
|
||
|
},
|
||
|
{
|
||
|
name: 'Item with 7% VAT',
|
||
|
unitQuantity: 1,
|
||
|
unitNetPrice: 100,
|
||
|
unitType: 'hours',
|
||
|
vatPercentage: 7,
|
||
|
currency: 'EUR',
|
||
|
},
|
||
|
{
|
||
|
name: 'Item with 7% VAT',
|
||
|
unitQuantity: 1,
|
||
|
unitNetPrice: 230,
|
||
|
unitType: 'hours',
|
||
|
vatPercentage: 7,
|
||
|
currency: 'EUR',
|
||
|
},
|
||
|
{
|
||
|
name: 'Item with 21% VAT',
|
||
|
unitQuantity: 1,
|
||
|
unitNetPrice: 230,
|
||
|
unitType: 'hours',
|
||
|
vatPercentage: 21,
|
||
|
currency: 'EUR',
|
||
|
},
|
||
|
{
|
||
|
name: 'Item with 0% VAT',
|
||
|
unitQuantity: 1,
|
||
|
unitNetPrice: 230,
|
||
|
unitType: 'hours',
|
||
|
vatPercentage: 0,
|
||
|
currency: 'EUR',
|
||
|
},
|
||
|
],
|
||
|
}
|
||
|
},
|
||
|
|
||
|
date: Date.now(),
|
||
|
type: 'invoice',
|
||
|
needsCoverSheet: false,
|
||
|
objectActions: [],
|
||
|
pdf: null,
|
||
|
from: fromContact,
|
||
|
to: toContact,
|
||
|
incidenceId: null,
|
||
|
language: null,
|
||
|
legalContact: null,
|
||
|
logoUrl: null,
|
||
|
pdfAttachments: null,
|
||
|
subject: 'Invoice: LL-INV-48765',
|
||
|
}
|