Загрузка данных


-- Таблица клиентов
CREATE TABLE IF NOT EXISTS "Clients" (
    "Id" SERIAL PRIMARY KEY,
    "Name" TEXT NOT NULL UNIQUE,
    "Phone" TEXT,
    "Password" TEXT NOT NULL
);

-- Таблица поставщиков
CREATE TABLE IF NOT EXISTS "Suppliers" (
    "Id" SERIAL PRIMARY KEY,
    "Name" TEXT NOT NULL UNIQUE,
    "ContactPerson" TEXT,
    "Phone" TEXT,
    "Email" TEXT
);

-- Таблица моделей БПЛА
CREATE TABLE IF NOT EXISTS "DroneModels" (
    "Id" SERIAL PRIMARY KEY,
    "ModelName" TEXT NOT NULL UNIQUE,
    "Configurations" TEXT,
    "BasePrice" DECIMAL(10,2)
);

-- Таблица материалов
CREATE TABLE IF NOT EXISTS "Materials" (
    "Id" SERIAL PRIMARY KEY,
    "Name" TEXT UNIQUE,
    "Quantity" INTEGER DEFAULT 0,
    "SupplierId" INTEGER REFERENCES "Suppliers"("Id")
);

-- Таблица заказов
CREATE TABLE IF NOT EXISTS "Orders" (
    "Id" SERIAL PRIMARY KEY,
    "ClientId" INTEGER REFERENCES "Clients"("Id"),
    "ModelId" INTEGER REFERENCES "DroneModels"("Id"),
    "Configuration" TEXT,
    "ClientPhone" TEXT,
    "DeliveryAddress" TEXT,
    "CardNumber" TEXT,
    "CardExpiry" TEXT,
    "CardCVV" TEXT,
    "Status" TEXT DEFAULT 'Создан',
    "ContractConfirmed" BOOLEAN DEFAULT FALSE,
    "EngineerCompleted" BOOLEAN DEFAULT FALSE,
    "Tested" BOOLEAN DEFAULT FALSE,
    "Packaged" BOOLEAN DEFAULT FALSE,
    "SentToClient" BOOLEAN DEFAULT FALSE,
    "ClientConfirmed" BOOLEAN DEFAULT FALSE,
    "ReceiptGenerated" BOOLEAN DEFAULT FALSE,
    "OrderDate" TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);