70 lines
2.7 KiB
SQL
70 lines
2.7 KiB
SQL
CREATE TABLE IF NOT EXISTS `mercyv_shops` (
|
|
`id` INT AUTO_INCREMENT PRIMARY KEY,
|
|
`shop_id` VARCHAR(50) NOT NULL UNIQUE,
|
|
`owner_identifier` VARCHAR(60) DEFAULT NULL,
|
|
`owner_name` VARCHAR(100) DEFAULT NULL,
|
|
`shop_name` VARCHAR(100) NOT NULL,
|
|
`vault_money` INT NOT NULL DEFAULT 0,
|
|
`is_for_sale` TINYINT(1) NOT NULL DEFAULT 0,
|
|
`sale_price` INT NOT NULL DEFAULT 0,
|
|
`created_at` TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
|
`updated_at` TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
|
INDEX `idx_owner` (`owner_identifier`)
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
|
|
|
|
CREATE TABLE IF NOT EXISTS `mercyv_shop_employees` (
|
|
`id` INT AUTO_INCREMENT PRIMARY KEY,
|
|
`shop_id` VARCHAR(50) NOT NULL,
|
|
`employee_identifier` VARCHAR(60) NOT NULL,
|
|
`employee_name` VARCHAR(100) NOT NULL,
|
|
`added_at` TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
|
INDEX `idx_shop` (`shop_id`),
|
|
INDEX `idx_employee` (`employee_identifier`),
|
|
UNIQUE KEY `uq_shop_employee` (`shop_id`, `employee_identifier`)
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
|
|
|
|
CREATE TABLE IF NOT EXISTS `mercyv_shop_shelves` (
|
|
`id` INT AUTO_INCREMENT PRIMARY KEY,
|
|
`shop_id` VARCHAR(50) NOT NULL,
|
|
`item_name` VARCHAR(50) NOT NULL,
|
|
`item_label` VARCHAR(100) NOT NULL,
|
|
`price` INT NOT NULL,
|
|
`quantity` INT NOT NULL DEFAULT 0,
|
|
INDEX `idx_shop_shelves` (`shop_id`),
|
|
UNIQUE KEY `uq_shop_item` (`shop_id`, `item_name`)
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
|
|
|
|
CREATE TABLE IF NOT EXISTS `mercyv_shop_storage` (
|
|
`id` INT AUTO_INCREMENT PRIMARY KEY,
|
|
`shop_id` VARCHAR(50) NOT NULL,
|
|
`item_name` VARCHAR(50) NOT NULL,
|
|
`item_label` VARCHAR(100) NOT NULL,
|
|
`quantity` INT NOT NULL DEFAULT 0,
|
|
INDEX `idx_shop_storage` (`shop_id`),
|
|
UNIQUE KEY `uq_shop_storage_item` (`shop_id`, `item_name`)
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
|
|
|
|
CREATE TABLE IF NOT EXISTS `mercyv_shop_licenses` (
|
|
`id` INT AUTO_INCREMENT PRIMARY KEY,
|
|
`identifier` VARCHAR(60) NOT NULL,
|
|
`license_name` VARCHAR(50) NOT NULL,
|
|
`purchased_at` TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
|
UNIQUE KEY `uq_player_license` (`identifier`, `license_name`),
|
|
INDEX `idx_identifier` (`identifier`)
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
|
|
|
|
CREATE TABLE IF NOT EXISTS `mercyv_shop_sales_history` (
|
|
`id` INT AUTO_INCREMENT PRIMARY KEY,
|
|
`shop_id` VARCHAR(50) NOT NULL,
|
|
`buyer_identifier` VARCHAR(60) NOT NULL,
|
|
`buyer_name` VARCHAR(100) NOT NULL,
|
|
`item_name` VARCHAR(50) NOT NULL,
|
|
`item_label` VARCHAR(100) NOT NULL,
|
|
`price` INT NOT NULL,
|
|
`quantity` INT NOT NULL,
|
|
`total` INT NOT NULL,
|
|
`sold_at` TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
|
INDEX `idx_shop_sales` (`shop_id`),
|
|
INDEX `idx_sold_at` (`sold_at`)
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
|