gitea init
This commit is contained in:
@@ -0,0 +1,61 @@
|
||||
<?php
|
||||
require_once './db.php';
|
||||
global $pdo;
|
||||
|
||||
/**
|
||||
* მიგრაცია: add_users_table
|
||||
* თარიღი: 2025_04_06_030206
|
||||
*/
|
||||
|
||||
// მაგალითი:
|
||||
//
|
||||
|
||||
/**
|
||||
* მიგრაცია: მაგ. add_vat_column_to_clients
|
||||
* თარიღი: YYYY_MM_DD_HHMMSS
|
||||
*/
|
||||
|
||||
// ✅ ველის დამატება
|
||||
// ("ALTER TABLE clients ADD COLUMN vat_number VARCHAR(150)");
|
||||
|
||||
// ✅ ველის წაშლა
|
||||
// ("ALTER TABLE clients DROP COLUMN vat_number");
|
||||
|
||||
// ✅ ველის ცვლილება (გახანგრძლივება)
|
||||
// ("ALTER TABLE clients MODIFY COLUMN email VARCHAR(255)");
|
||||
|
||||
// ✅ default მნიშვნელობის დამატება
|
||||
// ("ALTER TABLE clients ALTER COLUMN currency SET DEFAULT 'USD'");
|
||||
|
||||
// ✅ ENUM ველის დამატება
|
||||
// ("ALTER TABLE clients ADD COLUMN status ENUM('active','inactive') DEFAULT 'active'");
|
||||
|
||||
// ✅ ინდექსის დამატება
|
||||
// ("CREATE INDEX idx_email ON clients(email)");
|
||||
|
||||
// ✅ უნიკალური ინდექსი
|
||||
// ("CREATE UNIQUE INDEX unique_email ON clients(email)");
|
||||
|
||||
// ✅ ცხრილის შექმნა
|
||||
/*
|
||||
("CREATE TABLE invoices (
|
||||
id INT AUTO_INCREMENT PRIMARY KEY,
|
||||
client_id INT,
|
||||
total DECIMAL(10,2),
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
|
||||
)");
|
||||
*/
|
||||
|
||||
// ✅ ცხრილის წაშლა
|
||||
// ("DROP TABLE invoices");
|
||||
|
||||
$pdo->query("CREATE TABLE IF NOT EXISTS users (
|
||||
id INT(10) UNSIGNED NOT NULL AUTO_INCREMENT,
|
||||
first_name VARCHAR(100) NOT NULL,
|
||||
last_name VARCHAR(100) NOT NULL,
|
||||
email VARCHAR(150) NOT NULL,
|
||||
password VARCHAR(255) NOT NULL,
|
||||
created_at TIMESTAMP NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
PRIMARY KEY (id),
|
||||
UNIQUE (email)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;");
|
||||
@@ -0,0 +1,30 @@
|
||||
<?php
|
||||
require_once './db.php';
|
||||
global $pdo;
|
||||
|
||||
$pdo->query("CREATE TABLE IF NOT EXISTS clients (
|
||||
id INT(11) NOT NULL AUTO_INCREMENT,
|
||||
first_name VARCHAR(100) NOT NULL,
|
||||
last_name VARCHAR(100) NOT NULL,
|
||||
company_name VARCHAR(150) DEFAULT NULL,
|
||||
vat_number VARCHAR(150) DEFAULT NULL,
|
||||
email VARCHAR(150) NOT NULL,
|
||||
password VARCHAR(255) NOT NULL,
|
||||
address1 VARCHAR(255) DEFAULT NULL,
|
||||
address2 VARCHAR(255) DEFAULT NULL,
|
||||
city VARCHAR(100) DEFAULT NULL,
|
||||
state VARCHAR(100) DEFAULT NULL,
|
||||
postcode VARCHAR(20) DEFAULT NULL,
|
||||
country VARCHAR(2) DEFAULT NULL,
|
||||
phone VARCHAR(50) DEFAULT NULL,
|
||||
payment_method VARCHAR(50) DEFAULT NULL,
|
||||
billing_contact VARCHAR(100) DEFAULT NULL,
|
||||
currency VARCHAR(10) DEFAULT 'USD',
|
||||
language VARCHAR(10) DEFAULT 'default',
|
||||
status ENUM('active','inactive') DEFAULT 'active',
|
||||
client_group VARCHAR(50) DEFAULT 'none',
|
||||
created_at TIMESTAMP NULL DEFAULT current_timestamp(),
|
||||
admin_notes TEXT DEFAULT NULL,
|
||||
PRIMARY KEY (id),
|
||||
UNIQUE (email)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;");
|
||||
@@ -0,0 +1,15 @@
|
||||
<?php
|
||||
require_once './db.php';
|
||||
global $pdo;
|
||||
|
||||
$pdo->query("CREATE TABLE IF NOT EXISTS `email_logs` (
|
||||
`id` INT(11) NOT NULL AUTO_INCREMENT,
|
||||
`client_id` INT(11) NOT NULL,
|
||||
`subject` VARCHAR(255) NULL DEFAULT NULL,
|
||||
`message` TEXT NULL DEFAULT NULL,
|
||||
`sent_at` DATETIME NULL DEFAULT current_timestamp(),
|
||||
PRIMARY KEY (`id`) USING BTREE,
|
||||
INDEX `client_id` (`client_id`) USING BTREE,
|
||||
CONSTRAINT `email_logs_ibfk_1` FOREIGN KEY (`client_id`) REFERENCES `clients` (`id`) ON UPDATE RESTRICT ON DELETE CASCADE
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||
");
|
||||
@@ -0,0 +1,38 @@
|
||||
<?php
|
||||
require_once './db.php';
|
||||
global $pdo;
|
||||
|
||||
// 📨 email_templates ცხრილის შექმნა
|
||||
$pdo->query("
|
||||
CREATE TABLE IF NOT EXISTS `email_templates` (
|
||||
`id` INT(11) NOT NULL AUTO_INCREMENT,
|
||||
`name` VARCHAR(100) NOT NULL,
|
||||
`subject` VARCHAR(255) NOT NULL,
|
||||
`body` TEXT NOT NULL,
|
||||
`created_at` DATETIME NULL DEFAULT current_timestamp(),
|
||||
PRIMARY KEY (`id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||
");
|
||||
|
||||
// 🧾 invoices ცხრილის შექმნა
|
||||
$pdo->query("
|
||||
CREATE TABLE IF NOT EXISTS `invoices` (
|
||||
`id` INT(11) NOT NULL AUTO_INCREMENT,
|
||||
`invoice_number` VARCHAR(100) DEFAULT NULL,
|
||||
`client_id` INT(11) NOT NULL,
|
||||
`description` TEXT DEFAULT NULL,
|
||||
`payment_method` VARCHAR(100) DEFAULT NULL,
|
||||
`status` ENUM('დრაფტი','გადაუხდელი','გადასახდელი','გადახდილი','გაუქმებული') NOT NULL DEFAULT 'დრაფტი',
|
||||
`total_amount` DECIMAL(10,2) NOT NULL DEFAULT '0.00',
|
||||
`is_recurring` TINYINT(1) DEFAULT '0',
|
||||
`issue_date` DATE NOT NULL,
|
||||
`due_date` DATE NOT NULL,
|
||||
`payment_date` DATE DEFAULT NULL,
|
||||
`created_at` TIMESTAMP NULL DEFAULT current_timestamp(),
|
||||
`recurring` TINYINT(1) NOT NULL DEFAULT '0',
|
||||
PRIMARY KEY (`id`),
|
||||
UNIQUE INDEX `invoice_number` (`invoice_number`),
|
||||
INDEX `client_id` (`client_id`),
|
||||
CONSTRAINT `invoices_ibfk_1` FOREIGN KEY (`client_id`) REFERENCES `clients` (`id`) ON UPDATE RESTRICT ON DELETE CASCADE
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||
");
|
||||
+65
@@ -0,0 +1,65 @@
|
||||
<?php
|
||||
require_once './db.php';
|
||||
global $pdo;
|
||||
|
||||
// 💳 invoice_items ცხრილის შექმნა
|
||||
$pdo->query("
|
||||
CREATE TABLE IF NOT EXISTS `invoice_items` (
|
||||
`id` INT(11) NOT NULL AUTO_INCREMENT,
|
||||
`invoice_id` INT(11) NOT NULL,
|
||||
`product_id` INT(11) DEFAULT NULL,
|
||||
`description` TEXT DEFAULT NULL,
|
||||
`amount` DECIMAL(10,2) NOT NULL DEFAULT '0.00',
|
||||
PRIMARY KEY (`id`),
|
||||
INDEX `invoice_id` (`invoice_id`),
|
||||
CONSTRAINT `invoice_items_ibfk_1` FOREIGN KEY (`invoice_id`) REFERENCES `invoices` (`id`) ON UPDATE RESTRICT ON DELETE CASCADE
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||
");
|
||||
|
||||
// 📋 migration_log ცხრილის შექმნა (თუ არ გაქვს უკვე)
|
||||
$pdo->query("
|
||||
CREATE TABLE IF NOT EXISTS `migration_log` (
|
||||
`id` INT(11) NOT NULL AUTO_INCREMENT,
|
||||
`filename` VARCHAR(255) DEFAULT NULL,
|
||||
`executed_at` DATETIME DEFAULT current_timestamp(),
|
||||
PRIMARY KEY (`id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||
");
|
||||
|
||||
// 📦 products ცხრილის შექმნა
|
||||
$pdo->query("
|
||||
CREATE TABLE IF NOT EXISTS `products` (
|
||||
`id` INT(11) NOT NULL AUTO_INCREMENT,
|
||||
`name` VARCHAR(255) NOT NULL,
|
||||
`group` VARCHAR(255) NOT NULL,
|
||||
`type` VARCHAR(100) DEFAULT NULL,
|
||||
`pay_type` VARCHAR(100) DEFAULT NULL,
|
||||
`auto_setup` VARCHAR(100) DEFAULT NULL,
|
||||
`url` TEXT DEFAULT NULL,
|
||||
`module` VARCHAR(100) DEFAULT NULL,
|
||||
`hidden` TINYINT(1) DEFAULT '0',
|
||||
`created_at` DATETIME DEFAULT current_timestamp(),
|
||||
`updated_at` DATETIME DEFAULT current_timestamp() ON UPDATE current_timestamp(),
|
||||
`price` DECIMAL(10,2) NOT NULL DEFAULT '0.00',
|
||||
PRIMARY KEY (`id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||
");
|
||||
|
||||
// 💰 transactions ცხრილის შექმნა
|
||||
$pdo->query("
|
||||
CREATE TABLE IF NOT EXISTS `transactions` (
|
||||
`id` INT(11) NOT NULL AUTO_INCREMENT,
|
||||
`invoice_id` INT(11) NOT NULL,
|
||||
`client_id` INT(11) NOT NULL,
|
||||
`amount` DECIMAL(10,2) NOT NULL,
|
||||
`method` VARCHAR(100) DEFAULT NULL,
|
||||
`status` ENUM('success','failed','pending') NOT NULL DEFAULT 'pending',
|
||||
`notes` TEXT DEFAULT NULL,
|
||||
`created_at` TIMESTAMP DEFAULT current_timestamp(),
|
||||
PRIMARY KEY (`id`),
|
||||
INDEX `invoice_id` (`invoice_id`),
|
||||
INDEX `client_id` (`client_id`),
|
||||
CONSTRAINT `transactions_ibfk_1` FOREIGN KEY (`invoice_id`) REFERENCES `invoices` (`id`) ON UPDATE RESTRICT ON DELETE CASCADE,
|
||||
CONSTRAINT `transactions_ibfk_2` FOREIGN KEY (`client_id`) REFERENCES `clients` (`id`) ON UPDATE RESTRICT ON DELETE CASCADE
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||
");
|
||||
Reference in New Issue
Block a user