Загрузка данных
-- =========================
-- ПАРТНЁРЫ
-- =========================
CREATE TABLE partners (
id SERIAL PRIMARY KEY,
type TEXT,
company_name TEXT,
legal_address TEXT,
inn TEXT,
director_full_name TEXT,
phone TEXT,
email TEXT,
logo TEXT,
rating INTEGER,
sales_places TEXT
);
CREATE TABLE partner_sales_history (
id SERIAL PRIMARY KEY,
partner_id INTEGER REFERENCES partners(id),
sales_data TEXT
);
-- =========================
-- СОТРУДНИКИ
-- =========================
CREATE TABLE employees (
id SERIAL PRIMARY KEY,
full_name TEXT,
birth_date DATE,
passport_data TEXT,
bank_details TEXT,
has_family BOOLEAN,
health_status TEXT
);
-- =========================
-- ДОПУСК К ОБОРУДОВАНИЮ (КАДРЫ)
-- =========================
CREATE TABLE employee_equipment_access (
id SERIAL PRIMARY KEY,
employee_id INTEGER REFERENCES employees(id),
equipment TEXT
);
-- =========================
-- ДОСТУП (КАРТЫ И ТУРНИКЕТЫ)
-- =========================
CREATE TABLE access_cards (
id SERIAL PRIMARY KEY,
employee_id INTEGER REFERENCES employees(id),
card_code TEXT
);
CREATE TABLE access_logs (
id SERIAL PRIMARY KEY,
employee_id INTEGER REFERENCES employees(id),
access_time TIMESTAMP,
direction TEXT
);
-- =========================
-- ПОСТАВЩИКИ
-- =========================
CREATE TABLE suppliers (
id SERIAL PRIMARY KEY,
type TEXT,
name TEXT,
inn TEXT
);
CREATE TABLE supplier_material_history (
id SERIAL PRIMARY KEY,
supplier_id INTEGER REFERENCES suppliers(id),
material_data TEXT
);
-- =========================
-- МАТЕРИАЛЫ (СЫРЬЁ)
-- =========================
CREATE TABLE materials (
id SERIAL PRIMARY KEY,
type TEXT,
name TEXT,
package_quantity INTEGER,
unit TEXT,
description TEXT,
image TEXT,
cost NUMERIC,
stock_quantity INTEGER,
min_stock_quantity INTEGER
);
CREATE TABLE material_stock_history (
id SERIAL PRIMARY KEY,
material_id INTEGER REFERENCES materials(id),
change_data TEXT
);
CREATE TABLE material_supplier_link (
id SERIAL PRIMARY KEY,
material_id INTEGER REFERENCES materials(id),
supplier_id INTEGER REFERENCES suppliers(id)
);
-- =========================
-- СКЛАД
-- =========================
CREATE TABLE warehouse_transactions (
id SERIAL PRIMARY KEY,
material_id INTEGER REFERENCES materials(id),
transaction_type TEXT,
quantity INTEGER,
transaction_time TIMESTAMP
);
-- =========================
-- ПРОДУКЦИЯ
-- =========================
CREATE TABLE products (
id SERIAL PRIMARY KEY,
article TEXT,
type TEXT,
name TEXT,
description TEXT,
image TEXT,
min_partner_price NUMERIC,
length NUMERIC,
width NUMERIC,
height NUMERIC,
net_weight NUMERIC,
gross_weight NUMERIC,
quality_certificate TEXT,
standard_number TEXT,
production_time TEXT,
cost_price NUMERIC,
workshop_number INTEGER,
production_people_count INTEGER
);
CREATE TABLE product_min_price_history (
id SERIAL PRIMARY KEY,
product_id INTEGER REFERENCES products(id),
price_data TEXT
);
CREATE TABLE product_materials (
id SERIAL PRIMARY KEY,
product_id INTEGER REFERENCES products(id),
material_id INTEGER REFERENCES materials(id),
quantity INTEGER
);
-- =========================
-- ЗАЯВКА (ЗАКАЗ)
-- =========================
CREATE TABLE orders (
id SERIAL PRIMARY KEY,
partner_id INTEGER REFERENCES partners(id),
manager_id INTEGER REFERENCES employees(id),
status TEXT,
prepayment_received BOOLEAN,
created_at TIMESTAMP
);
CREATE TABLE order_items (
id SERIAL PRIMARY KEY,
order_id INTEGER REFERENCES orders(id),
product_id INTEGER REFERENCES products(id),
quantity INTEGER,
cost NUMERIC,
production_date DATE
);