# ------------------ VAT -------------------
CREATE TABLE invoice_vat
(
vat_id BIGINT NOT NULL,
name VARCHAR(255) NOT NULL,
value INTEGER NOT NULL,
PRIMARY KEY(vat_id)
);
# ------------------ /VAT -------------------
# ------------------ PAYMENT_TYPE -------------------
CREATE TABLE invoice_payment_type
(
payment_type_id BIGINT NOT NULL,
name VARCHAR(255) NOT NULL,
PRIMARY KEY(payment_type_id)
);
# ------------------ /PAYMENT_TYPE -------------------
# ------------------ STOCK ELEMENT -------------------
CREATE TABLE invoice_stock_element
(
element_id BIGINT NOT NULL,
name VARCHAR(255) NOT NULL,
pkd VARCHAR(255) NOT NULL,
jm VARCHAR(255) NOT NULL,
price INTEGER NOT NULL,
vat_id BIGINT NOT NULL,
PRIMARY KEY(element_id)
);
# ------------------ /STOCK ELEMENT -------------------
# ------------------ CLIENT -------------------
CREATE TABLE invoice_client
(
client_id BIGINT NOT NULL,
name VARCHAR(255) NOT NULL,
nip VARCHAR(255) NOT NULL,
regon VARCHAR(255) NOT NULL,
zipcode VARCHAR(255) NOT NULL,
city VARCHAR(255) NOT NULL,
street VARCHAR(255) NOT NULL,
tel VARCHAR(255) NOT NULL,
fax VARCHAR(255) NOT NULL,
email VARCHAR(255) NOT NULL,
www VARCHAR(255) NOT NULL,
bank VARCHAR(255) NOT NULL,
account VARCHAR(255) NOT NULL,
PRIMARY KEY(client_id)
);
# ------------------ /CLIENT -------------------
# ------------------ INVOICE -------------------
CREATE TABLE invoice_invoice
(
invoice_id BIGINT NOT NULL,
client_id BIGINT NOT NULL,
payment_type_id BIGINT NOT NULL,
payment_date TIMESTAMP,
issue_date TIMESTAMP,
sell_date TIMESTAMP,
description VARCHAR(255) NOT NULL,
PRIMARY KEY(invoice_id)
);
# ------------------ /INVOICE -------------------
# ------------------ INVOICE ELEMENT -------------------
CREATE TABLE invoice_invoice_element
(
invoice_id BIGINT NOT NULL,
stock_element_id BIGINT NOT NULL,
quantity INTEGER NOT NULL,
discount INTEGER NOT NULL,
price INTEGER NOT NULL,
PRIMARY KEY(invoice_id, stock_element_id)
);
# ------------------ /INVOICE ELEMENT -------------------