--
-- Host: 127.0.0.1    Database: amerce
-- ------------------------------------------------------


--
-- Table structure for table `activations`
--

CREATE TABLE `activations` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `user_id` bigint unsigned NOT NULL,
  `code` varchar(120) COLLATE utf8mb4_unicode_ci NOT NULL,
  `completed` tinyint(1) NOT NULL DEFAULT '0',
  `completed_at` timestamp NULL DEFAULT NULL,
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  PRIMARY KEY (`id`),
  KEY `activations_user_id_index` (`user_id`)
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `activations`
--

INSERT INTO `activations` VALUES (1,1,'RoGfdCAZXEdhbAoT0LUo2HmyYYl7HJ7X',1,'2026-05-07 01:57:52','2026-05-07 01:57:52','2026-05-07 01:57:52');

--
-- Table structure for table `admin_notifications`
--

CREATE TABLE `admin_notifications` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `title` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
  `action_label` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `action_url` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `description` varchar(400) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `read_at` timestamp NULL DEFAULT NULL,
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  `permission` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `admin_notifications`
--


--
-- Table structure for table `ads`
--

CREATE TABLE `ads` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `name` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
  `expired_at` datetime DEFAULT NULL,
  `location` varchar(120) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `key` varchar(120) COLLATE utf8mb4_unicode_ci NOT NULL,
  `image` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `url` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `clicked` bigint NOT NULL DEFAULT '0',
  `order` int DEFAULT '0',
  `status` varchar(60) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'published',
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  `open_in_new_tab` tinyint(1) NOT NULL DEFAULT '1',
  `tablet_image` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `mobile_image` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `ads_type` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `google_adsense_slot_id` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  PRIMARY KEY (`id`),
  UNIQUE KEY `ads_key_unique` (`key`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ads`
--


--
-- Table structure for table `ads_translations`
--

CREATE TABLE `ads_translations` (
  `lang_code` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
  `ads_id` bigint unsigned NOT NULL,
  `name` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `image` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `url` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `tablet_image` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `mobile_image` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  PRIMARY KEY (`lang_code`,`ads_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ads_translations`
--


--
-- Table structure for table `announcements`
--

CREATE TABLE `announcements` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `name` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
  `content` text COLLATE utf8mb4_unicode_ci NOT NULL,
  `has_action` tinyint(1) NOT NULL DEFAULT '0',
  `action_label` varchar(60) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `action_url` varchar(400) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `action_open_new_tab` tinyint(1) NOT NULL DEFAULT '0',
  `dismissible` tinyint(1) NOT NULL DEFAULT '0',
  `start_date` datetime DEFAULT NULL,
  `end_date` datetime DEFAULT NULL,
  `is_active` tinyint(1) NOT NULL DEFAULT '1',
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `announcements`
--


--
-- Table structure for table `announcements_translations`
--

CREATE TABLE `announcements_translations` (
  `lang_code` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
  `announcements_id` bigint unsigned NOT NULL,
  `content` text COLLATE utf8mb4_unicode_ci,
  `action_label` varchar(60) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  PRIMARY KEY (`lang_code`,`announcements_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `announcements_translations`
--


--
-- Table structure for table `audit_histories`
--

CREATE TABLE `audit_histories` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `user_id` bigint unsigned NOT NULL,
  `user_type` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT 'Botble\\ACL\\Models\\User',
  `module` varchar(60) COLLATE utf8mb4_unicode_ci NOT NULL,
  `request` longtext COLLATE utf8mb4_unicode_ci,
  `action` varchar(120) COLLATE utf8mb4_unicode_ci NOT NULL,
  `user_agent` text COLLATE utf8mb4_unicode_ci,
  `ip_address` varchar(45) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `actor_id` bigint unsigned NOT NULL,
  `actor_type` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT 'Botble\\ACL\\Models\\User',
  `reference_id` bigint unsigned NOT NULL,
  `reference_name` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
  `type` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL,
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  PRIMARY KEY (`id`),
  KEY `audit_histories_user_id_index` (`user_id`),
  KEY `audit_histories_module_index` (`module`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `audit_histories`
--


--
-- Table structure for table `cache`
--

CREATE TABLE `cache` (
  `key` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
  `value` mediumtext COLLATE utf8mb4_unicode_ci NOT NULL,
  `expiration` bigint NOT NULL,
  PRIMARY KEY (`key`),
  KEY `cache_expiration_index` (`expiration`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `cache`
--


--
-- Table structure for table `cache_locks`
--

CREATE TABLE `cache_locks` (
  `key` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
  `owner` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
  `expiration` bigint NOT NULL,
  PRIMARY KEY (`key`),
  KEY `cache_locks_expiration_index` (`expiration`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `cache_locks`
--


--
-- Table structure for table `categories`
--

CREATE TABLE `categories` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `name` varchar(120) COLLATE utf8mb4_unicode_ci NOT NULL,
  `parent_id` bigint unsigned NOT NULL DEFAULT '0',
  `description` varchar(400) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `status` varchar(60) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'published',
  `author_id` bigint unsigned DEFAULT NULL,
  `author_type` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'Botble\\ACL\\Models\\User',
  `icon` varchar(60) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `order` int unsigned NOT NULL DEFAULT '0',
  `is_featured` tinyint NOT NULL DEFAULT '0',
  `is_default` tinyint unsigned NOT NULL DEFAULT '0',
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  PRIMARY KEY (`id`),
  KEY `categories_parent_id_index` (`parent_id`),
  KEY `categories_status_index` (`status`),
  KEY `categories_created_at_index` (`created_at`)
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `categories`
--

INSERT INTO `categories` VALUES (1,'Yoga &amp; Mindfulness',0,'Flows, breathwork, and mindful movement to anchor your practice on and off the mat.','published',1,'Botble\\ACL\\Models\\User',NULL,0,0,1,'2026-05-07 01:57:53','2026-05-07 01:57:53'),(2,'Running',0,'Training plans, gear edits, and pacing tips for road, trail, and treadmill miles.','published',1,'Botble\\ACL\\Models\\User',NULL,0,1,0,'2026-05-07 01:57:53','2026-05-07 01:57:53'),(3,'Strength Training',0,'Gym wear, lifting routines, and progressive overload guidance for sustainable strength.','published',1,'Botble\\ACL\\Models\\User',NULL,0,1,0,'2026-05-07 01:57:53','2026-05-07 01:57:53'),(4,'Recovery',0,'Stretching, mobility, and post-workout rituals that protect your training streak.','published',1,'Botble\\ACL\\Models\\User',NULL,0,1,0,'2026-05-07 01:57:53','2026-05-07 01:57:53'),(5,'Activewear Trends',0,'Fabric innovations, color stories, and seasonal capsule edits for studio to street.','published',1,'Botble\\ACL\\Models\\User',NULL,0,1,0,'2026-05-07 01:57:53','2026-05-07 01:57:53');

--
-- Table structure for table `categories_translations`
--

CREATE TABLE `categories_translations` (
  `lang_code` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL,
  `categories_id` bigint unsigned NOT NULL,
  `name` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `description` varchar(400) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  PRIMARY KEY (`lang_code`,`categories_id`),
  KEY `idx_categories_trans_categories_id` (`categories_id`),
  KEY `idx_categories_trans_category_lang` (`categories_id`,`lang_code`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `categories_translations`
--

INSERT INTO `categories_translations` VALUES ('ar',1,'Yoga &amp; Mindfulness','Flows, breathwork, and mindful movement to anchor your practice on and off the mat.'),('ar',2,'Running','Training plans, gear edits, and pacing tips for road, trail, and treadmill miles.'),('ar',3,'Strength Training','Gym wear, lifting routines, and progressive overload guidance for sustainable strength.'),('ar',4,'Recovery','Stretching, mobility, and post-workout rituals that protect your training streak.'),('ar',5,'Activewear Trends','Fabric innovations, color stories, and seasonal capsule edits for studio to street.'),('fr',1,'Yoga &amp; Mindfulness','Flows, breathwork, and mindful movement to anchor your practice on and off the mat.'),('fr',2,'Running','Training plans, gear edits, and pacing tips for road, trail, and treadmill miles.'),('fr',3,'Strength Training','Gym wear, lifting routines, and progressive overload guidance for sustainable strength.'),('fr',4,'Recovery','Stretching, mobility, and post-workout rituals that protect your training streak.'),('fr',5,'Activewear Trends','Fabric innovations, color stories, and seasonal capsule edits for studio to street.'),('id',1,'Yoga &amp; Mindfulness','Flows, breathwork, and mindful movement to anchor your practice on and off the mat.'),('id',2,'Running','Training plans, gear edits, and pacing tips for road, trail, and treadmill miles.'),('id',3,'Strength Training','Gym wear, lifting routines, and progressive overload guidance for sustainable strength.'),('id',4,'Recovery','Stretching, mobility, and post-workout rituals that protect your training streak.'),('id',5,'Activewear Trends','Fabric innovations, color stories, and seasonal capsule edits for studio to street.'),('vi',1,'Yoga &amp; Mindfulness','Flows, breathwork, and mindful movement to anchor your practice on and off the mat.'),('vi',2,'Running','Training plans, gear edits, and pacing tips for road, trail, and treadmill miles.'),('vi',3,'Strength Training','Gym wear, lifting routines, and progressive overload guidance for sustainable strength.'),('vi',4,'Recovery','Stretching, mobility, and post-workout rituals that protect your training streak.'),('vi',5,'Activewear Trends','Fabric innovations, color stories, and seasonal capsule edits for studio to street.');

--
-- Table structure for table `cities`
--

CREATE TABLE `cities` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `name` varchar(120) COLLATE utf8mb4_unicode_ci NOT NULL,
  `slug` varchar(120) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `state_id` bigint unsigned DEFAULT NULL,
  `country_id` bigint unsigned DEFAULT NULL,
  `record_id` varchar(40) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `order` tinyint NOT NULL DEFAULT '0',
  `image` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `is_default` tinyint unsigned NOT NULL DEFAULT '0',
  `status` varchar(60) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'published',
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  `zip_code` varchar(20) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  PRIMARY KEY (`id`),
  UNIQUE KEY `cities_slug_unique` (`slug`),
  KEY `idx_cities_name` (`name`),
  KEY `idx_cities_state_status` (`state_id`,`status`),
  KEY `idx_cities_status` (`status`),
  KEY `idx_cities_state_id` (`state_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `cities`
--


--
-- Table structure for table `cities_translations`
--

CREATE TABLE `cities_translations` (
  `lang_code` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL,
  `cities_id` bigint unsigned NOT NULL,
  `name` varchar(120) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `slug` varchar(120) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  PRIMARY KEY (`lang_code`,`cities_id`),
  KEY `idx_cities_trans_city_lang` (`cities_id`,`lang_code`),
  KEY `idx_cities_trans_name` (`name`),
  KEY `idx_cities_trans_cities_id` (`cities_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `cities_translations`
--


--
-- Table structure for table `contact_custom_field_options`
--

CREATE TABLE `contact_custom_field_options` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `custom_field_id` bigint unsigned NOT NULL,
  `label` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `value` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
  `order` int NOT NULL DEFAULT '999',
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `contact_custom_field_options`
--


--
-- Table structure for table `contact_custom_field_options_translations`
--

CREATE TABLE `contact_custom_field_options_translations` (
  `contact_custom_field_options_id` bigint unsigned NOT NULL,
  `lang_code` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
  `label` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `value` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  PRIMARY KEY (`lang_code`,`contact_custom_field_options_id`),
  KEY `idx_contact_cfo_trans_cfo_id` (`contact_custom_field_options_id`),
  KEY `idx_contact_cfo_trans_cfo_lang` (`contact_custom_field_options_id`,`lang_code`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `contact_custom_field_options_translations`
--


--
-- Table structure for table `contact_custom_fields`
--

CREATE TABLE `contact_custom_fields` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `type` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
  `required` tinyint(1) NOT NULL DEFAULT '0',
  `name` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
  `placeholder` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `order` int NOT NULL DEFAULT '999',
  `status` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'published',
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `contact_custom_fields`
--


--
-- Table structure for table `contact_custom_fields_translations`
--

CREATE TABLE `contact_custom_fields_translations` (
  `contact_custom_fields_id` bigint unsigned NOT NULL,
  `lang_code` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
  `name` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `placeholder` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  PRIMARY KEY (`lang_code`,`contact_custom_fields_id`),
  KEY `idx_contact_cf_trans_cf_id` (`contact_custom_fields_id`),
  KEY `idx_contact_cf_trans_cf_lang` (`contact_custom_fields_id`,`lang_code`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `contact_custom_fields_translations`
--


--
-- Table structure for table `contact_replies`
--

CREATE TABLE `contact_replies` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `message` longtext COLLATE utf8mb4_unicode_ci NOT NULL,
  `contact_id` bigint unsigned NOT NULL,
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `contact_replies`
--


--
-- Table structure for table `contacts`
--

CREATE TABLE `contacts` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `name` varchar(60) COLLATE utf8mb4_unicode_ci NOT NULL,
  `email` varchar(60) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `phone` varchar(60) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `address` varchar(120) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `subject` varchar(120) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `content` longtext COLLATE utf8mb4_unicode_ci NOT NULL,
  `custom_fields` text COLLATE utf8mb4_unicode_ci,
  `status` varchar(60) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'unread',
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `contacts`
--

INSERT INTO `contacts` VALUES (1,'Sophia Bennett','sophia.bennett@example.com','+1-415-555-0142','124 Folsom Street, San Francisco, CA','Question about international shipping rates','Hi team — could you tell me whether you ship to Singapore and what the typical delivery window is for the spring outerwear collection? Many thanks.',NULL,'read','2026-05-07 01:57:52','2026-05-07 01:57:52'),(2,'Marcus Tan','marcus.tan@example.com','+44-20-7946-0312','47 Hatton Garden, London EC1N','Wholesale enquiry — boutique partnership','Good morning. I run a curated mens boutique in central London. We would love to discuss stocking a small selection of your accessories range. Could you send over your wholesale lookbook and minimum order quantities?',NULL,'unread','2026-05-07 01:57:52','2026-05-07 01:57:52'),(3,'Elena Rodriguez','elena.rodriguez@example.com','+34-93-555-0188','Carrer de Mallorca 287, Barcelona','Order #AM-10458 — color confirmation','Could you confirm the exact shade of the walnut side table I ordered last week? I want to make sure it matches the rest of my living room before it ships.',NULL,'read','2026-05-07 01:57:52','2026-05-07 01:57:52');

--
-- Table structure for table `countries`
--

CREATE TABLE `countries` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `name` varchar(120) COLLATE utf8mb4_unicode_ci NOT NULL,
  `nationality` varchar(120) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `order` tinyint NOT NULL DEFAULT '0',
  `image` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `is_default` tinyint unsigned NOT NULL DEFAULT '0',
  `status` varchar(60) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'published',
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  `code` varchar(10) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  PRIMARY KEY (`id`),
  KEY `idx_countries_name` (`name`),
  KEY `idx_countries_status` (`status`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `countries`
--


--
-- Table structure for table `countries_translations`
--

CREATE TABLE `countries_translations` (
  `lang_code` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL,
  `countries_id` bigint unsigned NOT NULL,
  `name` varchar(120) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `nationality` varchar(120) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  PRIMARY KEY (`lang_code`,`countries_id`),
  KEY `idx_countries_trans_country_lang` (`countries_id`,`lang_code`),
  KEY `idx_countries_trans_name` (`name`),
  KEY `idx_countries_trans_countries_id` (`countries_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `countries_translations`
--


--
-- Table structure for table `dashboard_widget_settings`
--

CREATE TABLE `dashboard_widget_settings` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `settings` text COLLATE utf8mb4_unicode_ci,
  `user_id` bigint unsigned NOT NULL,
  `widget_id` bigint unsigned NOT NULL,
  `order` tinyint unsigned NOT NULL DEFAULT '0',
  `status` tinyint unsigned NOT NULL DEFAULT '1',
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  PRIMARY KEY (`id`),
  KEY `dashboard_widget_settings_user_id_index` (`user_id`),
  KEY `dashboard_widget_settings_widget_id_index` (`widget_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `dashboard_widget_settings`
--


--
-- Table structure for table `dashboard_widgets`
--

CREATE TABLE `dashboard_widgets` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `name` varchar(120) COLLATE utf8mb4_unicode_ci NOT NULL,
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `dashboard_widgets`
--


--
-- Table structure for table `device_tokens`
--

CREATE TABLE `device_tokens` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `token` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
  `platform` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `app_version` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `device_id` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `user_type` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `user_id` bigint unsigned DEFAULT NULL,
  `is_active` tinyint(1) NOT NULL DEFAULT '1',
  `last_used_at` timestamp NULL DEFAULT NULL,
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  PRIMARY KEY (`id`),
  UNIQUE KEY `device_tokens_token_unique` (`token`),
  KEY `device_tokens_user_type_user_id_index` (`user_type`,`user_id`),
  KEY `device_tokens_platform_is_active_index` (`platform`,`is_active`),
  KEY `device_tokens_is_active_index` (`is_active`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `device_tokens`
--


--
-- Table structure for table `ec_abandoned_carts`
--

CREATE TABLE `ec_abandoned_carts` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `customer_id` bigint unsigned DEFAULT NULL,
  `session_id` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `cart_data` json NOT NULL,
  `total_amount` decimal(15,2) NOT NULL DEFAULT '0.00',
  `items_count` int NOT NULL DEFAULT '0',
  `email` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `phone` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `customer_name` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `abandoned_at` timestamp NULL DEFAULT NULL,
  `reminder_sent_at` timestamp NULL DEFAULT NULL,
  `reminders_sent` int NOT NULL DEFAULT '0',
  `last_email_sequence` tinyint unsigned NOT NULL DEFAULT '0',
  `recovery_token` varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `coupon_code` varchar(32) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `clicked_at` timestamp NULL DEFAULT NULL,
  `unsubscribe_token` varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `unsubscribed_at` timestamp NULL DEFAULT NULL,
  `is_recovered` tinyint(1) NOT NULL DEFAULT '0',
  `recovered_at` timestamp NULL DEFAULT NULL,
  `recovered_order_id` bigint unsigned DEFAULT NULL,
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  PRIMARY KEY (`id`),
  UNIQUE KEY `ec_abandoned_carts_recovery_token_unique` (`recovery_token`),
  UNIQUE KEY `ec_abandoned_carts_unsubscribe_token_unique` (`unsubscribe_token`),
  KEY `ec_abandoned_carts_abandoned_at_is_recovered_index` (`abandoned_at`,`is_recovered`),
  KEY `ec_abandoned_carts_created_at_is_recovered_index` (`created_at`,`is_recovered`),
  KEY `ec_abandoned_carts_customer_id_index` (`customer_id`),
  KEY `ec_abandoned_carts_session_id_index` (`session_id`),
  KEY `ec_abandoned_carts_email_index` (`email`),
  KEY `ec_abandoned_carts_recovered_order_id_index` (`recovered_order_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_abandoned_carts`
--


--
-- Table structure for table `ec_brands`
--

CREATE TABLE `ec_brands` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `name` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
  `description` mediumtext COLLATE utf8mb4_unicode_ci,
  `website` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `logo` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `status` varchar(60) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'published',
  `order` tinyint unsigned NOT NULL DEFAULT '0',
  `is_featured` tinyint unsigned NOT NULL DEFAULT '0',
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=13 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_brands`
--

INSERT INTO `ec_brands` VALUES (1,'Anthro','Eclectic apparel and home goods inspired by global craftsmanship traditions.','https://example.com/anthro','brands/anthro.png','published',0,1,'2026-05-07 01:57:53','2026-05-07 01:57:53'),(2,'Anvouge','Modern fashion essentials cut from sustainable fibers.','https://example.com/anvouge','brands/anvouge.png','published',1,1,'2026-05-07 01:57:53','2026-05-07 01:57:53'),(3,'Bohome','Bohemian-inspired homewares and textiles for the relaxed modern home.','https://example.com/bohome','brands/bohome.png','published',2,1,'2026-05-07 01:57:53','2026-05-07 01:57:53'),(4,'Carolin','Demi-fine jewelry made by hand in small Italian ateliers.','https://example.com/carolin','brands/carolin.png','published',3,1,'2026-05-07 01:57:53','2026-05-07 01:57:53'),(5,'Cheryl','Bold prints and silhouettes for the contemporary woman.','https://example.com/cheryl','brands/cheryl.png','published',4,0,'2026-05-07 01:57:53','2026-05-07 01:57:53'),(6,'Crate','Mid-century-inspired furniture built to last generations.','https://example.com/crate','brands/crate.png','published',5,1,'2026-05-07 01:57:53','2026-05-07 01:57:53'),(7,'Findr','Audio gear engineered for studio-grade clarity in everyday environments.','https://example.com/findr','brands/findr.png','published',6,0,'2026-05-07 01:57:53','2026-05-07 01:57:53'),(8,'Intdeco','Interior accents that bridge minimalism and warmth.','https://example.com/intdeco','brands/intdeco.png','published',7,0,'2026-05-07 01:57:53','2026-05-07 01:57:53'),(9,'Modave','Performance activewear made with recycled high-stretch knits.','https://example.com/modave','brands/modave.png','published',8,0,'2026-05-07 01:57:53','2026-05-07 01:57:53'),(10,'Panadoxn','Botanical skincare formulated by clinical herbalists.','https://example.com/panadoxn','brands/panadoxn.png','published',9,0,'2026-05-07 01:57:53','2026-05-07 01:57:53'),(11,'Shangxi','Heritage tea, ceramics, and meditation accessories.','https://example.com/shangxi','brands/shangxi.png','published',10,0,'2026-05-07 01:57:53','2026-05-07 01:57:53'),(12,'Sopify','Smart home devices designed for renters and travelers.','https://example.com/sopify','brands/sopify.png','published',11,0,'2026-05-07 01:57:53','2026-05-07 01:57:53');

--
-- Table structure for table `ec_brands_translations`
--

CREATE TABLE `ec_brands_translations` (
  `lang_code` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
  `ec_brands_id` bigint unsigned NOT NULL,
  `name` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `description` mediumtext COLLATE utf8mb4_unicode_ci,
  PRIMARY KEY (`lang_code`,`ec_brands_id`),
  KEY `idx_brands_fk` (`ec_brands_id`),
  KEY `idx_brands_brands_lang` (`ec_brands_id`,`lang_code`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_brands_translations`
--

INSERT INTO `ec_brands_translations` VALUES ('ar',1,'Anthro','ملابس ومستلزمات منزلية انتقائية مستوحاة من الحرف التقليدية حول العالم.'),('ar',2,'Anvouge','أساسيات عصرية مفصّلة من خيوط مستدامة.'),('ar',3,'Bohome','مفروشات ومنسوجات بروح بوهيمية للمنزل العصري المريح.'),('ar',4,'Carolin','مجوهرات شبه فاخرة تُصنع يدوياً في ورش إيطالية صغيرة.'),('ar',5,'Cheryl','نقوش مميّزة وقصّات جريئة للمرأة العصرية.'),('ar',6,'Crate','أثاث مستوحى من طراز منتصف القرن، يُصنع ليدوم لأجيال.'),('ar',7,'Findr','أجهزة صوت مصمّمة لتقدّم نقاء الاستوديو في الاستخدام اليومي.'),('ar',8,'Intdeco','إكسسوارات داخلية تجمع بين البساطة والدفء.'),('ar',9,'Modave','ملابس رياضية عالية الأداء من أقمشة مطّاطية معاد تدويرها.'),('ar',10,'Panadoxn','منتجات تجميل طبيعية مصاغة على يد خبراء في علم النباتات السريري.'),('ar',11,'Shangxi','شاي تراثي وخزفيات ولوازم تأمل.'),('ar',12,'Sopify','أجهزة منزل ذكية مصمّمة للمستأجرين والمسافرين.'),('fr',1,'Anthro','Vêtements et articles pour la maison éclectiques, inspirés des traditions artisanales du monde entier.'),('fr',2,'Anvouge','Essentiels modernes coupés dans des fibres durables.'),('fr',3,'Bohome','Textiles et objets déco d\'inspiration bohème pour un intérieur contemporain et apaisé.'),('fr',4,'Carolin','Bijoux demi-fins fabriqués à la main dans de petits ateliers italiens.'),('fr',5,'Cheryl','Imprimés affirmés et coupes audacieuses pour la femme contemporaine.'),('fr',6,'Crate','Mobilier d\'inspiration mid-century, conçu pour traverser les générations.'),('fr',7,'Findr','Matériel audio pensé pour offrir une qualité studio dans le quotidien.'),('fr',8,'Intdeco','Pièces déco qui marient minimalisme et chaleur intérieure.'),('fr',9,'Modave','Vêtements de sport haute performance en élasthanne recyclé.'),('fr',10,'Panadoxn','Cosmétiques d\'origine naturelle, formulés par des herboristes cliniques.'),('fr',11,'Shangxi','Thés patrimoniaux, céramiques et accessoires de méditation.'),('fr',12,'Sopify','Objets connectés pensés pour les locataires et les voyageurs.'),('id',1,'Anthro','Pakaian dan perabot rumah eklektik yang terinspirasi dari tradisi kerajinan dunia.'),('id',2,'Anvouge','Esensial fesyen modern yang dijahit dari serat berkelanjutan.'),('id',3,'Bohome','Perabot rumah dan tekstil bernuansa bohemian untuk hunian modern yang santai.'),('id',4,'Carolin','Perhiasan demi-fine yang dibuat dengan tangan di atelier-atelier kecil di Italia.'),('id',5,'Cheryl','Motif dan siluet berkarakter untuk perempuan masa kini.'),('id',6,'Crate','Furnitur bergaya mid-century yang dibuat secara berkelanjutan untuk diwariskan lintas generasi.'),('id',7,'Findr','Perangkat audio yang dirancang untuk kejernihan kelas studio dalam pemakaian sehari-hari.'),('id',8,'Intdeco','Aksen interior yang memadukan minimalisme dengan kehangatan.'),('id',9,'Modave','Perlengkapan olahraga performa tinggi yang dibuat dari kain stretch daur ulang.'),('id',10,'Panadoxn','Kosmetik alami yang diformulasikan oleh ahli herbalis klinis.'),('id',11,'Shangxi','Teh warisan, keramik, dan perlengkapan meditasi.'),('id',12,'Sopify','Perangkat rumah pintar yang dirancang untuk penyewa dan para pelancong.'),('vi',1,'Anthro','Trang phục và đồ gia dụng đa phong cách lấy cảm hứng từ truyền thống thủ công toàn cầu.'),('vi',2,'Anvouge','Đồ thời trang thiết yếu hiện đại được cắt may từ sợi bền vững.'),('vi',3,'Bohome','Đồ gia dụng và dệt may cảm hứng bohemian cho ngôi nhà hiện đại thư thái.'),('vi',4,'Carolin','Trang sức demi-fine làm thủ công tại các xưởng nhỏ ở Ý.'),('vi',5,'Cheryl','Họa tiết và phom dáng nổi bật dành cho phụ nữ hiện đại.'),('vi',6,'Crate','Nội thất cảm hứng mid-century được chế tác bền vững qua nhiều thế hệ.'),('vi',7,'Findr','Thiết bị âm thanh thiết kế cho độ rõ chuẩn studio trong môi trường thường ngày.'),('vi',8,'Intdeco','Điểm nhấn nội thất kết hợp giữa tối giản và ấm cúng.'),('vi',9,'Modave','Đồ tập hiệu năng cao làm từ vải thun co giãn tái chế.'),('vi',10,'Panadoxn','Mỹ phẩm thiên nhiên được nghiên cứu bởi các chuyên gia thảo dược lâm sàng.'),('vi',11,'Shangxi','Trà di sản, gốm sứ và phụ kiện thiền.'),('vi',12,'Sopify','Thiết bị nhà thông minh thiết kế dành cho người thuê nhà và du khách.');

--
-- Table structure for table `ec_cart`
--

CREATE TABLE `ec_cart` (
  `identifier` varchar(60) COLLATE utf8mb4_unicode_ci NOT NULL,
  `instance` varchar(60) COLLATE utf8mb4_unicode_ci NOT NULL,
  `customer_id` bigint unsigned DEFAULT NULL,
  `content` longtext COLLATE utf8mb4_unicode_ci NOT NULL,
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  PRIMARY KEY (`identifier`,`instance`),
  KEY `ec_cart_customer_instance_index` (`customer_id`,`instance`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_cart`
--


--
-- Table structure for table `ec_currencies`
--

CREATE TABLE `ec_currencies` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `title` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
  `symbol` varchar(10) COLLATE utf8mb4_unicode_ci NOT NULL,
  `is_prefix_symbol` tinyint unsigned NOT NULL DEFAULT '0',
  `decimals` tinyint unsigned DEFAULT '0',
  `number_format_style` varchar(50) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'western',
  `space_between_price_and_currency` tinyint(1) NOT NULL DEFAULT '0',
  `order` int unsigned DEFAULT '0',
  `is_default` tinyint NOT NULL DEFAULT '0',
  `exchange_rate` double NOT NULL DEFAULT '1',
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_currencies`
--

INSERT INTO `ec_currencies` VALUES (1,'USD','$',1,2,'western',0,0,1,1,'2026-05-07 01:57:52','2026-05-07 01:57:52'),(2,'EUR','€',0,2,'western',0,1,0,0.84,'2026-05-07 01:57:52','2026-05-07 01:57:52'),(3,'VND','₫',0,0,'western',0,2,0,23203,'2026-05-07 01:57:52','2026-05-07 01:57:52'),(4,'NGN','₦',1,2,'western',0,2,0,895.52,'2026-05-07 01:57:52','2026-05-07 01:57:52');

--
-- Table structure for table `ec_customer_addresses`
--

CREATE TABLE `ec_customer_addresses` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `name` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
  `email` varchar(60) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `phone` varchar(20) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `country` varchar(120) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `state` varchar(120) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `city` varchar(120) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `address` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `customer_id` bigint unsigned NOT NULL,
  `is_default` tinyint unsigned NOT NULL DEFAULT '0',
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  `zip_code` varchar(20) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=13 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_customer_addresses`
--

INSERT INTO `ec_customer_addresses` VALUES (1,'Emma Collins','customer@botble.com','+1-555-0107','CA','Illinois','Austin','741 Spruce Street',1,1,'2026-05-07 01:57:55','2026-05-07 01:57:55','33101'),(2,'Emma Collins','customer@botble.com','+1-555-0106','CA','California','Chicago','789 Pine Road',1,0,'2026-05-07 01:57:55','2026-05-07 01:57:55','19101'),(3,'Sophia Ramirez','vendor@botble.com','+1-555-0105','GB','Arizona','New York','987 Birch Boulevard',2,1,'2026-05-07 01:57:55','2026-05-07 01:57:55','60601'),(4,'Sophia Ramirez','vendor@botble.com','+1-555-0101','DE','Texas','Chicago','321 Maple Drive',2,0,'2026-05-07 01:57:55','2026-05-07 01:57:55','60601'),(5,'Olivia Carter','customer1@example.com','+1-555-0106','AU','California','Los Angeles','987 Birch Boulevard',3,1,'2026-05-07 01:57:56','2026-05-07 01:57:56','19101'),(6,'Ava Mitchell','customer2@example.com','+1-555-0105','GB','Illinois','Chicago','369 Cherry Circle',4,1,'2026-05-07 01:57:56','2026-05-07 01:57:56','19101'),(7,'Isabella Brooks','customer3@example.com','+1-555-0109','GB','California','Denver','321 Maple Drive',5,1,'2026-05-07 01:57:56','2026-05-07 01:57:56','85001'),(8,'James Whitfield','customer4@example.com','+1-555-0108','DE','Pennsylvania','Phoenix','456 Oak Avenue',6,1,'2026-05-07 01:57:56','2026-05-07 01:57:56','90210'),(9,'Liam Bennett','customer5@example.com','+1-555-0104','GB','Georgia','Los Angeles','789 Pine Road',7,1,'2026-05-07 01:57:57','2026-05-07 01:57:57','90210'),(10,'Noah Patterson','customer6@example.com','+1-555-0105','GB','California','Chicago','987 Birch Boulevard',8,1,'2026-05-07 01:57:57','2026-05-07 01:57:57','85001'),(11,'Charlotte Reed','customer7@example.com','+1-555-0104','CA','California','Dallas','789 Pine Road',9,1,'2026-05-07 01:57:57','2026-05-07 01:57:57','85001'),(12,'Amelia Foster','customer8@example.com','+1-555-0109','GB','Illinois','Denver','789 Pine Road',10,1,'2026-05-07 01:57:57','2026-05-07 01:57:57','19101');

--
-- Table structure for table `ec_customer_deletion_requests`
--

CREATE TABLE `ec_customer_deletion_requests` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `customer_id` bigint unsigned NOT NULL,
  `customer_name` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `customer_phone` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `customer_email` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `token` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
  `verification_code` varchar(6) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `code_expires_at` timestamp NULL DEFAULT NULL,
  `status` varchar(50) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'waiting_for_confirmation',
  `reason` text COLLATE utf8mb4_unicode_ci,
  `confirmed_at` datetime DEFAULT NULL,
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  PRIMARY KEY (`id`),
  UNIQUE KEY `ec_customer_deletion_requests_token_unique` (`token`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_customer_deletion_requests`
--


--
-- Table structure for table `ec_customer_password_resets`
--

CREATE TABLE `ec_customer_password_resets` (
  `email` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
  `token` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
  `created_at` timestamp NULL DEFAULT NULL,
  KEY `ec_customer_password_resets_email_index` (`email`),
  KEY `ec_customer_password_resets_token_index` (`token`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_customer_password_resets`
--


--
-- Table structure for table `ec_customer_recently_viewed_products`
--

CREATE TABLE `ec_customer_recently_viewed_products` (
  `customer_id` bigint unsigned NOT NULL,
  `product_id` bigint unsigned NOT NULL,
  PRIMARY KEY (`customer_id`,`product_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_customer_recently_viewed_products`
--


--
-- Table structure for table `ec_customer_used_coupons`
--

CREATE TABLE `ec_customer_used_coupons` (
  `discount_id` bigint unsigned NOT NULL,
  `customer_id` bigint unsigned NOT NULL,
  PRIMARY KEY (`discount_id`,`customer_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_customer_used_coupons`
--


--
-- Table structure for table `ec_customers`
--

CREATE TABLE `ec_customers` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `name` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
  `email` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `password` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
  `avatar` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `dob` date DEFAULT NULL,
  `tax_class` varchar(50) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'regular',
  `tax_id` varchar(191) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `phone` varchar(20) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `remember_token` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  `confirmed_at` datetime DEFAULT NULL,
  `email_verify_token` varchar(120) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `is_vendor` tinyint(1) NOT NULL DEFAULT '0',
  `vendor_verified_at` datetime DEFAULT NULL,
  `status` varchar(60) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'activated',
  `block_reason` varchar(400) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `private_notes` text COLLATE utf8mb4_unicode_ci,
  `stripe_account_id` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `stripe_account_active` tinyint(1) NOT NULL DEFAULT '0',
  PRIMARY KEY (`id`),
  KEY `ec_customers_is_vendor_index` (`is_vendor`),
  KEY `ec_customers_vendor_verified_at_index` (`vendor_verified_at`)
) ENGINE=InnoDB AUTO_INCREMENT=11 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_customers`
--

INSERT INTO `ec_customers` VALUES (1,'Emma Collins','customer@botble.com','$2y$12$rAlqoeo/YrtiI.Ucf3c1Cetokp2dNiGJfKGB/jX.HoRqbrSkXL6SC','testimonials/avatar-1.jpg','1988-05-01','regular',NULL,'+1-555-0101',NULL,'2026-05-07 01:57:55','2026-05-07 01:57:55','2026-05-07 08:57:55',NULL,0,NULL,'activated',NULL,NULL,NULL,0),(2,'Sophia Ramirez','vendor@botble.com','$2y$12$6OtjiwBbGi/RQQqpaO1Id.hDmr9tKmDoR.//fOx6Bfngnavt0AMvq','testimonials/avatar-2.jpg','1976-05-02','regular',NULL,'+1-555-0102',NULL,'2026-05-07 01:57:55','2026-05-07 01:57:55','2026-05-07 08:57:55',NULL,0,NULL,'activated',NULL,NULL,NULL,0),(3,'Olivia Carter','customer1@example.com','$2y$12$M7wEK2KoLQKZBnaeVk1BcO8wQSKJpWYUH6Hvgw2mO7RslsGgs7AMW','testimonials/avatar-3.jpg','2004-04-11','regular',NULL,'+1-555-0110',NULL,'2026-05-07 01:57:56','2026-05-07 01:57:56','2026-05-07 08:57:55',NULL,0,NULL,'activated',NULL,NULL,NULL,0),(4,'Ava Mitchell','customer2@example.com','$2y$12$qPcgGpEcBdvyEuxJhoFE2uUGzBmYaEcAjXVD/kyHGozW9XhmmywPW','testimonials/avatar-4.jpg','1997-05-02','regular',NULL,'+1-555-0110',NULL,'2026-05-07 01:57:56','2026-05-07 01:57:56','2026-05-07 08:57:55',NULL,0,NULL,'activated',NULL,NULL,NULL,0),(5,'Isabella Brooks','customer3@example.com','$2y$12$25oPL5Ls3uUDnkbZ8YF5TuTv8mMXkYtaMHJ5lLTf0YDNvm.QiEytO','testimonials/avatar-5.jpg','1997-04-10','regular',NULL,'+1-555-0102',NULL,'2026-05-07 01:57:56','2026-05-07 01:57:56','2026-05-07 08:57:55',NULL,0,NULL,'activated',NULL,NULL,NULL,0),(6,'James Whitfield','customer4@example.com','$2y$12$DQn8Q8l96/Z.bkKKfeO4t.7oFEBwxxfsIzOWvWBYkNZAbPQo9JxKm','testimonials/avatar-6.jpg','1987-04-11','regular',NULL,'+1-555-0108',NULL,'2026-05-07 01:57:56','2026-05-07 01:57:56','2026-05-07 08:57:55',NULL,0,NULL,'activated',NULL,NULL,NULL,0),(7,'Liam Bennett','customer5@example.com','$2y$12$H6Fq8.DRN7bVL84iEnxRIeipkCH.WIZZvTN9Kh9qJy08WDF8d3Nsm','testimonials/avatar-7.jpg','1985-05-06','regular',NULL,'+1-555-0104',NULL,'2026-05-07 01:57:57','2026-05-07 01:57:57','2026-05-07 08:57:55',NULL,0,NULL,'activated',NULL,NULL,NULL,0),(8,'Noah Patterson','customer6@example.com','$2y$12$L1.GffSn9edqk2rVqyJbCed3e20RtNDXDkk2a6mNwu0iwXPV7ibue','testimonials/avatar-8.jpg','1986-04-11','regular',NULL,'+1-555-0110',NULL,'2026-05-07 01:57:57','2026-05-07 01:57:57','2026-05-07 08:57:55',NULL,0,NULL,'activated',NULL,NULL,NULL,0),(9,'Charlotte Reed','customer7@example.com','$2y$12$Y5XlqbsQLfCOK63ajPJIN.F0uo3UftlvIDhHdKa/ps2f.Il/55kW6','testimonials/avatar-9.jpg','1995-04-18','regular',NULL,'+1-555-0107',NULL,'2026-05-07 01:57:57','2026-05-07 01:57:57','2026-05-07 08:57:55',NULL,0,NULL,'activated',NULL,NULL,NULL,0),(10,'Amelia Foster','customer8@example.com','$2y$12$scpD.dddNYmQLiMuH/9meO4eeFM3kIMrljh/M5tG0YSVH4SsrwAqa','testimonials/avatar-10.jpg','1996-05-04','regular',NULL,'+1-555-0101',NULL,'2026-05-07 01:57:57','2026-05-07 01:57:57','2026-05-07 08:57:55',NULL,0,NULL,'activated',NULL,NULL,NULL,0);

--
-- Table structure for table `ec_discount_customers`
--

CREATE TABLE `ec_discount_customers` (
  `discount_id` bigint unsigned NOT NULL,
  `customer_id` bigint unsigned NOT NULL,
  PRIMARY KEY (`discount_id`,`customer_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_discount_customers`
--


--
-- Table structure for table `ec_discount_product_categories`
--

CREATE TABLE `ec_discount_product_categories` (
  `discount_id` bigint unsigned NOT NULL,
  `product_category_id` bigint unsigned NOT NULL,
  PRIMARY KEY (`discount_id`,`product_category_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_discount_product_categories`
--


--
-- Table structure for table `ec_discount_product_collections`
--

CREATE TABLE `ec_discount_product_collections` (
  `discount_id` bigint unsigned NOT NULL,
  `product_collection_id` bigint unsigned NOT NULL,
  PRIMARY KEY (`discount_id`,`product_collection_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_discount_product_collections`
--


--
-- Table structure for table `ec_discount_products`
--

CREATE TABLE `ec_discount_products` (
  `discount_id` bigint unsigned NOT NULL,
  `product_id` bigint unsigned NOT NULL,
  PRIMARY KEY (`discount_id`,`product_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_discount_products`
--


--
-- Table structure for table `ec_discounts`
--

CREATE TABLE `ec_discounts` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `title` varchar(120) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `code` varchar(20) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `start_date` datetime DEFAULT NULL,
  `end_date` datetime DEFAULT NULL,
  `quantity` int DEFAULT NULL,
  `total_used` int unsigned NOT NULL DEFAULT '0',
  `value` double DEFAULT NULL,
  `type` varchar(60) COLLATE utf8mb4_unicode_ci DEFAULT 'coupon',
  `can_use_with_promotion` tinyint(1) NOT NULL DEFAULT '0',
  `can_use_with_flash_sale` tinyint(1) NOT NULL DEFAULT '0',
  `discount_on` varchar(20) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `product_quantity` int unsigned DEFAULT NULL,
  `type_option` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'amount',
  `target` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'all-orders',
  `min_order_price` decimal(15,2) DEFAULT NULL,
  `apply_via_url` tinyint(1) NOT NULL DEFAULT '0',
  `display_at_checkout` tinyint(1) NOT NULL DEFAULT '0',
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  `store_id` bigint unsigned DEFAULT NULL,
  `description` varchar(400) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  PRIMARY KEY (`id`),
  UNIQUE KEY `ec_discounts_code_unique` (`code`),
  KEY `ec_discounts_store_id_index` (`store_id`)
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_discounts`
--

INSERT INTO `ec_discounts` VALUES (1,'Welcome 10% Off','WELCOME10','2026-05-06 08:57:57','2026-07-06 08:57:57',NULL,0,10,'coupon',0,0,NULL,NULL,'percentage','all-orders',0.00,0,1,'2026-05-07 01:57:57','2026-05-07 01:57:57',NULL,'A welcome discount for first-time shoppers — 10% off any order.'),(2,'Free Shipping Over $50','FREESHIP','2026-05-06 08:57:57',NULL,NULL,0,100,'coupon',0,0,NULL,NULL,'shipping','all-orders',50.00,0,1,'2026-05-07 01:57:57','2026-05-07 01:57:57',NULL,'Free shipping on any order $50 or above.'),(3,'Spring Sale — $25 Off','SPRING25','2026-05-06 08:57:57','2026-06-06 08:57:57',500,0,25,'coupon',0,0,NULL,NULL,'amount','all-orders',150.00,0,1,'2026-05-07 01:57:57','2026-05-07 01:57:57',NULL,'A flat $25 off orders over $150.'),(4,'VIP Member 20% Off','VIP20','2026-05-06 08:57:57','2026-08-05 08:57:57',NULL,0,20,'coupon',0,0,NULL,NULL,'percentage','all-orders',100.00,0,1,'2026-05-07 01:57:57','2026-05-07 01:57:57',NULL,'Exclusive 20% off for newsletter subscribers.'),(5,'Bundle & Save $50','BUNDLE50','2026-05-06 08:57:57','2026-06-21 08:57:57',NULL,0,50,'coupon',0,0,NULL,NULL,'amount','all-orders',300.00,0,1,'2026-05-07 01:57:57','2026-05-07 01:57:57',NULL,'Save $50 when you spend $300 or more.');

--
-- Table structure for table `ec_flash_sale_products`
--

CREATE TABLE `ec_flash_sale_products` (
  `flash_sale_id` bigint unsigned NOT NULL,
  `product_id` bigint unsigned NOT NULL,
  `price` double unsigned DEFAULT NULL,
  `quantity` int unsigned DEFAULT NULL,
  `sold` int unsigned NOT NULL DEFAULT '0',
  KEY `ec_flash_sale_products_product_id_flash_sale_id_index` (`product_id`,`flash_sale_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_flash_sale_products`
--

INSERT INTO `ec_flash_sale_products` VALUES (1,4,69.3,50,0),(1,5,55.3,50,0),(1,3,48.3,50,0),(1,2,41.3,50,0),(1,1,62.3,50,0),(1,7,27.3,50,0),(1,6,34.3,50,0),(2,6,36.75,75,0),(2,3,51.75,75,0),(2,2,44.25,75,0),(2,7,29.25,75,0),(2,5,59.25,75,0),(2,4,74.25,75,0),(2,1,66.75,75,0);

--
-- Table structure for table `ec_flash_sales`
--

CREATE TABLE `ec_flash_sales` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `name` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
  `end_date` datetime NOT NULL,
  `status` varchar(60) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'published',
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_flash_sales`
--

INSERT INTO `ec_flash_sales` VALUES (1,'48-Hour Flash Sale','2026-05-09 08:57:57','published','2026-05-07 01:57:57','2026-05-07 01:57:57'),(2,'Weekend Doorbusters','2026-05-12 08:57:57','published','2026-05-07 01:57:57','2026-05-07 01:57:57');

--
-- Table structure for table `ec_flash_sales_translations`
--

CREATE TABLE `ec_flash_sales_translations` (
  `lang_code` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
  `ec_flash_sales_id` bigint unsigned NOT NULL,
  `name` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  PRIMARY KEY (`lang_code`,`ec_flash_sales_id`),
  KEY `idx_flash_sales_fk` (`ec_flash_sales_id`),
  KEY `idx_flash_sales_flash_sales_lang` (`ec_flash_sales_id`,`lang_code`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_flash_sales_translations`
--


--
-- Table structure for table `ec_global_option_value`
--

CREATE TABLE `ec_global_option_value` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `option_id` bigint unsigned NOT NULL COMMENT 'option id',
  `option_value` tinytext COLLATE utf8mb4_unicode_ci COMMENT 'option value',
  `affect_price` double DEFAULT NULL COMMENT 'value of price of this option affect',
  `order` int NOT NULL DEFAULT '9999',
  `affect_type` tinyint NOT NULL DEFAULT '0' COMMENT '0. fixed 1. percent',
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=8 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_global_option_value`
--

INSERT INTO `ec_global_option_value` VALUES (1,1,'No gift wrap',0,0,0,'2026-05-07 01:57:52','2026-05-07 01:57:52'),(2,1,'Standard kraft wrap',4.99,1,0,'2026-05-07 01:57:52','2026-05-07 01:57:52'),(3,1,'Premium silk-ribbon wrap',9.99,2,0,'2026-05-07 01:57:52','2026-05-07 01:57:52'),(4,2,'Up to 20 characters',14.99,0,0,'2026-05-07 01:57:52','2026-05-07 01:57:52'),(5,3,'Standard 1-year warranty',0,0,0,'2026-05-07 01:57:52','2026-05-07 01:57:52'),(6,3,'2-year extended warranty',29.99,1,0,'2026-05-07 01:57:52','2026-05-07 01:57:52'),(7,3,'3-year premium care',59.99,2,0,'2026-05-07 01:57:52','2026-05-07 01:57:52');

--
-- Table structure for table `ec_global_option_value_translations`
--

CREATE TABLE `ec_global_option_value_translations` (
  `lang_code` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
  `ec_global_option_value_id` bigint unsigned NOT NULL,
  `option_value` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  PRIMARY KEY (`lang_code`,`ec_global_option_value_id`),
  KEY `idx_global_option_value_fk` (`ec_global_option_value_id`),
  KEY `idx_global_option_value_global_option_value_lang` (`ec_global_option_value_id`,`lang_code`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_global_option_value_translations`
--

INSERT INTO `ec_global_option_value_translations` VALUES ('ar',1,'بدون تغليف هدية'),('ar',2,'تغليف ورقي كرافت قياسي'),('ar',3,'تغليف فاخر بشريط حريري'),('ar',4,'حتى 20 حرفاً'),('ar',5,'ضمان قياسي لمدة سنة'),('ar',6,'ضمان ممتد لسنتين'),('ar',7,'عناية مميّزة لثلاث سنوات'),('fr',1,'Sans emballage cadeau'),('fr',2,'Emballage kraft standard'),('fr',3,'Emballage premium ruban de soie'),('fr',4,'Jusqu\'à 20 caractères'),('fr',5,'Garantie standard 1 an'),('fr',6,'Garantie étendue 2 ans'),('fr',7,'Service premium 3 ans'),('id',1,'Tanpa bungkus kado'),('id',2,'Bungkus kertas kraft standar'),('id',3,'Bungkus pita sutra premium'),('id',4,'Maksimal 20 karakter'),('id',5,'Garansi standar 1 tahun'),('id',6,'Garansi diperpanjang 2 tahun'),('id',7,'Perawatan premium 3 tahun'),('vi',1,'Không gói quà'),('vi',2,'Gói giấy kraft tiêu chuẩn'),('vi',3,'Gói ruy băng lụa cao cấp'),('vi',4,'Tối đa 20 ký tự'),('vi',5,'Bảo hành tiêu chuẩn 1 năm'),('vi',6,'Bảo hành mở rộng 2 năm'),('vi',7,'Chăm sóc cao cấp 3 năm');

--
-- Table structure for table `ec_global_options`
--

CREATE TABLE `ec_global_options` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `name` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT 'Name of options',
  `option_type` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT 'option type',
  `required` tinyint(1) NOT NULL DEFAULT '0' COMMENT 'Checked if this option is required',
  `price_per_product` tinyint(1) NOT NULL DEFAULT '0',
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_global_options`
--

INSERT INTO `ec_global_options` VALUES (1,'Gift Wrapping','Botble\\Ecommerce\\Option\\OptionType\\Dropdown',0,0,'2026-05-07 01:57:52','2026-05-07 01:57:52'),(2,'Engraving','Botble\\Ecommerce\\Option\\OptionType\\Field',0,0,'2026-05-07 01:57:52','2026-05-07 01:57:52'),(3,'Extended Warranty','Botble\\Ecommerce\\Option\\OptionType\\RadioButton',0,0,'2026-05-07 01:57:52','2026-05-07 01:57:52');

--
-- Table structure for table `ec_global_options_translations`
--

CREATE TABLE `ec_global_options_translations` (
  `lang_code` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
  `ec_global_options_id` bigint unsigned NOT NULL,
  `name` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  PRIMARY KEY (`lang_code`,`ec_global_options_id`),
  KEY `idx_global_options_fk` (`ec_global_options_id`),
  KEY `idx_global_options_global_options_lang` (`ec_global_options_id`,`lang_code`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_global_options_translations`
--

INSERT INTO `ec_global_options_translations` VALUES ('ar',1,'تغليف الهدايا'),('ar',2,'النقش'),('ar',3,'الضمان الممتد'),('fr',1,'Emballage cadeau'),('fr',2,'Gravure'),('fr',3,'Garantie étendue'),('id',1,'Bungkus Kado'),('id',2,'Ukiran Nama'),('id',3,'Garansi Diperpanjang'),('vi',1,'Gói quà'),('vi',2,'Khắc tên'),('vi',3,'Bảo hành mở rộng');

--
-- Table structure for table `ec_grouped_products`
--

CREATE TABLE `ec_grouped_products` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `parent_product_id` bigint unsigned NOT NULL,
  `product_id` bigint unsigned NOT NULL,
  `fixed_qty` int NOT NULL DEFAULT '1',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_grouped_products`
--


--
-- Table structure for table `ec_invoice_item_tax_components`
--

CREATE TABLE `ec_invoice_item_tax_components` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `invoice_item_id` bigint unsigned NOT NULL,
  `name` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL,
  `code` varchar(50) COLLATE utf8mb4_unicode_ci NOT NULL,
  `rate` decimal(8,4) NOT NULL DEFAULT '0.0000',
  `amount` decimal(15,2) NOT NULL DEFAULT '0.00',
  `jurisdiction` varchar(191) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `metadata` json DEFAULT NULL,
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  PRIMARY KEY (`id`),
  KEY `idx_iitc_invoice_item` (`invoice_item_id`),
  CONSTRAINT `ec_invoice_item_tax_components_invoice_item_id_foreign` FOREIGN KEY (`invoice_item_id`) REFERENCES `ec_invoice_items` (`id`) ON DELETE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_invoice_item_tax_components`
--


--
-- Table structure for table `ec_invoice_items`
--

CREATE TABLE `ec_invoice_items` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `invoice_id` bigint unsigned NOT NULL,
  `reference_type` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
  `reference_id` bigint unsigned NOT NULL,
  `name` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
  `description` varchar(400) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `image` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `qty` int unsigned NOT NULL,
  `price` decimal(15,2) NOT NULL DEFAULT '0.00',
  `sub_total` decimal(15,2) unsigned NOT NULL,
  `tax_amount` decimal(15,2) unsigned NOT NULL DEFAULT '0.00',
  `discount_amount` decimal(15,2) unsigned NOT NULL DEFAULT '0.00',
  `amount` decimal(15,2) unsigned NOT NULL,
  `options` text COLLATE utf8mb4_unicode_ci,
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  PRIMARY KEY (`id`),
  KEY `ec_invoice_items_reference_type_reference_id_index` (`reference_type`,`reference_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_invoice_items`
--


--
-- Table structure for table `ec_invoices`
--

CREATE TABLE `ec_invoices` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `reference_type` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
  `reference_id` bigint unsigned NOT NULL,
  `code` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
  `customer_name` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `company_name` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `company_logo` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `customer_email` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `customer_phone` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `customer_address` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `customer_country` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `customer_state` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `customer_city` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `customer_zip_code` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `customer_address_line` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `customer_tax_id` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `sub_total` decimal(15,2) unsigned NOT NULL,
  `tax_amount` decimal(15,2) DEFAULT '0.00',
  `shipping_amount` decimal(15,2) unsigned NOT NULL DEFAULT '0.00',
  `shipping_tax_amount` decimal(15,2) DEFAULT '0.00',
  `payment_fee` decimal(15,2) DEFAULT '0.00',
  `discount_amount` decimal(15,2) unsigned NOT NULL DEFAULT '0.00',
  `shipping_option` varchar(60) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `shipping_method` varchar(60) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'default',
  `coupon_code` varchar(120) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `discount_description` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `amount` decimal(15,2) unsigned NOT NULL,
  `description` text COLLATE utf8mb4_unicode_ci,
  `payment_id` bigint unsigned DEFAULT NULL,
  `status` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'pending',
  `paid_at` timestamp NULL DEFAULT NULL,
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  PRIMARY KEY (`id`),
  UNIQUE KEY `ec_invoices_code_unique` (`code`),
  KEY `ec_invoices_reference_type_reference_id_index` (`reference_type`,`reference_id`),
  KEY `ec_invoices_payment_id_index` (`payment_id`),
  KEY `ec_invoices_status_index` (`status`),
  KEY `ec_invoices_reference_id_reference_type_index` (`reference_id`,`reference_type`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_invoices`
--


--
-- Table structure for table `ec_option_value`
--

CREATE TABLE `ec_option_value` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `option_id` bigint unsigned NOT NULL COMMENT 'option id',
  `option_value` tinytext COLLATE utf8mb4_unicode_ci COMMENT 'option value',
  `affect_price` double DEFAULT NULL COMMENT 'value of price of this option affect',
  `order` int NOT NULL DEFAULT '9999',
  `affect_type` tinyint NOT NULL DEFAULT '0' COMMENT '0. fixed 1. percent',
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_option_value`
--


--
-- Table structure for table `ec_option_value_translations`
--

CREATE TABLE `ec_option_value_translations` (
  `lang_code` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
  `ec_option_value_id` bigint unsigned NOT NULL,
  `option_value` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  PRIMARY KEY (`lang_code`,`ec_option_value_id`),
  KEY `idx_option_value_fk` (`ec_option_value_id`),
  KEY `idx_option_value_option_value_lang` (`ec_option_value_id`,`lang_code`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_option_value_translations`
--


--
-- Table structure for table `ec_options`
--

CREATE TABLE `ec_options` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `name` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT 'Name of options',
  `option_type` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT 'option type',
  `product_id` bigint unsigned NOT NULL DEFAULT '0',
  `order` int NOT NULL DEFAULT '9999',
  `required` tinyint(1) NOT NULL DEFAULT '0' COMMENT 'Checked if this option is required',
  `price_per_product` tinyint(1) NOT NULL DEFAULT '0',
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_options`
--


--
-- Table structure for table `ec_options_translations`
--

CREATE TABLE `ec_options_translations` (
  `lang_code` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
  `ec_options_id` bigint unsigned NOT NULL,
  `name` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  PRIMARY KEY (`lang_code`,`ec_options_id`),
  KEY `idx_options_fk` (`ec_options_id`),
  KEY `idx_options_options_lang` (`ec_options_id`,`lang_code`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_options_translations`
--


--
-- Table structure for table `ec_order_addresses`
--

CREATE TABLE `ec_order_addresses` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `name` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
  `phone` varchar(20) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `email` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `country` varchar(120) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `state` varchar(120) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `city` varchar(120) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `address` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `order_id` bigint unsigned NOT NULL,
  `zip_code` varchar(20) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `type` varchar(60) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'shipping_address',
  PRIMARY KEY (`id`),
  UNIQUE KEY `ec_order_addresses_order_id_type_unique` (`order_id`,`type`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_order_addresses`
--


--
-- Table structure for table `ec_order_histories`
--

CREATE TABLE `ec_order_histories` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `action` varchar(120) COLLATE utf8mb4_unicode_ci NOT NULL,
  `description` varchar(400) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `user_id` bigint unsigned DEFAULT NULL,
  `order_id` bigint unsigned NOT NULL,
  `extras` text COLLATE utf8mb4_unicode_ci,
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_order_histories`
--


--
-- Table structure for table `ec_order_metadata`
--

CREATE TABLE `ec_order_metadata` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `order_id` bigint unsigned NOT NULL,
  `meta_key` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
  `meta_value` text COLLATE utf8mb4_unicode_ci,
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  PRIMARY KEY (`id`),
  KEY `ec_order_metadata_order_id_meta_key_index` (`order_id`,`meta_key`),
  KEY `ec_order_metadata_order_id_index` (`order_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_order_metadata`
--


--
-- Table structure for table `ec_order_product`
--

CREATE TABLE `ec_order_product` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `order_id` bigint unsigned NOT NULL,
  `qty` int NOT NULL,
  `price` decimal(15,2) NOT NULL,
  `tax_amount` decimal(15,2) DEFAULT '0.00',
  `tax_breakdown` json DEFAULT NULL,
  `options` text COLLATE utf8mb4_unicode_ci,
  `product_options` text COLLATE utf8mb4_unicode_ci COMMENT 'product option data',
  `product_id` bigint unsigned DEFAULT NULL,
  `product_name` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
  `product_image` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `weight` double DEFAULT '0',
  `restock_quantity` int unsigned DEFAULT '0',
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  `product_type` varchar(60) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'physical',
  `times_downloaded` int NOT NULL DEFAULT '0',
  `license_code` text COLLATE utf8mb4_unicode_ci,
  `downloaded_at` timestamp NULL DEFAULT NULL,
  PRIMARY KEY (`id`),
  KEY `ec_order_product_order_id_product_id_index` (`order_id`,`product_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_order_product`
--


--
-- Table structure for table `ec_order_product_tax_components`
--

CREATE TABLE `ec_order_product_tax_components` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `order_product_id` bigint unsigned NOT NULL,
  `name` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL,
  `code` varchar(50) COLLATE utf8mb4_unicode_ci NOT NULL,
  `rate` decimal(8,4) NOT NULL DEFAULT '0.0000',
  `amount` decimal(15,2) NOT NULL DEFAULT '0.00',
  `jurisdiction` varchar(191) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `metadata` json DEFAULT NULL,
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  PRIMARY KEY (`id`),
  KEY `idx_opt_order_product` (`order_product_id`),
  KEY `idx_opt_order_product_code` (`order_product_id`,`code`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_order_product_tax_components`
--


--
-- Table structure for table `ec_order_referrals`
--

CREATE TABLE `ec_order_referrals` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `ip` varchar(39) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `landing_domain` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `landing_page` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `landing_params` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `referral` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `gclid` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `fclid` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `utm_source` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `utm_campaign` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `utm_medium` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `utm_term` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `utm_content` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `referrer_url` text COLLATE utf8mb4_unicode_ci,
  `referrer_domain` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `order_id` bigint unsigned DEFAULT NULL,
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  PRIMARY KEY (`id`),
  KEY `ec_order_referrals_order_id_index` (`order_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_order_referrals`
--


--
-- Table structure for table `ec_order_return_histories`
--

CREATE TABLE `ec_order_return_histories` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `user_id` bigint unsigned DEFAULT NULL,
  `order_return_id` bigint unsigned NOT NULL,
  `action` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
  `description` varchar(400) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `reason` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_order_return_histories`
--


--
-- Table structure for table `ec_order_return_items`
--

CREATE TABLE `ec_order_return_items` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `order_return_id` bigint unsigned NOT NULL COMMENT 'Order return id',
  `order_product_id` bigint unsigned NOT NULL COMMENT 'Order product id',
  `product_id` bigint unsigned NOT NULL COMMENT 'Product id',
  `product_name` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
  `product_image` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `qty` int NOT NULL COMMENT 'Quantity return',
  `price` decimal(15,2) NOT NULL COMMENT 'Price Product',
  `reason` text COLLATE utf8mb4_unicode_ci,
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  `refund_amount` decimal(12,2) DEFAULT '0.00',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_order_return_items`
--


--
-- Table structure for table `ec_order_returns`
--

CREATE TABLE `ec_order_returns` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `code` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `order_id` bigint unsigned NOT NULL COMMENT 'Order ID',
  `store_id` bigint unsigned DEFAULT NULL COMMENT 'Store ID',
  `user_id` bigint unsigned NOT NULL COMMENT 'Customer ID',
  `reason` text COLLATE utf8mb4_unicode_ci COMMENT 'Reason return order',
  `images` json DEFAULT NULL,
  `order_status` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT 'Order current status',
  `return_status` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT 'Return status',
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  PRIMARY KEY (`id`),
  UNIQUE KEY `ec_order_returns_code_unique` (`code`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_order_returns`
--


--
-- Table structure for table `ec_order_tax_information`
--

CREATE TABLE `ec_order_tax_information` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `order_id` bigint unsigned NOT NULL,
  `company_name` varchar(120) COLLATE utf8mb4_unicode_ci NOT NULL,
  `company_address` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
  `company_tax_code` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL,
  `company_email` varchar(60) COLLATE utf8mb4_unicode_ci NOT NULL,
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  PRIMARY KEY (`id`),
  KEY `ec_order_tax_information_order_id_index` (`order_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_order_tax_information`
--


--
-- Table structure for table `ec_orders`
--

CREATE TABLE `ec_orders` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `code` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `user_id` bigint unsigned DEFAULT NULL,
  `shipping_option` varchar(60) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `shipping_method` varchar(60) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'default',
  `status` varchar(120) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'pending',
  `amount` decimal(15,2) NOT NULL,
  `tax_amount` decimal(15,2) DEFAULT '0.00',
  `shipping_amount` decimal(15,2) DEFAULT NULL,
  `shipping_tax_amount` decimal(15,2) DEFAULT '0.00',
  `payment_fee` decimal(15,2) DEFAULT '0.00',
  `description` text COLLATE utf8mb4_unicode_ci,
  `coupon_code` varchar(120) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `discount_amount` decimal(15,2) DEFAULT NULL,
  `sub_total` decimal(15,2) NOT NULL,
  `is_confirmed` tinyint(1) NOT NULL DEFAULT '0',
  `discount_description` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `is_finished` tinyint(1) DEFAULT '0',
  `cancellation_reason` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `cancellation_reason_description` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `completed_at` timestamp NULL DEFAULT NULL,
  `token` varchar(120) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `payment_id` bigint unsigned DEFAULT NULL,
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  `store_id` bigint unsigned DEFAULT NULL,
  `proof_file` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `private_notes` text COLLATE utf8mb4_unicode_ci,
  PRIMARY KEY (`id`),
  UNIQUE KEY `ec_orders_code_unique` (`code`),
  KEY `ec_orders_user_id_status_created_at_index` (`user_id`,`status`,`created_at`),
  KEY `ec_orders_store_id_index` (`store_id`),
  KEY `ec_orders_store_finished_index` (`store_id`,`is_finished`),
  KEY `ec_orders_status_created_at_index` (`status`,`created_at`),
  KEY `ec_orders_user_id_is_finished_index` (`user_id`,`is_finished`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_orders`
--


--
-- Table structure for table `ec_product_attribute_sets`
--

CREATE TABLE `ec_product_attribute_sets` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `title` varchar(120) COLLATE utf8mb4_unicode_ci NOT NULL,
  `slug` varchar(120) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `display_layout` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'dropdown',
  `is_searchable` tinyint unsigned NOT NULL DEFAULT '1',
  `is_comparable` tinyint unsigned NOT NULL DEFAULT '1',
  `is_use_in_product_listing` tinyint unsigned NOT NULL DEFAULT '0',
  `status` varchar(60) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'published',
  `order` tinyint unsigned NOT NULL DEFAULT '0',
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  `use_image_from_product_variation` tinyint unsigned NOT NULL DEFAULT '0',
  PRIMARY KEY (`id`),
  KEY `idx_order_id` (`order`,`id`)
) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_product_attribute_sets`
--

INSERT INTO `ec_product_attribute_sets` VALUES (1,'Color','color','visual',1,1,1,'published',0,'2026-05-07 01:57:52','2026-05-07 01:57:52',1),(2,'Size','size','text',1,1,1,'published',1,'2026-05-07 01:57:52','2026-05-07 01:57:52',0),(3,'Material','material','text',1,1,1,'published',2,'2026-05-07 01:57:52','2026-05-07 01:57:52',0);

--
-- Table structure for table `ec_product_attribute_sets_translations`
--

CREATE TABLE `ec_product_attribute_sets_translations` (
  `lang_code` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
  `ec_product_attribute_sets_id` bigint unsigned NOT NULL,
  `title` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  PRIMARY KEY (`lang_code`,`ec_product_attribute_sets_id`),
  KEY `idx_product_attribute_sets_fk` (`ec_product_attribute_sets_id`),
  KEY `idx_product_attribute_sets_product_attribute_sets_lang` (`ec_product_attribute_sets_id`,`lang_code`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_product_attribute_sets_translations`
--

INSERT INTO `ec_product_attribute_sets_translations` VALUES ('ar',1,'اللون'),('ar',2,'المقاس'),('ar',3,'الخامة'),('fr',1,'Couleur'),('fr',2,'Taille'),('fr',3,'Matière'),('id',1,'Warna'),('id',2,'Ukuran'),('id',3,'Material'),('vi',1,'Màu sắc'),('vi',2,'Kích cỡ'),('vi',3,'Chất liệu');

--
-- Table structure for table `ec_product_attributes`
--

CREATE TABLE `ec_product_attributes` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `attribute_set_id` bigint unsigned NOT NULL,
  `title` varchar(120) COLLATE utf8mb4_unicode_ci NOT NULL,
  `slug` varchar(120) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `color` varchar(120) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `image` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `is_default` tinyint unsigned NOT NULL DEFAULT '0',
  `order` tinyint unsigned NOT NULL DEFAULT '0',
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  PRIMARY KEY (`id`),
  KEY `attribute_set_status_index` (`attribute_set_id`),
  KEY `idx_attribute_set_id` (`attribute_set_id`),
  KEY `idx_attribute_set_order_id` (`attribute_set_id`,`order`,`id`)
) ENGINE=InnoDB AUTO_INCREMENT=25 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_product_attributes`
--

INSERT INTO `ec_product_attributes` VALUES (1,1,'Black','black','#000000',NULL,1,0,'2026-05-07 01:57:52','2026-05-07 01:57:52'),(2,1,'White','white','#FFFFFF',NULL,0,1,'2026-05-07 01:57:52','2026-05-07 01:57:52'),(3,1,'Beige','beige','#D6BFA0',NULL,0,2,'2026-05-07 01:57:52','2026-05-07 01:57:52'),(4,1,'Olive','olive','#6B7843',NULL,0,3,'2026-05-07 01:57:52','2026-05-07 01:57:52'),(5,1,'Navy','navy','#10243F',NULL,0,4,'2026-05-07 01:57:52','2026-05-07 01:57:52'),(6,1,'Burgundy','burgundy','#7B1F2B',NULL,0,5,'2026-05-07 01:57:52','2026-05-07 01:57:52'),(7,1,'Charcoal','charcoal','#374049',NULL,0,6,'2026-05-07 01:57:52','2026-05-07 01:57:52'),(8,1,'Cream','cream','#F1E8D7',NULL,0,7,'2026-05-07 01:57:52','2026-05-07 01:57:52'),(9,1,'Pink','pink','#F2C2BB',NULL,0,8,'2026-05-07 01:57:52','2026-05-07 01:57:52'),(10,1,'Brown','brown','#905D5D',NULL,0,9,'2026-05-07 01:57:52','2026-05-07 01:57:52'),(11,1,'Green','green','#B2BD9F',NULL,0,10,'2026-05-07 01:57:52','2026-05-07 01:57:52'),(12,1,'Blue','blue','#87CEEB',NULL,0,11,'2026-05-07 01:57:52','2026-05-07 01:57:52'),(13,2,'XS','xs',NULL,NULL,1,0,'2026-05-07 01:57:52','2026-05-07 01:57:52'),(14,2,'S','s',NULL,NULL,0,1,'2026-05-07 01:57:52','2026-05-07 01:57:52'),(15,2,'M','m',NULL,NULL,0,2,'2026-05-07 01:57:52','2026-05-07 01:57:52'),(16,2,'L','l',NULL,NULL,0,3,'2026-05-07 01:57:52','2026-05-07 01:57:52'),(17,2,'XL','xl',NULL,NULL,0,4,'2026-05-07 01:57:52','2026-05-07 01:57:52'),(18,2,'XXL','xxl',NULL,NULL,0,5,'2026-05-07 01:57:52','2026-05-07 01:57:52'),(19,3,'Cotton','cotton',NULL,NULL,1,0,'2026-05-07 01:57:52','2026-05-07 01:57:52'),(20,3,'Linen','linen',NULL,NULL,0,1,'2026-05-07 01:57:52','2026-05-07 01:57:52'),(21,3,'Wool','wool',NULL,NULL,0,2,'2026-05-07 01:57:52','2026-05-07 01:57:52'),(22,3,'Tencel','tencel',NULL,NULL,0,3,'2026-05-07 01:57:52','2026-05-07 01:57:52'),(23,3,'Recycled Polyester','recycled-polyester',NULL,NULL,0,4,'2026-05-07 01:57:52','2026-05-07 01:57:52'),(24,3,'Full-Grain Leather','full-grain-leather',NULL,NULL,0,5,'2026-05-07 01:57:52','2026-05-07 01:57:52');

--
-- Table structure for table `ec_product_attributes_translations`
--

CREATE TABLE `ec_product_attributes_translations` (
  `lang_code` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
  `ec_product_attributes_id` bigint unsigned NOT NULL,
  `title` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  PRIMARY KEY (`lang_code`,`ec_product_attributes_id`),
  KEY `idx_product_attributes_fk` (`ec_product_attributes_id`),
  KEY `idx_product_attributes_product_attributes_lang` (`ec_product_attributes_id`,`lang_code`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_product_attributes_translations`
--

INSERT INTO `ec_product_attributes_translations` VALUES ('ar',1,'أسود'),('ar',2,'أبيض'),('ar',3,'بيج'),('ar',4,'زيتي'),('ar',5,'كحلي'),('ar',6,'خمري'),('ar',7,'رمادي فحمي'),('ar',8,'كريمي'),('ar',9,'Pink'),('ar',10,'Brown'),('ar',11,'Green'),('ar',12,'Blue'),('ar',13,'XS'),('ar',14,'S'),('ar',15,'M'),('ar',16,'L'),('ar',17,'XL'),('ar',18,'XXL'),('ar',19,'قطن'),('ar',20,'كتّان'),('ar',21,'صوف'),('ar',22,'تنسل'),('ar',23,'بوليستر معاد تدويره'),('ar',24,'جلد طبيعي كامل الحبيبات'),('fr',1,'Noir'),('fr',2,'Blanc'),('fr',3,'Beige'),('fr',4,'Olive'),('fr',5,'Bleu marine'),('fr',6,'Bordeaux'),('fr',7,'Anthracite'),('fr',8,'Crème'),('fr',9,'Pink'),('fr',10,'Brown'),('fr',11,'Green'),('fr',12,'Blue'),('fr',13,'XS'),('fr',14,'S'),('fr',15,'M'),('fr',16,'L'),('fr',17,'XL'),('fr',18,'XXL'),('fr',19,'Coton'),('fr',20,'Lin'),('fr',21,'Laine'),('fr',22,'Tencel'),('fr',23,'Polyester recyclé'),('fr',24,'Cuir pleine fleur'),('id',1,'Hitam'),('id',2,'Putih'),('id',3,'Krem Beige'),('id',4,'Hijau Zaitun'),('id',5,'Biru Dongker'),('id',6,'Merah Burgundy'),('id',7,'Abu Arang'),('id',8,'Krem'),('id',9,'Pink'),('id',10,'Brown'),('id',11,'Green'),('id',12,'Blue'),('id',13,'XS'),('id',14,'S'),('id',15,'M'),('id',16,'L'),('id',17,'XL'),('id',18,'XXL'),('id',19,'Katun'),('id',20,'Linen'),('id',21,'Wol'),('id',22,'Tencel'),('id',23,'Poliester Daur Ulang'),('id',24,'Kulit Full-Grain'),('vi',1,'Đen'),('vi',2,'Trắng'),('vi',3,'Be'),('vi',4,'Ô-liu'),('vi',5,'Xanh navy'),('vi',6,'Đỏ burgundy'),('vi',7,'Xám than'),('vi',8,'Kem'),('vi',9,'Pink'),('vi',10,'Brown'),('vi',11,'Green'),('vi',12,'Blue'),('vi',13,'XS'),('vi',14,'S'),('vi',15,'M'),('vi',16,'L'),('vi',17,'XL'),('vi',18,'XXL'),('vi',19,'Cotton'),('vi',20,'Linen'),('vi',21,'Len'),('vi',22,'Tencel'),('vi',23,'Polyester tái chế'),('vi',24,'Da nguyên tấm');

--
-- Table structure for table `ec_product_categories`
--

CREATE TABLE `ec_product_categories` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `name` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
  `slug` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `parent_id` bigint unsigned NOT NULL DEFAULT '0',
  `description` mediumtext COLLATE utf8mb4_unicode_ci,
  `status` varchar(60) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'published',
  `order` int unsigned NOT NULL DEFAULT '0',
  `image` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `is_featured` tinyint unsigned NOT NULL DEFAULT '0',
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  `icon` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `icon_image` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  PRIMARY KEY (`id`),
  KEY `ec_product_categories_parent_id_status_created_at_index` (`parent_id`,`status`,`created_at`),
  KEY `ec_product_categories_parent_id_status_index` (`parent_id`,`status`),
  KEY `idx_categories_status_order` (`status`,`order`),
  KEY `idx_categories_order` (`order`),
  KEY `ec_product_categories_slug_index` (`slug`),
  KEY `idx_ec_product_categories_status` (`status`),
  KEY `idx_ec_product_categories_parent_id` (`parent_id`),
  KEY `idx_ec_product_categories_status_parent_order` (`status`,`parent_id`,`order`),
  KEY `idx_ec_product_categories_is_featured` (`is_featured`),
  KEY `idx_ec_product_categories_name` (`name`),
  KEY `idx_ec_product_categories_slug` (`slug`)
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_product_categories`
--

INSERT INTO `ec_product_categories` VALUES (1,'Yoga',NULL,0,'Buttery leggings, layering tanks, and quiet color stories for studio practice.','published',0,NULL,1,'2026-05-07 01:57:53','2026-05-07 01:57:53',NULL,NULL),(2,'Leggings',NULL,0,'High-rise, mid-rise, and pocket leggings cut for movement that lasts.','published',1,NULL,1,'2026-05-07 01:57:53','2026-05-07 01:57:53',NULL,NULL),(3,'Tennis',NULL,0,'Pleated skirts, performance polos, and court-ready dresses with built-in shorts.','published',2,NULL,1,'2026-05-07 01:57:53','2026-05-07 01:57:53',NULL,NULL),(4,'Gym Wear',NULL,0,'Compressive tops and lifting shorts engineered for strength training.','published',3,NULL,1,'2026-05-07 01:57:53','2026-05-07 01:57:53',NULL,NULL),(5,'Running',NULL,0,'Sweat-wicking shells, race shorts, and reflective layers for any condition.','published',4,NULL,1,'2026-05-07 01:57:53','2026-05-07 01:57:53',NULL,NULL);

--
-- Table structure for table `ec_product_categories_translations`
--

CREATE TABLE `ec_product_categories_translations` (
  `lang_code` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
  `ec_product_categories_id` bigint unsigned NOT NULL,
  `name` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `slug` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `description` mediumtext COLLATE utf8mb4_unicode_ci,
  PRIMARY KEY (`lang_code`,`ec_product_categories_id`),
  KEY `idx_product_categories_fk` (`ec_product_categories_id`),
  KEY `idx_product_categories_product_categories_lang` (`ec_product_categories_id`,`lang_code`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_product_categories_translations`
--

INSERT INTO `ec_product_categories_translations` VALUES ('ar',1,'Yoga',NULL,'Buttery leggings, layering tanks, and quiet color stories for studio practice.'),('ar',2,'Leggings',NULL,'High-rise, mid-rise, and pocket leggings cut for movement that lasts.'),('ar',3,'Tennis',NULL,'Pleated skirts, performance polos, and court-ready dresses with built-in shorts.'),('ar',4,'Gym Wear',NULL,'Compressive tops and lifting shorts engineered for strength training.'),('ar',5,'Running',NULL,'Sweat-wicking shells, race shorts, and reflective layers for any condition.'),('fr',1,'Yoga',NULL,'Buttery leggings, layering tanks, and quiet color stories for studio practice.'),('fr',2,'Leggings',NULL,'High-rise, mid-rise, and pocket leggings cut for movement that lasts.'),('fr',3,'Tennis',NULL,'Pleated skirts, performance polos, and court-ready dresses with built-in shorts.'),('fr',4,'Gym Wear',NULL,'Compressive tops and lifting shorts engineered for strength training.'),('fr',5,'Running',NULL,'Sweat-wicking shells, race shorts, and reflective layers for any condition.'),('id',1,'Yoga',NULL,'Buttery leggings, layering tanks, and quiet color stories for studio practice.'),('id',2,'Leggings',NULL,'High-rise, mid-rise, and pocket leggings cut for movement that lasts.'),('id',3,'Tennis',NULL,'Pleated skirts, performance polos, and court-ready dresses with built-in shorts.'),('id',4,'Gym Wear',NULL,'Compressive tops and lifting shorts engineered for strength training.'),('id',5,'Running',NULL,'Sweat-wicking shells, race shorts, and reflective layers for any condition.'),('vi',1,'Yoga',NULL,'Buttery leggings, layering tanks, and quiet color stories for studio practice.'),('vi',2,'Leggings',NULL,'High-rise, mid-rise, and pocket leggings cut for movement that lasts.'),('vi',3,'Tennis',NULL,'Pleated skirts, performance polos, and court-ready dresses with built-in shorts.'),('vi',4,'Gym Wear',NULL,'Compressive tops and lifting shorts engineered for strength training.'),('vi',5,'Running',NULL,'Sweat-wicking shells, race shorts, and reflective layers for any condition.');

--
-- Table structure for table `ec_product_categorizables`
--

CREATE TABLE `ec_product_categorizables` (
  `category_id` bigint unsigned NOT NULL,
  `reference_id` bigint unsigned NOT NULL,
  `reference_type` varchar(120) COLLATE utf8mb4_unicode_ci NOT NULL,
  PRIMARY KEY (`category_id`,`reference_id`,`reference_type`),
  KEY `ec_product_categorizables_category_id_index` (`category_id`),
  KEY `ec_product_categorizables_reference_id_index` (`reference_id`),
  KEY `ec_product_categorizables_reference_type_index` (`reference_type`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_product_categorizables`
--


--
-- Table structure for table `ec_product_category_product`
--

CREATE TABLE `ec_product_category_product` (
  `category_id` bigint unsigned NOT NULL,
  `product_id` bigint unsigned NOT NULL,
  PRIMARY KEY (`product_id`,`category_id`),
  KEY `ec_product_category_product_category_id_index` (`category_id`),
  KEY `ec_product_category_product_product_id_index` (`product_id`),
  KEY `idx_product_category_composite` (`product_id`,`category_id`),
  KEY `idx_product_category` (`product_id`,`category_id`),
  KEY `idx_product_id_category_id` (`product_id`,`category_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_product_category_product`
--

INSERT INTO `ec_product_category_product` VALUES (1,1),(1,3),(1,4),(1,5),(1,6),(1,7),(2,1),(2,2),(2,3),(2,4),(2,5),(2,6),(2,7),(3,1),(3,2),(3,3),(3,5),(3,7),(4,1),(4,2),(4,4),(4,6),(4,7),(5,2),(5,3),(5,4),(5,5),(5,6);

--
-- Table structure for table `ec_product_collection_products`
--

CREATE TABLE `ec_product_collection_products` (
  `product_collection_id` bigint unsigned NOT NULL,
  `product_id` bigint unsigned NOT NULL,
  PRIMARY KEY (`product_id`,`product_collection_id`),
  KEY `ec_product_collection_products_product_collection_id_index` (`product_collection_id`),
  KEY `ec_product_collection_products_product_id_index` (`product_id`),
  KEY `idx_product_id_collection_id` (`product_id`,`product_collection_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_product_collection_products`
--

INSERT INTO `ec_product_collection_products` VALUES (2,5),(3,2),(3,4),(5,3),(6,6),(7,1),(8,7);

--
-- Table structure for table `ec_product_collections`
--

CREATE TABLE `ec_product_collections` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `name` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
  `slug` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
  `description` varchar(400) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `image` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `status` varchar(60) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'published',
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  `is_featured` tinyint unsigned NOT NULL DEFAULT '0',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=10 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_product_collections`
--

INSERT INTO `ec_product_collections` VALUES (1,'Streetwear','streetwear','Bold pieces inspired by city culture.','collection/cls-1.jpg','published','2026-05-07 01:57:53','2026-05-07 01:57:53',1),(2,'Statement Drops','statement-drops','Limited drops you will want to wear on repeat.','collection/cls-10.jpg','published','2026-05-07 01:57:53','2026-05-07 01:57:53',1),(3,'Best Sellers','best-sellers','The pieces that keep flying off the shelves.','collection/cls-11.jpg','published','2026-05-07 01:57:53','2026-05-07 01:57:53',1),(4,'Outerwear','outerwear','Jackets, parkas, and shells for cold weather.','collection/cls-12.jpg','published','2026-05-07 01:57:53','2026-05-07 01:57:53',1),(5,'Tees &amp; Hoodies','tees-hoodies','Heavyweight cottons in essential cuts.','collection/cls-13.jpg','published','2026-05-07 01:57:53','2026-05-07 01:57:53',0),(6,'Bottoms','bottoms','Joggers, denim, and cargos with attitude.','collection/cls-14.jpg','published','2026-05-07 01:57:53','2026-05-07 01:57:53',0),(7,'Sneakers','sneakers','Hard-to-find sneakers and signature drops.','collection/cls-15.jpg','published','2026-05-07 01:57:53','2026-05-07 01:57:53',0),(8,'Accessories','accessories','Caps, bags, and accents to finish the fit.','collection/cls-16.jpg','published','2026-05-07 01:57:53','2026-05-07 01:57:53',0),(9,'Sale','sale','End-of-season prices on streetwear staples.','collection/cls-17.jpg','published','2026-05-07 01:57:53','2026-05-07 01:57:53',0);

--
-- Table structure for table `ec_product_collections_translations`
--

CREATE TABLE `ec_product_collections_translations` (
  `lang_code` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
  `ec_product_collections_id` bigint unsigned NOT NULL,
  `name` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `description` varchar(400) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  PRIMARY KEY (`lang_code`,`ec_product_collections_id`),
  KEY `idx_product_collections_fk` (`ec_product_collections_id`),
  KEY `idx_product_collections_product_collections_lang` (`ec_product_collections_id`,`lang_code`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_product_collections_translations`
--

INSERT INTO `ec_product_collections_translations` VALUES ('ar',1,'Streetwear','Bold pieces inspired by city culture.'),('ar',2,'Statement Drops','Limited drops you will want to wear on repeat.'),('ar',3,'الأكثر مبيعاً','قطع يثق بها عملاؤنا ويعيدون شراءها موسماً بعد موسم.'),('ar',4,'Outerwear','Jackets, parkas, and shells for cold weather.'),('ar',5,'Tees &amp; Hoodies','Heavyweight cottons in essential cuts.'),('ar',6,'Bottoms','Joggers, denim, and cargos with attitude.'),('ar',7,'Sneakers','Hard-to-find sneakers and signature drops.'),('ar',8,'Accessories','Caps, bags, and accents to finish the fit.'),('ar',9,'Sale','End-of-season prices on streetwear staples.'),('fr',1,'Streetwear','Bold pieces inspired by city culture.'),('fr',2,'Statement Drops','Limited drops you will want to wear on repeat.'),('fr',3,'Meilleures ventes','Les pièces que nos client·es plébiscitent et rachètent saison après saison.'),('fr',4,'Outerwear','Jackets, parkas, and shells for cold weather.'),('fr',5,'Tees &amp; Hoodies','Heavyweight cottons in essential cuts.'),('fr',6,'Bottoms','Joggers, denim, and cargos with attitude.'),('fr',7,'Sneakers','Hard-to-find sneakers and signature drops.'),('fr',8,'Accessories','Caps, bags, and accents to finish the fit.'),('fr',9,'Sale','End-of-season prices on streetwear staples.'),('id',1,'Streetwear','Bold pieces inspired by city culture.'),('id',2,'Statement Drops','Limited drops you will want to wear on repeat.'),('id',3,'Terlaris','Produk-produk yang dipercaya pelanggan dan dipesan ulang dari musim ke musim.'),('id',4,'Outerwear','Jackets, parkas, and shells for cold weather.'),('id',5,'Tees &amp; Hoodies','Heavyweight cottons in essential cuts.'),('id',6,'Bottoms','Joggers, denim, and cargos with attitude.'),('id',7,'Sneakers','Hard-to-find sneakers and signature drops.'),('id',8,'Accessories','Caps, bags, and accents to finish the fit.'),('id',9,'Sale','End-of-season prices on streetwear staples.'),('vi',1,'Streetwear','Bold pieces inspired by city culture.'),('vi',2,'Statement Drops','Limited drops you will want to wear on repeat.'),('vi',3,'Bán chạy nhất','Những sản phẩm được khách hàng tin dùng và đặt lại qua từng mùa.'),('vi',4,'Outerwear','Jackets, parkas, and shells for cold weather.'),('vi',5,'Tees &amp; Hoodies','Heavyweight cottons in essential cuts.'),('vi',6,'Bottoms','Joggers, denim, and cargos with attitude.'),('vi',7,'Sneakers','Hard-to-find sneakers and signature drops.'),('vi',8,'Accessories','Caps, bags, and accents to finish the fit.'),('vi',9,'Sale','End-of-season prices on streetwear staples.');

--
-- Table structure for table `ec_product_cross_sale_relations`
--

CREATE TABLE `ec_product_cross_sale_relations` (
  `from_product_id` bigint unsigned NOT NULL,
  `to_product_id` bigint unsigned NOT NULL,
  `is_variant` tinyint(1) NOT NULL DEFAULT '0',
  `price` decimal(15,2) DEFAULT '0.00',
  `price_type` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'fixed',
  `apply_to_all_variations` tinyint(1) NOT NULL DEFAULT '1',
  PRIMARY KEY (`from_product_id`,`to_product_id`),
  KEY `ec_product_cross_sale_relations_from_product_id_index` (`from_product_id`),
  KEY `ec_product_cross_sale_relations_to_product_id_index` (`to_product_id`),
  KEY `idx_product_cross_sale` (`from_product_id`,`to_product_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_product_cross_sale_relations`
--

INSERT INTO `ec_product_cross_sale_relations` VALUES (1,4,0,0.00,'fixed',1),(1,5,0,0.00,'fixed',1),(1,7,0,0.00,'fixed',1),(2,1,0,0.00,'fixed',1),(2,3,0,0.00,'fixed',1),(2,4,0,0.00,'fixed',1),(2,5,0,0.00,'fixed',1),(2,7,0,0.00,'fixed',1),(3,1,0,0.00,'fixed',1),(3,4,0,0.00,'fixed',1),(3,5,0,0.00,'fixed',1),(3,6,0,0.00,'fixed',1),(3,7,0,0.00,'fixed',1),(4,2,0,0.00,'fixed',1),(4,3,0,0.00,'fixed',1),(4,5,0,0.00,'fixed',1),(4,6,0,0.00,'fixed',1),(4,7,0,0.00,'fixed',1),(5,1,0,0.00,'fixed',1),(5,2,0,0.00,'fixed',1),(5,3,0,0.00,'fixed',1),(5,6,0,0.00,'fixed',1),(6,1,0,0.00,'fixed',1),(6,2,0,0.00,'fixed',1),(6,3,0,0.00,'fixed',1),(6,5,0,0.00,'fixed',1),(6,7,0,0.00,'fixed',1),(7,1,0,0.00,'fixed',1),(7,2,0,0.00,'fixed',1),(7,4,0,0.00,'fixed',1),(7,5,0,0.00,'fixed',1),(7,6,0,0.00,'fixed',1);

--
-- Table structure for table `ec_product_files`
--

CREATE TABLE `ec_product_files` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `product_id` bigint unsigned DEFAULT NULL,
  `url` varchar(400) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `extras` mediumtext COLLATE utf8mb4_unicode_ci,
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  PRIMARY KEY (`id`),
  KEY `ec_product_files_product_id_index` (`product_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_product_files`
--


--
-- Table structure for table `ec_product_label_products`
--

CREATE TABLE `ec_product_label_products` (
  `product_label_id` bigint unsigned NOT NULL,
  `product_id` bigint unsigned NOT NULL,
  PRIMARY KEY (`product_label_id`,`product_id`),
  KEY `ec_product_label_products_product_label_id_index` (`product_label_id`),
  KEY `ec_product_label_products_product_id_index` (`product_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_product_label_products`
--

INSERT INTO `ec_product_label_products` VALUES (3,6),(4,3);

--
-- Table structure for table `ec_product_labels`
--

CREATE TABLE `ec_product_labels` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `name` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
  `color` varchar(120) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `status` varchar(60) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'published',
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  `text_color` varchar(120) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  PRIMARY KEY (`id`),
  KEY `ec_product_labels_status_index` (`status`)
) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_product_labels`
--

INSERT INTO `ec_product_labels` VALUES (1,'Hot','#F0460E','published','2026-05-07 01:57:52','2026-05-07 01:57:52','#FFFFFF'),(2,'New','#22C55E','published','2026-05-07 01:57:52','2026-05-07 01:57:52','#FFFFFF'),(3,'Sale','#EF4444','published','2026-05-07 01:57:52','2026-05-07 01:57:52','#FFFFFF'),(4,'Best Seller','#1E1E1E','published','2026-05-07 01:57:52','2026-05-07 01:57:52','#FFFFFF'),(5,'Limited','#7B1F2B','published','2026-05-07 01:57:52','2026-05-07 01:57:52','#FFFFFF'),(6,'Eco','#6B7843','published','2026-05-07 01:57:52','2026-05-07 01:57:52','#FFFFFF');

--
-- Table structure for table `ec_product_labels_translations`
--

CREATE TABLE `ec_product_labels_translations` (
  `lang_code` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
  `ec_product_labels_id` bigint unsigned NOT NULL,
  `name` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `description` varchar(400) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  PRIMARY KEY (`lang_code`,`ec_product_labels_id`),
  KEY `idx_product_labels_fk` (`ec_product_labels_id`),
  KEY `idx_product_labels_product_labels_lang` (`ec_product_labels_id`,`lang_code`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_product_labels_translations`
--

INSERT INTO `ec_product_labels_translations` VALUES ('ar',1,'رائج',NULL),('ar',2,'جديد',NULL),('ar',3,'تخفيض',NULL),('ar',4,'الأكثر مبيعاً',NULL),('ar',5,'محدود',NULL),('ar',6,'صديق للبيئة',NULL),('fr',1,'Tendance',NULL),('fr',2,'Nouveau',NULL),('fr',3,'Promo',NULL),('fr',4,'Meilleure vente',NULL),('fr',5,'Limité',NULL),('fr',6,'Éco',NULL),('id',1,'Populer',NULL),('id',2,'Baru',NULL),('id',3,'Diskon',NULL),('id',4,'Terlaris',NULL),('id',5,'Terbatas',NULL),('id',6,'Eco',NULL),('vi',1,'Hot',NULL),('vi',2,'Mới',NULL),('vi',3,'Giảm giá',NULL),('vi',4,'Bán chạy nhất',NULL),('vi',5,'Giới hạn',NULL),('vi',6,'Eco',NULL);

--
-- Table structure for table `ec_product_license_codes`
--

CREATE TABLE `ec_product_license_codes` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `product_id` bigint unsigned NOT NULL,
  `license_code` text COLLATE utf8mb4_unicode_ci NOT NULL,
  `status` varchar(60) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'available',
  `assigned_order_product_id` bigint unsigned DEFAULT NULL,
  `assigned_at` timestamp NULL DEFAULT NULL,
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  PRIMARY KEY (`id`),
  KEY `ec_product_license_codes_product_id_status_index` (`product_id`,`status`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_product_license_codes`
--


--
-- Table structure for table `ec_product_related_relations`
--

CREATE TABLE `ec_product_related_relations` (
  `from_product_id` bigint unsigned NOT NULL,
  `to_product_id` bigint unsigned NOT NULL,
  PRIMARY KEY (`from_product_id`,`to_product_id`),
  KEY `ec_product_related_relations_from_product_id_index` (`from_product_id`),
  KEY `ec_product_related_relations_to_product_id_index` (`to_product_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_product_related_relations`
--


--
-- Table structure for table `ec_product_specification_attribute`
--

CREATE TABLE `ec_product_specification_attribute` (
  `product_id` bigint unsigned NOT NULL,
  `attribute_id` bigint unsigned NOT NULL,
  `value` text COLLATE utf8mb4_unicode_ci,
  `hidden` tinyint(1) NOT NULL DEFAULT '0',
  `order` tinyint NOT NULL DEFAULT '0',
  PRIMARY KEY (`product_id`,`attribute_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_product_specification_attribute`
--


--
-- Table structure for table `ec_product_specification_attribute_translations`
--

CREATE TABLE `ec_product_specification_attribute_translations` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `product_id` bigint unsigned NOT NULL,
  `attribute_id` bigint unsigned NOT NULL,
  `lang_code` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL,
  `value` text COLLATE utf8mb4_unicode_ci,
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  PRIMARY KEY (`id`),
  UNIQUE KEY `psat_unique` (`product_id`,`attribute_id`,`lang_code`),
  KEY `psat_product_attribute_index` (`product_id`,`attribute_id`),
  KEY `psat_product_id_index` (`product_id`),
  KEY `psat_attribute_id_index` (`attribute_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_product_specification_attribute_translations`
--


--
-- Table structure for table `ec_product_tag_product`
--

CREATE TABLE `ec_product_tag_product` (
  `product_id` bigint unsigned NOT NULL,
  `tag_id` bigint unsigned NOT NULL,
  PRIMARY KEY (`product_id`,`tag_id`),
  KEY `ec_product_tag_product_product_id_index` (`product_id`),
  KEY `ec_product_tag_product_tag_id_index` (`tag_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_product_tag_product`
--

INSERT INTO `ec_product_tag_product` VALUES (1,4),(1,6),(1,9),(2,3),(2,6),(2,9),(3,4),(3,9),(3,13),(4,6),(4,8),(4,10),(5,2),(5,6),(5,10),(6,3),(6,5),(6,10),(7,1),(7,5),(7,14);

--
-- Table structure for table `ec_product_tags`
--

CREATE TABLE `ec_product_tags` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `name` varchar(120) COLLATE utf8mb4_unicode_ci NOT NULL,
  `description` varchar(400) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `content` mediumtext COLLATE utf8mb4_unicode_ci,
  `status` varchar(60) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'published',
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=16 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_product_tags`
--

INSERT INTO `ec_product_tags` VALUES (1,'Cotton','Products tagged with Cotton.',NULL,'published','2026-05-07 01:57:52','2026-05-07 01:57:52'),(2,'Linen','Products tagged with Linen.',NULL,'published','2026-05-07 01:57:52','2026-05-07 01:57:52'),(3,'Wool','Products tagged with Wool.',NULL,'published','2026-05-07 01:57:52','2026-05-07 01:57:52'),(4,'Leather','Products tagged with Leather.',NULL,'published','2026-05-07 01:57:52','2026-05-07 01:57:52'),(5,'Tencel','Products tagged with Tencel.',NULL,'published','2026-05-07 01:57:52','2026-05-07 01:57:52'),(6,'Recycled','Products tagged with Recycled.',NULL,'published','2026-05-07 01:57:52','2026-05-07 01:57:52'),(7,'Made in Portugal','Products tagged with Made in Portugal.',NULL,'published','2026-05-07 01:57:52','2026-05-07 01:57:52'),(8,'Made in Italy','Products tagged with Made in Italy.',NULL,'published','2026-05-07 01:57:52','2026-05-07 01:57:52'),(9,'Hand-Crafted','Products tagged with Hand-Crafted.',NULL,'published','2026-05-07 01:57:52','2026-05-07 01:57:52'),(10,'Vegan','Products tagged with Vegan.',NULL,'published','2026-05-07 01:57:52','2026-05-07 01:57:52'),(11,'Limited Run','Products tagged with Limited Run.',NULL,'published','2026-05-07 01:57:52','2026-05-07 01:57:52'),(12,'Best Seller','Products tagged with Best Seller.',NULL,'published','2026-05-07 01:57:53','2026-05-07 01:57:53'),(13,'New Arrival','Products tagged with New Arrival.',NULL,'published','2026-05-07 01:57:53','2026-05-07 01:57:53'),(14,'Editor Pick','Products tagged with Editor Pick.',NULL,'published','2026-05-07 01:57:53','2026-05-07 01:57:53'),(15,'Eco-Friendly','Products tagged with Eco-Friendly.',NULL,'published','2026-05-07 01:57:53','2026-05-07 01:57:53');

--
-- Table structure for table `ec_product_tags_translations`
--

CREATE TABLE `ec_product_tags_translations` (
  `lang_code` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
  `ec_product_tags_id` bigint unsigned NOT NULL,
  `name` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `content` mediumtext COLLATE utf8mb4_unicode_ci,
  PRIMARY KEY (`lang_code`,`ec_product_tags_id`),
  KEY `idx_product_tags_fk` (`ec_product_tags_id`),
  KEY `idx_product_tags_product_tags_lang` (`ec_product_tags_id`,`lang_code`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_product_tags_translations`
--

INSERT INTO `ec_product_tags_translations` VALUES ('ar',1,'قطن',NULL),('ar',2,'كتّان',NULL),('ar',3,'صوف',NULL),('ar',4,'جلد',NULL),('ar',5,'تنسل',NULL),('ar',6,'معاد تدويره',NULL),('ar',7,'صُنع في البرتغال',NULL),('ar',8,'صُنع في إيطاليا',NULL),('ar',9,'صناعة يدوية',NULL),('ar',10,'نباتي',NULL),('ar',11,'دفعة محدودة',NULL),('ar',12,'الأكثر مبيعاً',NULL),('ar',13,'وصل حديثاً',NULL),('ar',14,'اختيار المحرر',NULL),('ar',15,'صديق للبيئة',NULL),('fr',1,'Coton',NULL),('fr',2,'Lin',NULL),('fr',3,'Laine',NULL),('fr',4,'Cuir',NULL),('fr',5,'Tencel',NULL),('fr',6,'Recyclé',NULL),('fr',7,'Fabriqué au Portugal',NULL),('fr',8,'Fabriqué en Italie',NULL),('fr',9,'Fait main',NULL),('fr',10,'Vegan',NULL),('fr',11,'Série limitée',NULL),('fr',12,'Meilleure vente',NULL),('fr',13,'Nouveauté',NULL),('fr',14,'Choix de la rédaction',NULL),('fr',15,'Écoresponsable',NULL),('id',1,'Katun',NULL),('id',2,'Linen',NULL),('id',3,'Wol',NULL),('id',4,'Kulit',NULL),('id',5,'Tencel',NULL),('id',6,'Daur Ulang',NULL),('id',7,'Buatan Portugal',NULL),('id',8,'Buatan Italia',NULL),('id',9,'Buatan Tangan',NULL),('id',10,'Vegan',NULL),('id',11,'Produksi Terbatas',NULL),('id',12,'Terlaris',NULL),('id',13,'Baru Datang',NULL),('id',14,'Pilihan Editor',NULL),('id',15,'Ramah Lingkungan',NULL),('vi',1,'Cotton',NULL),('vi',2,'Linen',NULL),('vi',3,'Len',NULL),('vi',4,'Da',NULL),('vi',5,'Tencel',NULL),('vi',6,'Tái chế',NULL),('vi',7,'Sản xuất tại Bồ Đào Nha',NULL),('vi',8,'Sản xuất tại Ý',NULL),('vi',9,'Thủ công',NULL),('vi',10,'Thuần chay',NULL),('vi',11,'Lô giới hạn',NULL),('vi',12,'Bán chạy nhất',NULL),('vi',13,'Hàng mới về',NULL),('vi',14,'Biên tập viên chọn',NULL),('vi',15,'Thân thiện môi trường',NULL);

--
-- Table structure for table `ec_product_up_sale_relations`
--

CREATE TABLE `ec_product_up_sale_relations` (
  `from_product_id` bigint unsigned NOT NULL,
  `to_product_id` bigint unsigned NOT NULL,
  `is_variant` tinyint(1) NOT NULL DEFAULT '0',
  `price` decimal(15,2) DEFAULT '0.00',
  `price_type` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'fixed',
  `apply_to_all_variations` tinyint(1) NOT NULL DEFAULT '1',
  PRIMARY KEY (`from_product_id`,`to_product_id`),
  KEY `ec_product_up_sale_relations_from_product_id_index` (`from_product_id`),
  KEY `ec_product_up_sale_relations_to_product_id_index` (`to_product_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_product_up_sale_relations`
--

INSERT INTO `ec_product_up_sale_relations` VALUES (1,6,0,20.00,'fixed',1),(1,7,0,10.00,'percent',1),(2,3,0,5.00,'percent',1),(2,6,0,10.00,'fixed',1),(3,1,0,10.00,'percent',1),(4,5,0,50.00,'fixed',1),(5,2,0,15.00,'percent',1),(5,4,0,10.00,'fixed',1),(6,1,0,5.00,'percent',1),(6,4,0,10.00,'percent',1),(7,4,0,5.00,'fixed',1);

--
-- Table structure for table `ec_product_variation_items`
--

CREATE TABLE `ec_product_variation_items` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `attribute_id` bigint unsigned NOT NULL,
  `variation_id` bigint unsigned NOT NULL,
  PRIMARY KEY (`id`),
  UNIQUE KEY `ec_product_variation_items_attribute_id_variation_id_unique` (`attribute_id`,`variation_id`),
  KEY `attribute_variation_index` (`attribute_id`,`variation_id`),
  KEY `idx_variation_id` (`variation_id`),
  KEY `idx_variation_attribute_covering` (`variation_id`,`attribute_id`),
  KEY `ec_product_variation_items_variation_id_attribute_id_index` (`variation_id`,`attribute_id`)
) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_product_variation_items`
--

INSERT INTO `ec_product_variation_items` VALUES (3,20,3),(6,20,6),(4,21,4),(1,22,1),(2,23,2),(5,24,5);

--
-- Table structure for table `ec_product_variations`
--

CREATE TABLE `ec_product_variations` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `product_id` bigint unsigned DEFAULT NULL,
  `configurable_product_id` bigint unsigned NOT NULL,
  `is_default` tinyint NOT NULL DEFAULT '0',
  PRIMARY KEY (`id`),
  UNIQUE KEY `ec_product_variations_product_id_configurable_product_id_unique` (`product_id`,`configurable_product_id`),
  KEY `configurable_product_index` (`product_id`,`configurable_product_id`),
  KEY `idx_configurable_product_id` (`configurable_product_id`),
  KEY `idx_product_variations_config` (`configurable_product_id`,`is_default`),
  KEY `ec_product_variations_product_id_index` (`product_id`),
  KEY `ec_product_variations_configurable_product_id_index` (`configurable_product_id`)
) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_product_variations`
--

INSERT INTO `ec_product_variations` VALUES (1,8,4,1),(2,9,4,0),(3,10,4,0),(4,11,5,1),(5,12,7,1),(6,13,7,0);

--
-- Table structure for table `ec_product_views`
--

CREATE TABLE `ec_product_views` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `product_id` bigint unsigned NOT NULL,
  `views` int NOT NULL DEFAULT '1',
  `date` date NOT NULL DEFAULT '2026-05-07',
  PRIMARY KEY (`id`),
  UNIQUE KEY `ec_product_views_product_id_date_unique` (`product_id`,`date`),
  KEY `ec_product_views_product_id_index` (`product_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_product_views`
--


--
-- Table structure for table `ec_product_with_attribute_set`
--

CREATE TABLE `ec_product_with_attribute_set` (
  `attribute_set_id` bigint unsigned NOT NULL,
  `product_id` bigint unsigned NOT NULL,
  `order` tinyint unsigned NOT NULL DEFAULT '0',
  PRIMARY KEY (`product_id`,`attribute_set_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_product_with_attribute_set`
--

INSERT INTO `ec_product_with_attribute_set` VALUES (3,4,0),(3,5,0),(3,7,0);

--
-- Table structure for table `ec_products`
--

CREATE TABLE `ec_products` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `name` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
  `slug` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `description` text COLLATE utf8mb4_unicode_ci,
  `content` longtext COLLATE utf8mb4_unicode_ci,
  `status` varchar(60) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'published',
  `images` text COLLATE utf8mb4_unicode_ci,
  `video_media` text COLLATE utf8mb4_unicode_ci,
  `sku` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `order` int unsigned NOT NULL DEFAULT '0',
  `quantity` int unsigned DEFAULT NULL,
  `allow_checkout_when_out_of_stock` tinyint unsigned NOT NULL DEFAULT '0',
  `with_storehouse_management` tinyint unsigned NOT NULL DEFAULT '0',
  `stock_status` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT 'in_stock',
  `is_featured` tinyint unsigned NOT NULL DEFAULT '0',
  `is_new_until` date DEFAULT NULL,
  `brand_id` bigint unsigned DEFAULT NULL,
  `is_variation` tinyint NOT NULL DEFAULT '0',
  `variations_count` int unsigned NOT NULL DEFAULT '0',
  `reviews_count` int unsigned NOT NULL DEFAULT '0',
  `reviews_avg` decimal(3,2) NOT NULL DEFAULT '0.00',
  `sale_type` tinyint NOT NULL DEFAULT '0',
  `price` double unsigned DEFAULT NULL,
  `sale_price` double unsigned DEFAULT NULL,
  `start_date` timestamp NULL DEFAULT NULL,
  `end_date` timestamp NULL DEFAULT NULL,
  `length` double DEFAULT NULL,
  `wide` double DEFAULT NULL,
  `height` double DEFAULT NULL,
  `weight` double DEFAULT NULL,
  `tax_id` bigint unsigned DEFAULT NULL,
  `tax_class` varchar(50) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'standard',
  `views` bigint NOT NULL DEFAULT '0',
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  `store_id` bigint unsigned DEFAULT NULL,
  `created_by_id` bigint unsigned DEFAULT '0',
  `created_by_type` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'Botble\\ACL\\Models\\User',
  `approved_by` bigint unsigned DEFAULT '0',
  `image` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `product_type` varchar(60) COLLATE utf8mb4_unicode_ci DEFAULT 'physical',
  `barcode` varchar(150) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `cost_per_item` double DEFAULT NULL,
  `currency_code` varchar(10) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `price_includes_tax` tinyint(1) NOT NULL DEFAULT '0',
  `generate_license_code` tinyint(1) NOT NULL DEFAULT '0',
  `license_code_type` enum('auto_generate','pick_from_list') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'auto_generate',
  `minimum_order_quantity` int unsigned DEFAULT '0',
  `maximum_order_quantity` int unsigned DEFAULT '0',
  `notify_attachment_updated` tinyint(1) NOT NULL DEFAULT '0',
  `specification_table_id` bigint unsigned DEFAULT NULL,
  PRIMARY KEY (`id`),
  KEY `ec_products_brand_id_status_is_variation_created_at_index` (`brand_id`,`status`,`is_variation`,`created_at`),
  KEY `sale_type_index` (`sale_type`),
  KEY `start_date_index` (`start_date`),
  KEY `end_date_index` (`end_date`),
  KEY `sale_price_index` (`sale_price`),
  KEY `is_variation_index` (`is_variation`),
  KEY `ec_products_sku_index` (`sku`),
  KEY `idx_products_export` (`id`,`is_variation`),
  KEY `idx_store_variation_status` (`store_id`,`is_variation`,`status`),
  KEY `idx_variation_name_id` (`is_variation`,`name`,`id`),
  KEY `ec_products_variations_count_index` (`variations_count`),
  KEY `ec_products_slug_index` (`slug`),
  KEY `idx_products_status_variation` (`status`,`is_variation`,`id`),
  KEY `idx_products_price_sale` (`sale_type`,`sale_price`,`price`),
  KEY `idx_products_order_created` (`order`,`created_at`),
  KEY `idx_products_stock` (`with_storehouse_management`,`stock_status`,`quantity`),
  KEY `ec_products_reviews_count_index` (`reviews_count`),
  KEY `ec_products_reviews_avg_index` (`reviews_avg`),
  KEY `ec_products_status_is_variation_index` (`status`,`is_variation`),
  KEY `ec_products_storehouse_quantity_index` (`with_storehouse_management`,`quantity`),
  KEY `ec_products_currency_code_index` (`currency_code`)
) ENGINE=InnoDB AUTO_INCREMENT=14 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_products`
--

INSERT INTO `ec_products` VALUES (1,'Lyocell Wrap Top','lyocell-wrap-top','Drapey lyocell wrap top with a soft tie waist and three-quarter sleeves.','<p>Made from TENCEL lyocell fibers — breathable, biodegradable, and silky to the touch. Pairs with high-rise leggings for studio-to-street wear.</p>','published','[\"products\\/fashion-3\\/product-1.jpg\"]',NULL,'QF-200',0,19,0,1,'in_stock',1,NULL,6,0,0,10,2.60,0,89,69,NULL,NULL,12,11,18,715,NULL,'standard',91911,'2026-05-07 01:57:53','2026-05-07 01:57:54',NULL,0,'Botble\\ACL\\Models\\User',0,'products/fashion-3/product-1.jpg','physical','6298098871624',NULL,NULL,0,0,'auto_generate',0,0,0,NULL),(2,'Sports Bra Pro','sports-bra-pro','High-impact sports bra with bonded seams, removable cups, and a racerback cut.','<p>Compression nylon-elastane blend wicks sweat and recovers quickly. Tested for runs, lifts, and high-impact classes. Available in matte black, ivory, and sage.</p>','published','[\"products\\/fashion-3\\/product-2.jpg\"]',NULL,'FD-120',0,16,0,1,'in_stock',1,NULL,12,0,0,10,2.30,0,59,39,NULL,NULL,12,13,12,697,NULL,'standard',188863,'2026-05-07 01:57:54','2026-05-07 01:57:54',NULL,0,'Botble\\ACL\\Models\\User',0,'products/fashion-3/product-2.jpg','physical','8607572497867',NULL,NULL,0,0,'auto_generate',0,0,0,NULL),(3,'Cotton Buttons Top','cotton-buttons-top','Boxy cotton top with mother-of-pearl buttons and a relaxed shoulder.','<p>Heavyweight 220gsm organic cotton, garment-dyed for a lived-in feel. Wears well over a sports bra or as a layering piece on cooler studio mornings.</p>','published','[\"products\\/fashion-3\\/product-3.jpg\"]',NULL,'ON-175',0,20,0,1,'in_stock',0,NULL,1,0,0,10,3.10,0,69,49,NULL,NULL,12,12,13,574,NULL,'standard',174719,'2026-05-07 01:57:54','2026-05-07 01:57:54',NULL,0,'Botble\\ACL\\Models\\User',0,'products/fashion-3/product-3.jpg','physical','1983657718919',NULL,NULL,0,0,'auto_generate',0,0,0,NULL),(4,'Wool Midi Coat','wool-midi-coat','Belted wool midi coat with a notch lapel — the studio-to-street outerwear staple.','<p>80% wool, 20% recycled polyester. Cupro lining. Tailored fit through the shoulder with room to layer a hoodie underneath.</p>','published','[\"products\\/fashion-3\\/product-4.jpg\"]',NULL,'C8-102-A1',0,11,0,1,'in_stock',0,NULL,11,0,3,10,2.60,0,99,79,NULL,NULL,14,16,13,626,NULL,'standard',42812,'2026-05-07 01:57:54','2026-05-07 01:57:55',NULL,0,'Botble\\ACL\\Models\\User',0,'products/fashion-3/product-4.jpg','physical','4201106712125',NULL,NULL,0,0,'auto_generate',0,0,0,NULL),(5,'High-Performance Leggings','high-performance-leggings','Compressive seven-eighth leggings with a wide waistband and side pockets.','<p>Recycled nylon-elastane four-way stretch. Squat-proof at every angle. Two side drop-in pockets and a back zip pocket for cards and keys.</p>','published','[\"products\\/fashion-3\\/product-6.jpg\"]',NULL,'YW-106-A1',0,19,0,1,'in_stock',1,NULL,8,0,1,10,3.00,0,79,59,NULL,NULL,12,15,14,747,NULL,'standard',12522,'2026-05-07 01:57:54','2026-05-07 01:57:55',NULL,0,'Botble\\ACL\\Models\\User',0,'products/fashion-3/product-6.jpg','physical','3151711259137',NULL,NULL,0,0,'auto_generate',0,0,0,NULL),(6,'Tennis Polo','tennis-polo','Performance polo with a pleated collar, ribbed trims, and moisture-wicking pique.','<p>Recycled polyester pique with a hint of elastane for movement. UPF 50 protection. Sized slightly fitted through the body.</p>','published','[\"products\\/fashion-3\\/product-8.jpg\"]',NULL,'AT-185',0,17,0,1,'in_stock',1,NULL,8,0,0,10,3.50,0,49,35,NULL,NULL,11,13,11,761,NULL,'standard',98179,'2026-05-07 01:57:54','2026-05-07 01:57:54',NULL,0,'Botble\\ACL\\Models\\User',0,'products/fashion-3/product-8.jpg','physical','6528925660115',NULL,NULL,0,0,'auto_generate',0,0,0,NULL),(7,'Running Shorts','running-shorts','Lined running shorts with a five-inch inseam, side mesh vents, and a zip back pocket.','<p>Lightweight ripstop shell over a moisture-wicking liner. Internal drawcord and reflective hits at the back hem for low-light visibility.</p>','published','[\"products\\/fashion-3\\/product-10.jpg\"]',NULL,'0I-131-A1',0,11,0,1,'in_stock',0,NULL,8,0,2,10,2.80,0,39,19,NULL,NULL,18,19,15,690,NULL,'standard',127882,'2026-05-07 01:57:54','2026-05-07 01:57:55',NULL,0,'Botble\\ACL\\Models\\User',0,'products/fashion-3/product-10.jpg','physical','5429729910141',NULL,NULL,0,0,'auto_generate',0,0,0,NULL),(8,'Wool Midi Coat',NULL,NULL,NULL,'published','[\"products\\/fashion-3\\/product-4.jpg\"]',NULL,'C8-102-A1',0,11,0,1,'in_stock',0,NULL,11,1,0,0,0.00,0,99,69.3,NULL,NULL,14,16,13,626,NULL,'standard',0,'2026-05-07 01:57:54','2026-05-07 01:57:55',NULL,0,'Botble\\ACL\\Models\\User',0,NULL,'physical','8311470101831',NULL,NULL,0,0,'auto_generate',0,0,0,NULL),(9,'Wool Midi Coat',NULL,NULL,NULL,'published','[\"products\\/fashion-3\\/product-4.jpg\"]',NULL,'C8-102-A1-A2',0,11,0,1,'in_stock',0,NULL,11,1,0,0,0.00,0,99,80.19,NULL,NULL,14,16,13,626,NULL,'standard',0,'2026-05-07 01:57:54','2026-05-07 01:57:55',NULL,0,'Botble\\ACL\\Models\\User',0,NULL,'physical','7623146292295',NULL,NULL,0,0,'auto_generate',0,0,0,NULL),(10,'Wool Midi Coat',NULL,NULL,NULL,'published','[\"products\\/fashion-3\\/product-4.jpg\"]',NULL,'C8-102-A1-A3',0,11,0,1,'in_stock',0,NULL,11,1,0,0,0.00,0,99,74.25,NULL,NULL,14,16,13,626,NULL,'standard',0,'2026-05-07 01:57:54','2026-05-07 01:57:55',NULL,0,'Botble\\ACL\\Models\\User',0,NULL,'physical','2902211568295',NULL,NULL,0,0,'auto_generate',0,0,0,NULL),(11,'High-Performance Leggings',NULL,NULL,NULL,'published','[\"products\\/fashion-3\\/product-6.jpg\"]',NULL,'YW-106-A1',0,19,0,1,'in_stock',0,NULL,8,1,0,0,0.00,0,79,NULL,NULL,NULL,12,15,14,747,NULL,'standard',0,'2026-05-07 01:57:54','2026-05-07 01:57:55',NULL,0,'Botble\\ACL\\Models\\User',0,NULL,'physical','5627471671604',NULL,NULL,0,0,'auto_generate',0,0,0,NULL),(12,'Running Shorts',NULL,NULL,NULL,'published','[\"products\\/fashion-3\\/product-10.jpg\"]',NULL,'0I-131-A1',0,11,0,1,'in_stock',0,NULL,8,1,0,0,0.00,0,39,NULL,NULL,NULL,18,19,15,690,NULL,'standard',0,'2026-05-07 01:57:54','2026-05-07 01:57:55',NULL,0,'Botble\\ACL\\Models\\User',0,NULL,'physical','2075181396417',NULL,NULL,0,0,'auto_generate',0,0,0,NULL),(13,'Running Shorts',NULL,NULL,NULL,'published','[\"products\\/fashion-3\\/product-10.jpg\"]',NULL,'0I-131-A1-A2',0,11,0,1,'in_stock',0,NULL,8,1,0,0,0.00,0,39,NULL,NULL,NULL,18,19,15,690,NULL,'standard',0,'2026-05-07 01:57:55','2026-05-07 01:57:55',NULL,0,'Botble\\ACL\\Models\\User',0,NULL,'physical','2507367135034',NULL,NULL,0,0,'auto_generate',0,0,0,NULL);

--
-- Table structure for table `ec_products_translations`
--

CREATE TABLE `ec_products_translations` (
  `lang_code` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
  `ec_products_id` bigint unsigned NOT NULL,
  `name` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `slug` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `description` text COLLATE utf8mb4_unicode_ci,
  `content` text COLLATE utf8mb4_unicode_ci,
  PRIMARY KEY (`lang_code`,`ec_products_id`),
  KEY `idx_products_fk` (`ec_products_id`),
  KEY `idx_products_products_lang` (`ec_products_id`,`lang_code`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_products_translations`
--

INSERT INTO `ec_products_translations` VALUES ('ar',1,'Lyocell Wrap Top',NULL,'Drapey lyocell wrap top with a soft tie waist and three-quarter sleeves.','<p>Made from TENCEL lyocell fibers — breathable, biodegradable, and silky to the touch. Pairs with high-rise leggings for studio-to-street wear.</p>'),('ar',2,'Sports Bra Pro',NULL,'High-impact sports bra with bonded seams, removable cups, and a racerback cut.','<p>Compression nylon-elastane blend wicks sweat and recovers quickly. Tested for runs, lifts, and high-impact classes. Available in matte black, ivory, and sage.</p>'),('ar',3,'Cotton Buttons Top',NULL,'Boxy cotton top with mother-of-pearl buttons and a relaxed shoulder.','<p>Heavyweight 220gsm organic cotton, garment-dyed for a lived-in feel. Wears well over a sports bra or as a layering piece on cooler studio mornings.</p>'),('ar',4,'معطف صوفي متوسط الطول',NULL,'معطف صوفي متوسط الطول بجيوب welt وياقة كلاسيكية أنيقة — قطعة خارجية أيقونية بروح عصرية.','<p>قماش ميلتون من خلطة صوف إيطالي مع بطانة ساتان ناعمة. صف واحد من الأزرار بإغلاق مزدوج. يمتد إلى ما تحت الركبة لتغطية كاملة في الأيام الباردة.</p>'),('ar',5,'High-Performance Leggings',NULL,'Compressive seven-eighth leggings with a wide waistband and side pockets.','<p>Recycled nylon-elastane four-way stretch. Squat-proof at every angle. Two side drop-in pockets and a back zip pocket for cards and keys.</p>'),('ar',6,'Tennis Polo',NULL,'Performance polo with a pleated collar, ribbed trims, and moisture-wicking pique.','<p>Recycled polyester pique with a hint of elastane for movement. UPF 50 protection. Sized slightly fitted through the body.</p>'),('ar',7,'Running Shorts',NULL,'Lined running shorts with a five-inch inseam, side mesh vents, and a zip back pocket.','<p>Lightweight ripstop shell over a moisture-wicking liner. Internal drawcord and reflective hits at the back hem for low-light visibility.</p>'),('ar',8,'معطف صوفي متوسط الطول',NULL,'معطف صوفي متوسط الطول بجيوب welt وياقة كلاسيكية أنيقة — قطعة خارجية أيقونية بروح عصرية.','<p>قماش ميلتون من خلطة صوف إيطالي مع بطانة ساتان ناعمة. صف واحد من الأزرار بإغلاق مزدوج. يمتد إلى ما تحت الركبة لتغطية كاملة في الأيام الباردة.</p>'),('ar',9,'معطف صوفي متوسط الطول',NULL,'معطف صوفي متوسط الطول بجيوب welt وياقة كلاسيكية أنيقة — قطعة خارجية أيقونية بروح عصرية.','<p>قماش ميلتون من خلطة صوف إيطالي مع بطانة ساتان ناعمة. صف واحد من الأزرار بإغلاق مزدوج. يمتد إلى ما تحت الركبة لتغطية كاملة في الأيام الباردة.</p>'),('ar',10,'معطف صوفي متوسط الطول',NULL,'معطف صوفي متوسط الطول بجيوب welt وياقة كلاسيكية أنيقة — قطعة خارجية أيقونية بروح عصرية.','<p>قماش ميلتون من خلطة صوف إيطالي مع بطانة ساتان ناعمة. صف واحد من الأزرار بإغلاق مزدوج. يمتد إلى ما تحت الركبة لتغطية كاملة في الأيام الباردة.</p>'),('ar',11,'High-Performance Leggings',NULL,NULL,NULL),('ar',12,'Running Shorts',NULL,NULL,NULL),('ar',13,'Running Shorts',NULL,NULL,NULL),('fr',1,'Lyocell Wrap Top',NULL,'Drapey lyocell wrap top with a soft tie waist and three-quarter sleeves.','<p>Made from TENCEL lyocell fibers — breathable, biodegradable, and silky to the touch. Pairs with high-rise leggings for studio-to-street wear.</p>'),('fr',2,'Sports Bra Pro',NULL,'High-impact sports bra with bonded seams, removable cups, and a racerback cut.','<p>Compression nylon-elastane blend wicks sweat and recovers quickly. Tested for runs, lifts, and high-impact classes. Available in matte black, ivory, and sage.</p>'),('fr',3,'Cotton Buttons Top',NULL,'Boxy cotton top with mother-of-pearl buttons and a relaxed shoulder.','<p>Heavyweight 220gsm organic cotton, garment-dyed for a lived-in feel. Wears well over a sports bra or as a layering piece on cooler studio mornings.</p>'),('fr',4,'Manteau midi en laine',NULL,'Manteau midi en laine à poches passepoilées et col tailleur épuré : un classique de la garde-robe contemporaine.','<p>Drap de laine italien melton doublé d\'une satinette douce. Boutonnage simple à deux boutons. Longueur sous le genou pour une couverture optimale les jours froids.</p>'),('fr',5,'High-Performance Leggings',NULL,'Compressive seven-eighth leggings with a wide waistband and side pockets.','<p>Recycled nylon-elastane four-way stretch. Squat-proof at every angle. Two side drop-in pockets and a back zip pocket for cards and keys.</p>'),('fr',6,'Tennis Polo',NULL,'Performance polo with a pleated collar, ribbed trims, and moisture-wicking pique.','<p>Recycled polyester pique with a hint of elastane for movement. UPF 50 protection. Sized slightly fitted through the body.</p>'),('fr',7,'Running Shorts',NULL,'Lined running shorts with a five-inch inseam, side mesh vents, and a zip back pocket.','<p>Lightweight ripstop shell over a moisture-wicking liner. Internal drawcord and reflective hits at the back hem for low-light visibility.</p>'),('fr',8,'Manteau midi en laine',NULL,'Manteau midi en laine à poches passepoilées et col tailleur épuré : un classique de la garde-robe contemporaine.','<p>Drap de laine italien melton doublé d\'une satinette douce. Boutonnage simple à deux boutons. Longueur sous le genou pour une couverture optimale les jours froids.</p>'),('fr',9,'Manteau midi en laine',NULL,'Manteau midi en laine à poches passepoilées et col tailleur épuré : un classique de la garde-robe contemporaine.','<p>Drap de laine italien melton doublé d\'une satinette douce. Boutonnage simple à deux boutons. Longueur sous le genou pour une couverture optimale les jours froids.</p>'),('fr',10,'Manteau midi en laine',NULL,'Manteau midi en laine à poches passepoilées et col tailleur épuré : un classique de la garde-robe contemporaine.','<p>Drap de laine italien melton doublé d\'une satinette douce. Boutonnage simple à deux boutons. Longueur sous le genou pour une couverture optimale les jours froids.</p>'),('fr',11,'High-Performance Leggings',NULL,NULL,NULL),('fr',12,'Running Shorts',NULL,NULL,NULL),('fr',13,'Running Shorts',NULL,NULL,NULL),('id',1,'Lyocell Wrap Top',NULL,'Drapey lyocell wrap top with a soft tie waist and three-quarter sleeves.','<p>Made from TENCEL lyocell fibers — breathable, biodegradable, and silky to the touch. Pairs with high-rise leggings for studio-to-street wear.</p>'),('id',2,'Sports Bra Pro',NULL,'High-impact sports bra with bonded seams, removable cups, and a racerback cut.','<p>Compression nylon-elastane blend wicks sweat and recovers quickly. Tested for runs, lifts, and high-impact classes. Available in matte black, ivory, and sage.</p>'),('id',3,'Cotton Buttons Top',NULL,'Boxy cotton top with mother-of-pearl buttons and a relaxed shoulder.','<p>Heavyweight 220gsm organic cotton, garment-dyed for a lived-in feel. Wears well over a sports bra or as a layering piece on cooler studio mornings.</p>'),('id',4,'Mantel Wol Midi',NULL,'Mantel wol midi dengan saku welt dan kerah lapel ramping — ikon outerwear modern.','<p>Kain melton wol Italia dengan lapisan satin yang lembut. Satu baris kancing dengan dua kancing pengait. Panjang melewati lutut, memberikan perlindungan untuk hari-hari yang dingin.</p>'),('id',5,'High-Performance Leggings',NULL,'Compressive seven-eighth leggings with a wide waistband and side pockets.','<p>Recycled nylon-elastane four-way stretch. Squat-proof at every angle. Two side drop-in pockets and a back zip pocket for cards and keys.</p>'),('id',6,'Tennis Polo',NULL,'Performance polo with a pleated collar, ribbed trims, and moisture-wicking pique.','<p>Recycled polyester pique with a hint of elastane for movement. UPF 50 protection. Sized slightly fitted through the body.</p>'),('id',7,'Running Shorts',NULL,'Lined running shorts with a five-inch inseam, side mesh vents, and a zip back pocket.','<p>Lightweight ripstop shell over a moisture-wicking liner. Internal drawcord and reflective hits at the back hem for low-light visibility.</p>'),('id',8,'Mantel Wol Midi',NULL,'Mantel wol midi dengan saku welt dan kerah lapel ramping — ikon outerwear modern.','<p>Kain melton wol Italia dengan lapisan satin yang lembut. Satu baris kancing dengan dua kancing pengait. Panjang melewati lutut, memberikan perlindungan untuk hari-hari yang dingin.</p>'),('id',9,'Mantel Wol Midi',NULL,'Mantel wol midi dengan saku welt dan kerah lapel ramping — ikon outerwear modern.','<p>Kain melton wol Italia dengan lapisan satin yang lembut. Satu baris kancing dengan dua kancing pengait. Panjang melewati lutut, memberikan perlindungan untuk hari-hari yang dingin.</p>'),('id',10,'Mantel Wol Midi',NULL,'Mantel wol midi dengan saku welt dan kerah lapel ramping — ikon outerwear modern.','<p>Kain melton wol Italia dengan lapisan satin yang lembut. Satu baris kancing dengan dua kancing pengait. Panjang melewati lutut, memberikan perlindungan untuk hari-hari yang dingin.</p>'),('id',11,'High-Performance Leggings',NULL,NULL,NULL),('id',12,'Running Shorts',NULL,NULL,NULL),('id',13,'Running Shorts',NULL,NULL,NULL),('vi',1,'Lyocell Wrap Top',NULL,'Drapey lyocell wrap top with a soft tie waist and three-quarter sleeves.','<p>Made from TENCEL lyocell fibers — breathable, biodegradable, and silky to the touch. Pairs with high-rise leggings for studio-to-street wear.</p>'),('vi',2,'Sports Bra Pro',NULL,'High-impact sports bra with bonded seams, removable cups, and a racerback cut.','<p>Compression nylon-elastane blend wicks sweat and recovers quickly. Tested for runs, lifts, and high-impact classes. Available in matte black, ivory, and sage.</p>'),('vi',3,'Cotton Buttons Top',NULL,'Boxy cotton top with mother-of-pearl buttons and a relaxed shoulder.','<p>Heavyweight 220gsm organic cotton, garment-dyed for a lived-in feel. Wears well over a sports bra or as a layering piece on cooler studio mornings.</p>'),('vi',4,'Áo khoác len dáng midi',NULL,'Áo khoác len midi với túi welt và cổ ve gọn — biểu tượng outerwear hiện đại.','<p>Vải melton pha len Ý với lớp lót sa tanh mềm. Một hàng nút với khóa hai nút. Dài qua đầu gối, che kín cho những ngày lạnh.</p>'),('vi',5,'High-Performance Leggings',NULL,'Compressive seven-eighth leggings with a wide waistband and side pockets.','<p>Recycled nylon-elastane four-way stretch. Squat-proof at every angle. Two side drop-in pockets and a back zip pocket for cards and keys.</p>'),('vi',6,'Tennis Polo',NULL,'Performance polo with a pleated collar, ribbed trims, and moisture-wicking pique.','<p>Recycled polyester pique with a hint of elastane for movement. UPF 50 protection. Sized slightly fitted through the body.</p>'),('vi',7,'Running Shorts',NULL,'Lined running shorts with a five-inch inseam, side mesh vents, and a zip back pocket.','<p>Lightweight ripstop shell over a moisture-wicking liner. Internal drawcord and reflective hits at the back hem for low-light visibility.</p>'),('vi',8,'Áo khoác len dáng midi',NULL,'Áo khoác len midi với túi welt và cổ ve gọn — biểu tượng outerwear hiện đại.','<p>Vải melton pha len Ý với lớp lót sa tanh mềm. Một hàng nút với khóa hai nút. Dài qua đầu gối, che kín cho những ngày lạnh.</p>'),('vi',9,'Áo khoác len dáng midi',NULL,'Áo khoác len midi với túi welt và cổ ve gọn — biểu tượng outerwear hiện đại.','<p>Vải melton pha len Ý với lớp lót sa tanh mềm. Một hàng nút với khóa hai nút. Dài qua đầu gối, che kín cho những ngày lạnh.</p>'),('vi',10,'Áo khoác len dáng midi',NULL,'Áo khoác len midi với túi welt và cổ ve gọn — biểu tượng outerwear hiện đại.','<p>Vải melton pha len Ý với lớp lót sa tanh mềm. Một hàng nút với khóa hai nút. Dài qua đầu gối, che kín cho những ngày lạnh.</p>'),('vi',11,'High-Performance Leggings',NULL,NULL,NULL),('vi',12,'Running Shorts',NULL,NULL,NULL),('vi',13,'Running Shorts',NULL,NULL,NULL);

--
-- Table structure for table `ec_review_replies`
--

CREATE TABLE `ec_review_replies` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `user_id` bigint unsigned DEFAULT NULL,
  `customer_id` bigint unsigned DEFAULT NULL,
  `review_id` bigint unsigned NOT NULL,
  `message` text COLLATE utf8mb4_unicode_ci NOT NULL,
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  PRIMARY KEY (`id`),
  UNIQUE KEY `ec_review_replies_review_id_unique` (`review_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_review_replies`
--


--
-- Table structure for table `ec_reviews`
--

CREATE TABLE `ec_reviews` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `customer_id` bigint unsigned DEFAULT NULL,
  `customer_name` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `customer_email` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `product_id` bigint unsigned NOT NULL,
  `star` double NOT NULL,
  `comment` text COLLATE utf8mb4_unicode_ci,
  `status` varchar(60) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'published',
  `badge_type` varchar(30) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'auto',
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  `images` text COLLATE utf8mb4_unicode_ci,
  PRIMARY KEY (`id`),
  UNIQUE KEY `ec_reviews_product_id_customer_id_unique` (`product_id`,`customer_id`),
  KEY `ec_reviews_product_id_customer_id_status_created_at_index` (`product_id`,`customer_id`,`status`,`created_at`),
  KEY `review_relation_index` (`product_id`,`customer_id`,`status`),
  KEY `ec_reviews_product_id_status_index` (`product_id`,`status`),
  KEY `ec_reviews_customer_id_status_index` (`customer_id`,`status`)
) ENGINE=InnoDB AUTO_INCREMENT=71 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_reviews`
--

INSERT INTO `ec_reviews` VALUES (1,3,NULL,NULL,7,5,'Second or third time that I buy a Botble product, happy with the products and support. You guys do a good job :)','published','auto','2026-05-07 01:57:57','2026-05-07 01:57:57',NULL),(2,6,NULL,NULL,5,1,'Cool template. Excellent code quality. The support responds very quickly, which is very rare on themeforest and codecanyon.net, I buy a lot of templates, and everyone will have a response from technical support for two or three days. Thanks to tech support. I recommend to buy.','published','auto','2026-05-07 01:57:57','2026-05-07 01:57:57',NULL),(3,4,NULL,NULL,4,5,'Solution is too robust for our purpose so we didn\'t use it at the end. But I appreciate customer support during initial configuration.','published','auto','2026-05-07 01:57:57','2026-05-07 01:57:57',NULL),(4,10,NULL,NULL,4,2,'Best ecommerce CMS online store!','published','auto','2026-05-07 01:57:57','2026-05-07 01:57:57',NULL),(5,2,NULL,NULL,5,5,'This script is well coded and is super fast. The support is pretty quick. Very patient and helpful team. I strongly recommend it and they deserve more than 5 stars.','published','auto','2026-05-07 01:57:57','2026-05-07 01:57:57',NULL),(6,1,NULL,NULL,6,2,'Great system, great support, good job Botble. I\'m looking forward to more great functional plugins.','published','auto','2026-05-07 01:57:57','2026-05-07 01:57:57',NULL),(7,7,NULL,NULL,6,5,'For me the best eCommerce script on Envato at this moment: modern, clean code, a lot of great features. The customer support is great too: I always get an answer within hours!','published','auto','2026-05-07 01:57:57','2026-05-07 01:57:57',NULL),(8,6,NULL,NULL,2,4,'The best ecommerce CMS! Excellent coding! best support service! Thank you so much..... I really like your hard work.','published','auto','2026-05-07 01:57:57','2026-05-07 01:57:57',NULL),(9,10,NULL,NULL,7,1,'Solution is too robust for our purpose so we didn\'t use it at the end. But I appreciate customer support during initial configuration.','published','auto','2026-05-07 01:57:57','2026-05-07 01:57:57',NULL),(10,5,NULL,NULL,1,3,'The best store template! Excellent coding! Very good support! Thank you so much for all the help, I really appreciated.','published','auto','2026-05-07 01:57:57','2026-05-07 01:57:57',NULL),(11,8,NULL,NULL,2,1,'As a developer I reviewed this script. This is really awesome ecommerce script. I have convinced when I noticed that it\'s built on fully WordPress concept.','published','auto','2026-05-07 01:57:57','2026-05-07 01:57:57',NULL),(12,9,NULL,NULL,4,1,'The code is good, in general, if you like it, can you give it 5 stars?','published','auto','2026-05-07 01:57:57','2026-05-07 01:57:57',NULL),(13,4,NULL,NULL,7,4,'Clean & perfect source code','published','auto','2026-05-07 01:57:57','2026-05-07 01:57:57',NULL),(14,4,NULL,NULL,2,5,'Perfect +++++++++ i love it really also i get to fast ticket answers... Thanks Lot BOTBLE Teams','published','auto','2026-05-07 01:57:57','2026-05-07 01:57:57',NULL),(15,9,NULL,NULL,3,2,'Best ecommerce CMS online store!','published','auto','2026-05-07 01:57:57','2026-05-07 01:57:57',NULL),(16,9,NULL,NULL,7,1,'Very enthusiastic support! Excellent code is written. It\'s a true pleasure working with.','published','auto','2026-05-07 01:57:57','2026-05-07 01:57:57',NULL),(17,10,NULL,NULL,1,4,'I Love this Script. I also found how to add other fees. Now I just wait the BIG update for the Marketplace with the Bulk Import. Just do not forget to make it to be Multi-language for us the Botble Fans.','published','auto','2026-05-07 01:57:57','2026-05-07 01:57:57',NULL),(18,2,NULL,NULL,2,1,'Cool template. Excellent code quality. The support responds very quickly, which is very rare on themeforest and codecanyon.net, I buy a lot of templates, and everyone will have a response from technical support for two or three days. Thanks to tech support. I recommend to buy.','published','auto','2026-05-07 01:57:57','2026-05-07 01:57:57',NULL),(19,9,NULL,NULL,6,1,'The best ecommerce CMS! Excellent coding! best support service! Thank you so much..... I really like your hard work.','published','auto','2026-05-07 01:57:57','2026-05-07 01:57:57',NULL),(20,4,NULL,NULL,5,3,'Great system, great support, good job Botble. I\'m looking forward to more great functional plugins.','published','auto','2026-05-07 01:57:57','2026-05-07 01:57:57',NULL),(21,5,NULL,NULL,6,1,'Best ecommerce CMS online store!','published','auto','2026-05-07 01:57:57','2026-05-07 01:57:57',NULL),(22,4,NULL,NULL,1,1,'Very enthusiastic support! Excellent code is written. It\'s a true pleasure working with.','published','auto','2026-05-07 01:57:57','2026-05-07 01:57:57',NULL),(23,2,NULL,NULL,7,2,'The best ecommerce CMS! Excellent coding! best support service! Thank you so much..... I really like your hard work.','published','auto','2026-05-07 01:57:57','2026-05-07 01:57:57',NULL),(24,7,NULL,NULL,5,4,'Those guys now what they are doing, the release such a good product that it\'s a pleasure to work with ! Even when I was stuck on the project, I created a ticket and the next day it was replied by the team. GOOD JOB guys. I love working with them :)','published','auto','2026-05-07 01:57:57','2026-05-07 01:57:57',NULL),(25,1,NULL,NULL,2,1,'Good app, good backup service and support. Good documentation.','published','auto','2026-05-07 01:57:57','2026-05-07 01:57:57',NULL),(26,5,NULL,NULL,7,1,'For me the best eCommerce script on Envato at this moment: modern, clean code, a lot of great features. The customer support is great too: I always get an answer within hours!','published','auto','2026-05-07 01:57:57','2026-05-07 01:57:57',NULL),(27,3,NULL,NULL,5,2,'Clean & perfect source code','published','auto','2026-05-07 01:57:57','2026-05-07 01:57:57',NULL),(28,9,NULL,NULL,5,5,'Solution is too robust for our purpose so we didn\'t use it at the end. But I appreciate customer support during initial configuration.','published','auto','2026-05-07 01:57:57','2026-05-07 01:57:57',NULL),(29,7,NULL,NULL,4,2,'Amazing code, amazing support. Overall, im really confident in Botble and im happy I made the right choice! Thank you so much guys for coding this masterpiece','published','auto','2026-05-07 01:57:57','2026-05-07 01:57:57',NULL),(30,8,NULL,NULL,5,4,'Customer Support are grade (A*), however the code is a way too over engineered for it\'s purpose.','published','auto','2026-05-07 01:57:57','2026-05-07 01:57:57',NULL),(31,6,NULL,NULL,3,4,'Amazing code, amazing support. Overall, im really confident in Botble and im happy I made the right choice! Thank you so much guys for coding this masterpiece','published','auto','2026-05-07 01:57:57','2026-05-07 01:57:57',NULL),(32,5,NULL,NULL,2,1,'As a developer I reviewed this script. This is really awesome ecommerce script. I have convinced when I noticed that it\'s built on fully WordPress concept.','published','auto','2026-05-07 01:57:57','2026-05-07 01:57:57',NULL),(33,3,NULL,NULL,4,2,'Great system, great support, good job Botble. I\'m looking forward to more great functional plugins.','published','auto','2026-05-07 01:57:57','2026-05-07 01:57:57',NULL),(34,2,NULL,NULL,1,2,'These guys are amazing! Responses immediately, amazing support and help... I immediately feel at ease after Purchasing..','published','auto','2026-05-07 01:57:57','2026-05-07 01:57:57',NULL),(35,7,NULL,NULL,2,1,'Solution is too robust for our purpose so we didn\'t use it at the end. But I appreciate customer support during initial configuration.','published','auto','2026-05-07 01:57:57','2026-05-07 01:57:57',NULL),(36,2,NULL,NULL,3,4,'The script is the best of its class, fast, easy to implement and work with , and the most important thing is the great support team , Recommend with no doubt.','published','auto','2026-05-07 01:57:57','2026-05-07 01:57:57',NULL),(37,10,NULL,NULL,6,3,'Great E-commerce system. And much more : Wonderful Customer Support.','published','auto','2026-05-07 01:57:57','2026-05-07 01:57:57',NULL),(38,5,NULL,NULL,5,4,'As a developer I reviewed this script. This is really awesome ecommerce script. I have convinced when I noticed that it\'s built on fully WordPress concept.','published','auto','2026-05-07 01:57:57','2026-05-07 01:57:57',NULL),(39,7,NULL,NULL,3,3,'As a developer I reviewed this script. This is really awesome ecommerce script. I have convinced when I noticed that it\'s built on fully WordPress concept.','published','auto','2026-05-07 01:57:57','2026-05-07 01:57:57',NULL),(40,7,NULL,NULL,1,4,'Customer Support are grade (A*), however the code is a way too over engineered for it\'s purpose.','published','auto','2026-05-07 01:57:57','2026-05-07 01:57:57',NULL),(41,8,NULL,NULL,4,1,'Perfect +++++++++ i love it really also i get to fast ticket answers... Thanks Lot BOTBLE Teams','published','auto','2026-05-07 01:57:57','2026-05-07 01:57:57',NULL),(42,2,NULL,NULL,6,5,'Ok good product. I have some issues in customizations. But its not correct to blame the developer. The product is good. Good luck for your business.','published','auto','2026-05-07 01:57:57','2026-05-07 01:57:57',NULL),(43,1,NULL,NULL,5,1,'We have received brilliant service support and will be expanding the features with the developer. Nice product!','published','auto','2026-05-07 01:57:57','2026-05-07 01:57:57',NULL),(44,1,NULL,NULL,1,4,'Customer Support are grade (A*), however the code is a way too over engineered for it\'s purpose.','published','auto','2026-05-07 01:57:57','2026-05-07 01:57:57',NULL),(45,10,NULL,NULL,5,1,'The code is good, in general, if you like it, can you give it 5 stars?','published','auto','2026-05-07 01:57:57','2026-05-07 01:57:57',NULL),(46,3,NULL,NULL,6,5,'This script is well coded and is super fast. The support is pretty quick. Very patient and helpful team. I strongly recommend it and they deserve more than 5 stars.','published','auto','2026-05-07 01:57:57','2026-05-07 01:57:57',NULL),(47,8,NULL,NULL,1,1,'Those guys now what they are doing, the release such a good product that it\'s a pleasure to work with ! Even when I was stuck on the project, I created a ticket and the next day it was replied by the team. GOOD JOB guys. I love working with them :)','published','auto','2026-05-07 01:57:57','2026-05-07 01:57:57',NULL),(48,2,NULL,NULL,4,5,'Solution is too robust for our purpose so we didn\'t use it at the end. But I appreciate customer support during initial configuration.','published','auto','2026-05-07 01:57:57','2026-05-07 01:57:57',NULL),(49,1,NULL,NULL,4,3,'Best ecommerce CMS online store!','published','auto','2026-05-07 01:57:57','2026-05-07 01:57:57',NULL),(50,10,NULL,NULL,2,3,'Amazing code, amazing support. Overall, im really confident in Botble and im happy I made the right choice! Thank you so much guys for coding this masterpiece','published','auto','2026-05-07 01:57:57','2026-05-07 01:57:57',NULL),(51,8,NULL,NULL,3,3,'Second or third time that I buy a Botble product, happy with the products and support. You guys do a good job :)','published','auto','2026-05-07 01:57:57','2026-05-07 01:57:57',NULL),(52,3,NULL,NULL,2,4,'This script is well coded and is super fast. The support is pretty quick. Very patient and helpful team. I strongly recommend it and they deserve more than 5 stars.','published','auto','2026-05-07 01:57:57','2026-05-07 01:57:57',NULL),(53,1,NULL,NULL,3,3,'Great E-commerce system. And much more : Wonderful Customer Support.','published','auto','2026-05-07 01:57:57','2026-05-07 01:57:57',NULL),(54,8,NULL,NULL,6,5,'Second or third time that I buy a Botble product, happy with the products and support. You guys do a good job :)','published','auto','2026-05-07 01:57:57','2026-05-07 01:57:57',NULL),(55,3,NULL,NULL,1,3,'Second or third time that I buy a Botble product, happy with the products and support. You guys do a good job :)','published','auto','2026-05-07 01:57:57','2026-05-07 01:57:57',NULL),(56,10,NULL,NULL,3,1,'The script is the best of its class, fast, easy to implement and work with , and the most important thing is the great support team , Recommend with no doubt.','published','auto','2026-05-07 01:57:57','2026-05-07 01:57:57',NULL),(57,3,NULL,NULL,3,5,'It\'s not my first experience here on Codecanyon and I can honestly tell you all that Botble puts a LOT of effort into the support. They answer so fast, they helped me tons of times. REALLY by far THE BEST EXPERIENCE on Codecanyon. Those guys at Botble are so good that they deserve 5 stars. I recommend them, I trust them and I can\'t wait to see what they will sell in a near future. Thank you Botble :)','published','auto','2026-05-07 01:57:57','2026-05-07 01:57:57',NULL),(58,4,NULL,NULL,6,4,'Second or third time that I buy a Botble product, happy with the products and support. You guys do a good job :)','published','auto','2026-05-07 01:57:57','2026-05-07 01:57:57',NULL),(59,8,NULL,NULL,7,5,'Good app, good backup service and support. Good documentation.','published','auto','2026-05-07 01:57:57','2026-05-07 01:57:57',NULL),(60,9,NULL,NULL,2,2,'It\'s not my first experience here on Codecanyon and I can honestly tell you all that Botble puts a LOT of effort into the support. They answer so fast, they helped me tons of times. REALLY by far THE BEST EXPERIENCE on Codecanyon. Those guys at Botble are so good that they deserve 5 stars. I recommend them, I trust them and I can\'t wait to see what they will sell in a near future. Thank you Botble :)','published','auto','2026-05-07 01:57:57','2026-05-07 01:57:57',NULL),(61,5,NULL,NULL,3,2,'Cool template. Excellent code quality. The support responds very quickly, which is very rare on themeforest and codecanyon.net, I buy a lot of templates, and everyone will have a response from technical support for two or three days. Thanks to tech support. I recommend to buy.','published','auto','2026-05-07 01:57:57','2026-05-07 01:57:57',NULL),(62,9,NULL,NULL,1,3,'This web app is really good in design, code quality & features. Besides, the customer support provided by the Botble team was really fast & helpful. You guys are awesome!','published','auto','2026-05-07 01:57:57','2026-05-07 01:57:57',NULL),(63,6,NULL,NULL,6,4,'Solution is too robust for our purpose so we didn\'t use it at the end. But I appreciate customer support during initial configuration.','published','auto','2026-05-07 01:57:57','2026-05-07 01:57:57',NULL),(64,5,NULL,NULL,4,3,'The best ecommerce CMS! Excellent coding! best support service! Thank you so much..... I really like your hard work.','published','auto','2026-05-07 01:57:57','2026-05-07 01:57:57',NULL),(65,7,NULL,NULL,7,5,'Good app, good backup service and support. Good documentation.','published','auto','2026-05-07 01:57:57','2026-05-07 01:57:57',NULL),(66,6,NULL,NULL,7,2,'Customer Support are grade (A*), however the code is a way too over engineered for it\'s purpose.','published','auto','2026-05-07 01:57:57','2026-05-07 01:57:57',NULL),(67,4,NULL,NULL,3,4,'Ok good product. I have some issues in customizations. But its not correct to blame the developer. The product is good. Good luck for your business.','published','auto','2026-05-07 01:57:57','2026-05-07 01:57:57',NULL),(68,1,NULL,NULL,7,2,'It\'s not my first experience here on Codecanyon and I can honestly tell you all that Botble puts a LOT of effort into the support. They answer so fast, they helped me tons of times. REALLY by far THE BEST EXPERIENCE on Codecanyon. Those guys at Botble are so good that they deserve 5 stars. I recommend them, I trust them and I can\'t wait to see what they will sell in a near future. Thank you Botble :)','published','auto','2026-05-07 01:57:57','2026-05-07 01:57:57',NULL),(69,6,NULL,NULL,4,2,'For me the best eCommerce script on Envato at this moment: modern, clean code, a lot of great features. The customer support is great too: I always get an answer within hours!','published','auto','2026-05-07 01:57:57','2026-05-07 01:57:57',NULL),(70,6,NULL,NULL,1,1,'Good app, good backup service and support. Good documentation.','published','auto','2026-05-07 01:57:57','2026-05-07 01:57:57',NULL);

--
-- Table structure for table `ec_shared_wishlists`
--

CREATE TABLE `ec_shared_wishlists` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `code` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
  `product_ids` text COLLATE utf8mb4_unicode_ci,
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  PRIMARY KEY (`id`),
  UNIQUE KEY `ec_shared_wishlists_code_unique` (`code`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_shared_wishlists`
--


--
-- Table structure for table `ec_shipment_histories`
--

CREATE TABLE `ec_shipment_histories` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `action` varchar(120) COLLATE utf8mb4_unicode_ci NOT NULL,
  `description` varchar(400) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `user_id` bigint unsigned DEFAULT NULL,
  `shipment_id` bigint unsigned NOT NULL,
  `order_id` bigint unsigned NOT NULL,
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  `user_type` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'Botble\\ACL\\Models\\User',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_shipment_histories`
--


--
-- Table structure for table `ec_shipments`
--

CREATE TABLE `ec_shipments` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `order_id` bigint unsigned NOT NULL,
  `user_id` bigint unsigned DEFAULT NULL,
  `weight` double DEFAULT '0',
  `shipment_id` varchar(120) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `rate_id` varchar(120) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `note` text COLLATE utf8mb4_unicode_ci,
  `status` varchar(120) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'pending',
  `cod_amount` decimal(15,2) DEFAULT '0.00',
  `cod_status` varchar(60) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'pending',
  `cross_checking_status` varchar(60) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'pending',
  `price` decimal(15,2) DEFAULT '0.00',
  `store_id` bigint unsigned DEFAULT NULL,
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  `tracking_id` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `shipping_company_name` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `tracking_link` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `estimate_date_shipped` datetime DEFAULT NULL,
  `date_shipped` datetime DEFAULT NULL,
  `customer_delivered_confirmed_at` timestamp NULL DEFAULT NULL,
  `label_url` text COLLATE utf8mb4_unicode_ci,
  `metadata` mediumtext COLLATE utf8mb4_unicode_ci,
  PRIMARY KEY (`id`),
  UNIQUE KEY `ec_shipments_order_id_unique` (`order_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_shipments`
--


--
-- Table structure for table `ec_shipping`
--

CREATE TABLE `ec_shipping` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `title` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `country` varchar(120) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_shipping`
--

INSERT INTO `ec_shipping` VALUES (1,'Domestic',NULL,'2026-05-07 01:57:57','2026-05-07 01:57:57'),(2,'International',NULL,'2026-05-07 01:57:57','2026-05-07 01:57:57');

--
-- Table structure for table `ec_shipping_rule_items`
--

CREATE TABLE `ec_shipping_rule_items` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `shipping_rule_id` bigint unsigned NOT NULL,
  `name` varchar(120) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `country` varchar(120) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `state` varchar(120) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `city` varchar(120) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `zip_code` varchar(20) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `zip_code_from` varchar(20) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `zip_code_to` varchar(20) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `adjustment_price` decimal(15,2) DEFAULT '0.00',
  `is_enabled` tinyint(1) NOT NULL DEFAULT '1',
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  PRIMARY KEY (`id`),
  KEY `idx_zip_range` (`zip_code_from`,`zip_code_to`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_shipping_rule_items`
--


--
-- Table structure for table `ec_shipping_rules`
--

CREATE TABLE `ec_shipping_rules` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `name` varchar(120) COLLATE utf8mb4_unicode_ci NOT NULL,
  `shipping_id` bigint unsigned NOT NULL,
  `type` varchar(24) COLLATE utf8mb4_unicode_ci DEFAULT 'based_on_price',
  `from` decimal(15,2) DEFAULT '0.00',
  `to` decimal(15,2) DEFAULT '0.00',
  `price` decimal(15,2) DEFAULT '0.00',
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_shipping_rules`
--

INSERT INTO `ec_shipping_rules` VALUES (1,'Free Standard Shipping (orders $99+)',1,'based_on_price',99.00,NULL,0.00,'2026-05-07 01:57:57','2026-05-07 01:57:57'),(2,'Standard (3-5 business days)',1,'based_on_price',0.00,NULL,7.99,'2026-05-07 01:57:57','2026-05-07 01:57:57'),(3,'Express (1-2 business days)',1,'based_on_price',0.00,NULL,19.99,'2026-05-07 01:57:57','2026-05-07 01:57:57'),(4,'Local Pickup',1,'based_on_price',0.00,NULL,0.00,'2026-05-07 01:57:57','2026-05-07 01:57:57'),(5,'International Standard (7-12 days)',2,'based_on_price',0.00,NULL,24.99,'2026-05-07 01:57:57','2026-05-07 01:57:57'),(6,'International Express (3-5 days)',2,'based_on_price',0.00,NULL,49.99,'2026-05-07 01:57:57','2026-05-07 01:57:57');

--
-- Table structure for table `ec_specification_attributes`
--

CREATE TABLE `ec_specification_attributes` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `group_id` bigint unsigned NOT NULL,
  `name` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
  `type` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL,
  `options` text COLLATE utf8mb4_unicode_ci,
  `default_value` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  `author_type` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `author_id` bigint unsigned DEFAULT NULL,
  PRIMARY KEY (`id`),
  KEY `author_index` (`author_type`,`author_id`)
) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_specification_attributes`
--

INSERT INTO `ec_specification_attributes` VALUES (1,1,'Composition','text',NULL,'55% Polyester, 30% Acrylic, 13% Polyamide, 2% Elastane','2026-05-07 01:57:53','2026-05-07 01:57:53',NULL,NULL),(2,1,'Origin','text',NULL,'Made in Portugal','2026-05-07 01:57:53','2026-05-07 01:57:53',NULL,NULL),(3,1,'Care','text',NULL,'Machine wash cold. Tumble dry low. Do not bleach.','2026-05-07 01:57:53','2026-05-07 01:57:53',NULL,NULL),(4,2,'Designed In','text',NULL,'Barcelona, Spain','2026-05-07 01:57:53','2026-05-07 01:57:53',NULL,NULL),(5,2,'Warranty','text',NULL,'12 months manufacturer warranty','2026-05-07 01:57:53','2026-05-07 01:57:53',NULL,NULL),(6,2,'Made From Recycled Materials','checkbox',NULL,'1','2026-05-07 01:57:53','2026-05-07 01:57:53',NULL,NULL);

--
-- Table structure for table `ec_specification_attributes_translations`
--

CREATE TABLE `ec_specification_attributes_translations` (
  `lang_code` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL,
  `ec_specification_attributes_id` bigint unsigned NOT NULL,
  `name` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `options` text COLLATE utf8mb4_unicode_ci,
  `default_value` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  PRIMARY KEY (`lang_code`,`ec_specification_attributes_id`),
  KEY `idx_specification_attributes_fk` (`ec_specification_attributes_id`),
  KEY `idx_specification_attributes_specification_attributes_lang` (`ec_specification_attributes_id`,`lang_code`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_specification_attributes_translations`
--


--
-- Table structure for table `ec_specification_groups`
--

CREATE TABLE `ec_specification_groups` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `name` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
  `description` varchar(400) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  `author_type` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `author_id` bigint unsigned DEFAULT NULL,
  PRIMARY KEY (`id`),
  KEY `author_index` (`author_type`,`author_id`)
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_specification_groups`
--

INSERT INTO `ec_specification_groups` VALUES (1,'Material & Composition','Fibre breakdown, origin and care guidance.','2026-05-07 01:57:53','2026-05-07 01:57:53',NULL,NULL),(2,'Product Details','Provenance, warranty and sustainability.','2026-05-07 01:57:53','2026-05-07 01:57:53',NULL,NULL);

--
-- Table structure for table `ec_specification_groups_translations`
--

CREATE TABLE `ec_specification_groups_translations` (
  `lang_code` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL,
  `ec_specification_groups_id` bigint unsigned NOT NULL,
  `name` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `description` varchar(400) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  PRIMARY KEY (`lang_code`,`ec_specification_groups_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_specification_groups_translations`
--


--
-- Table structure for table `ec_specification_table_group`
--

CREATE TABLE `ec_specification_table_group` (
  `table_id` bigint unsigned NOT NULL,
  `group_id` bigint unsigned NOT NULL,
  `order` tinyint NOT NULL DEFAULT '0',
  PRIMARY KEY (`table_id`,`group_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_specification_table_group`
--

INSERT INTO `ec_specification_table_group` VALUES (1,1,0),(1,2,1);

--
-- Table structure for table `ec_specification_tables`
--

CREATE TABLE `ec_specification_tables` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `name` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
  `description` varchar(400) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  `author_type` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `author_id` bigint unsigned DEFAULT NULL,
  PRIMARY KEY (`id`),
  KEY `author_index` (`author_type`,`author_id`)
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_specification_tables`
--

INSERT INTO `ec_specification_tables` VALUES (1,'Default Specifications','Default specification layout applied to all products.','2026-05-07 01:57:53','2026-05-07 01:57:53',NULL,NULL);

--
-- Table structure for table `ec_specification_tables_translations`
--

CREATE TABLE `ec_specification_tables_translations` (
  `lang_code` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL,
  `ec_specification_tables_id` bigint unsigned NOT NULL,
  `name` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `description` varchar(400) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  PRIMARY KEY (`lang_code`,`ec_specification_tables_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_specification_tables_translations`
--


--
-- Table structure for table `ec_store_locators`
--

CREATE TABLE `ec_store_locators` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `name` varchar(60) COLLATE utf8mb4_unicode_ci NOT NULL,
  `email` varchar(60) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `phone` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL,
  `address` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
  `country` varchar(120) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `state` varchar(120) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `city` varchar(120) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `is_primary` tinyint(1) DEFAULT '0',
  `is_shipping_location` tinyint(1) DEFAULT '1',
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  `zip_code` varchar(20) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_store_locators`
--


--
-- Table structure for table `ec_tax_products`
--

CREATE TABLE `ec_tax_products` (
  `tax_id` bigint unsigned NOT NULL,
  `product_id` bigint unsigned NOT NULL,
  PRIMARY KEY (`product_id`,`tax_id`),
  KEY `ec_tax_products_tax_id_index` (`tax_id`),
  KEY `ec_tax_products_product_id_index` (`product_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_tax_products`
--


--
-- Table structure for table `ec_tax_rules`
--

CREATE TABLE `ec_tax_rules` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `tax_id` bigint unsigned NOT NULL,
  `country` varchar(120) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `state` varchar(120) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `city` varchar(120) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `zip_code` varchar(20) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `priority` int DEFAULT NULL,
  `is_enabled` tinyint(1) NOT NULL DEFAULT '1',
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  `percentage` float DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_tax_rules`
--


--
-- Table structure for table `ec_taxes`
--

CREATE TABLE `ec_taxes` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `title` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `percentage` float DEFAULT NULL,
  `priority` int DEFAULT NULL,
  `status` varchar(60) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'published',
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_taxes`
--


--
-- Table structure for table `ec_taxes_translations`
--

CREATE TABLE `ec_taxes_translations` (
  `lang_code` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
  `ec_taxes_id` bigint unsigned NOT NULL,
  `title` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  PRIMARY KEY (`lang_code`,`ec_taxes_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_taxes_translations`
--


--
-- Table structure for table `ec_wish_lists`
--

CREATE TABLE `ec_wish_lists` (
  `customer_id` bigint unsigned NOT NULL,
  `product_id` bigint unsigned NOT NULL,
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  PRIMARY KEY (`customer_id`,`product_id`),
  KEY `wishlist_relation_index` (`product_id`,`customer_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `ec_wish_lists`
--


--
-- Table structure for table `failed_jobs`
--

CREATE TABLE `failed_jobs` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `uuid` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
  `connection` text COLLATE utf8mb4_unicode_ci NOT NULL,
  `queue` text COLLATE utf8mb4_unicode_ci NOT NULL,
  `payload` longtext COLLATE utf8mb4_unicode_ci NOT NULL,
  `exception` longtext COLLATE utf8mb4_unicode_ci NOT NULL,
  `failed_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`),
  UNIQUE KEY `failed_jobs_uuid_unique` (`uuid`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `failed_jobs`
--


--
-- Table structure for table `faq_categories`
--

CREATE TABLE `faq_categories` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `name` varchar(120) COLLATE utf8mb4_unicode_ci NOT NULL,
  `order` tinyint NOT NULL DEFAULT '0',
  `status` varchar(60) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'published',
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  `description` varchar(400) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `faq_categories`
--

INSERT INTO `faq_categories` VALUES (1,'Orders &amp; Shipping',0,'published','2026-05-07 01:57:52','2026-05-07 01:57:52','Everything about placing, tracking, and receiving your order.'),(2,'Returns &amp; Refunds',1,'published','2026-05-07 01:57:52','2026-05-07 01:57:52','Our 30-day return policy and how to start a return.'),(3,'Products &amp; Stock',2,'published','2026-05-07 01:57:52','2026-05-07 01:57:52','Sizing, materials, restocks, and product care.'),(4,'Account &amp; Payment',3,'published','2026-05-07 01:57:52','2026-05-07 01:57:52','Managing your account and accepted payment methods.');

--
-- Table structure for table `faq_categories_translations`
--

CREATE TABLE `faq_categories_translations` (
  `lang_code` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL,
  `faq_categories_id` bigint unsigned NOT NULL,
  `name` varchar(120) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  PRIMARY KEY (`lang_code`,`faq_categories_id`),
  KEY `idx_faq_cat_trans_faq_cat_id` (`faq_categories_id`),
  KEY `idx_faq_cat_trans_faq_cat_lang` (`faq_categories_id`,`lang_code`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `faq_categories_translations`
--

INSERT INTO `faq_categories_translations` VALUES ('ar',1,'Orders &amp; Shipping'),('ar',2,'Returns &amp; Refunds'),('ar',3,'Products &amp; Stock'),('ar',4,'Account &amp; Payment'),('fr',1,'Orders &amp; Shipping'),('fr',2,'Returns &amp; Refunds'),('fr',3,'Products &amp; Stock'),('fr',4,'Account &amp; Payment'),('id',1,'Orders &amp; Shipping'),('id',2,'Returns &amp; Refunds'),('id',3,'Products &amp; Stock'),('id',4,'Account &amp; Payment'),('vi',1,'Orders &amp; Shipping'),('vi',2,'Returns &amp; Refunds'),('vi',3,'Products &amp; Stock'),('vi',4,'Account &amp; Payment');

--
-- Table structure for table `faqs`
--

CREATE TABLE `faqs` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `question` text COLLATE utf8mb4_unicode_ci NOT NULL,
  `answer` text COLLATE utf8mb4_unicode_ci NOT NULL,
  `category_id` bigint unsigned NOT NULL,
  `status` varchar(60) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'published',
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=14 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `faqs`
--

INSERT INTO `faqs` VALUES (1,'How long does standard shipping take?','Standard shipping arrives within 3-5 business days for domestic orders and 7-12 business days for international destinations. Express options are available at checkout.',1,'published','2026-05-07 01:57:52','2026-05-07 01:57:52'),(2,'Do you offer free shipping?','Yes — orders above $99 ship free within the continental US. International free-shipping thresholds vary by destination and are shown at checkout.',1,'published','2026-05-07 01:57:52','2026-05-07 01:57:52'),(3,'How can I track my order?','You will receive a tracking link by email as soon as your order is dispatched. You can also follow the parcel from your account dashboard under My Orders.',1,'published','2026-05-07 01:57:52','2026-05-07 01:57:52'),(4,'Can I change the shipping address after I place my order?','Address changes are possible if your order has not yet entered fulfilment. Contact us within two hours of placing the order for the best chance of a successful update.',1,'published','2026-05-07 01:57:52','2026-05-07 01:57:52'),(5,'What is your return policy?','We offer 30 days from delivery to return any unworn item in its original condition. Sale items and intimate apparel are final sale.',2,'published','2026-05-07 01:57:52','2026-05-07 01:57:52'),(6,'How do I start a return?','Start a return from your account dashboard or email returns@amerce.test with your order number. We will send a prepaid return label for domestic orders.',2,'published','2026-05-07 01:57:52','2026-05-07 01:57:52'),(7,'When will I receive my refund?','Refunds are processed within 3-5 business days of us receiving your return. The funds typically appear on your statement within an additional 5-7 days, depending on your bank.',2,'published','2026-05-07 01:57:52','2026-05-07 01:57:52'),(8,'How do I find the right size?','Each product page includes a size chart based on actual garment measurements. If you are between sizes, we generally recommend sizing up for our knitwear and outerwear.',3,'published','2026-05-07 01:57:52','2026-05-07 01:57:52'),(9,'When will sold-out items be restocked?','Most styles restock within 2-4 weeks. Click the Notify Me button on any sold-out variant to be alerted by email the moment it returns.',3,'published','2026-05-07 01:57:52','2026-05-07 01:57:52'),(10,'Are your products ethically sourced?','Yes. We work only with manufacturing partners who meet our supplier code of conduct, covering fair wages, safe conditions, and verified material provenance.',3,'published','2026-05-07 01:57:52','2026-05-07 01:57:52'),(11,'Which payment methods do you accept?','We accept Visa, Mastercard, American Express, Apple Pay, Google Pay, PayPal, and Klarna for eligible markets.',4,'published','2026-05-07 01:57:52','2026-05-07 01:57:52'),(12,'Is it safe to enter my card details?','All payments are processed by PCI-DSS Level 1 certified providers using TLS 1.3 encryption. We never store full card numbers on our servers.',4,'published','2026-05-07 01:57:52','2026-05-07 01:57:52'),(13,'How do I reset my password?','Use the Forgot Password link on the login page. A reset link will be sent to your registered email address and is valid for 30 minutes.',4,'published','2026-05-07 01:57:52','2026-05-07 01:57:52');

--
-- Table structure for table `faqs_translations`
--

CREATE TABLE `faqs_translations` (
  `lang_code` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL,
  `faqs_id` bigint unsigned NOT NULL,
  `question` text COLLATE utf8mb4_unicode_ci,
  `answer` text COLLATE utf8mb4_unicode_ci,
  PRIMARY KEY (`lang_code`,`faqs_id`),
  KEY `idx_faqs_trans_faqs_id` (`faqs_id`),
  KEY `idx_faqs_trans_faq_lang` (`faqs_id`,`lang_code`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `faqs_translations`
--

INSERT INTO `faqs_translations` VALUES ('ar',1,'كم تستغرق مدة الشحن القياسي؟','يصل الشحن القياسي خلال 3-5 أيام عمل للطلبات المحلية ومن 7 إلى 12 يوم عمل للوجهات الدولية. تتوفّر خيارات الشحن السريع عند إتمام الطلب.'),('ar',2,'هل تقدّمون خدمة الشحن المجاني؟','نعم — تستفيد الطلبات التي تتجاوز قيمتها 99$ من شحن مجاني داخل الولايات المتحدة القارّية. تختلف عتبة الشحن المجاني الدولي حسب الوجهة وتظهر عند إتمام الطلب.'),('ar',3,'كيف يمكنني تتبّع طلبي؟','ستصلك رسالة بريد إلكتروني تتضمّن رابط التتبّع فور شحن الطلب. يمكنك أيضاً متابعة الشحنة من لوحة الحساب ضمن قسم طلباتي.'),('ar',4,'هل يمكنني تغيير عنوان الشحن بعد تأكيد الطلب؟','يمكن تعديل العنوان ما لم تكن المعالجة قد بدأت. تواصل معنا خلال ساعتين من تأكيد الطلب لزيادة فرص التحديث الناجح.'),('ar',5,'ما هي سياسة الإرجاع لديكم؟','نمنحك 30 يوماً من تاريخ الاستلام لإرجاع أي قطعة لم تُستخدم وفي حالتها الأصلية. القطع المخفّضة والملابس الداخلية مبيعاتها نهائية ولا تُسترجع.'),('ar',6,'كيف أبدأ عملية الإرجاع؟','ابدأ الإرجاع من لوحة حسابك أو راسلنا على returns@amerce.test مع رقم الطلب. سنرسل لك ملصق شحن إرجاع مدفوع مسبقاً للطلبات المحلية.'),('ar',7,'متى أستلم مبلغ الاسترداد؟','تتمّ معالجة الاسترداد خلال 3-5 أيام عمل من استلامنا للقطعة المُرجعة. عادةً ما يظهر المبلغ في كشف حسابك بعد 5-7 أيام إضافية بحسب البنك.'),('ar',8,'كيف أحدّد المقاس المناسب؟','تتضمّن كل صفحة منتج جدول مقاسات مبني على القياسات الفعلية للقطعة. إذا كنت بين مقاسين، عادةً ما ننصح باختيار المقاس الأكبر للتريكو والمعاطف.'),('ar',9,'متى تُعاد المنتجات النافدة إلى المخزون؟','تُعاد معظم القطع إلى المخزون خلال 2-4 أسابيع. اضغط زرّ أبلِغني على أي مقاس نافد لتصلك رسالة بريد إلكتروني فور توفّره.'),('ar',10,'هل منتجاتكم ذات مصادر أخلاقية؟','نعم. نتعامل فقط مع شركاء إنتاج يلتزمون بمدوّنة سلوك الموردين، التي تشمل الأجور العادلة وظروف العمل الآمنة ومصادر الخامات الموثّقة.'),('ar',11,'ما هي وسائل الدفع التي تقبلونها؟','نقبل Visa وMastercard وAmerican Express وApple Pay وGoogle Pay وPayPal وKlarna في الأسواق المدعومة.'),('ar',12,'هل من الآمن إدخال بيانات بطاقتي؟','تتمّ معالجة جميع المدفوعات عبر مزوّد معتمد بشهادة PCI-DSS Level 1 مع تشفير TLS 1.3. لا نخزّن أرقام البطاقات الكاملة على خوادمنا أبداً.'),('ar',13,'كيف أعيد تعيين كلمة المرور؟','استخدم رابط نسيت كلمة المرور في صفحة تسجيل الدخول. سيُرسَل رابط إعادة التعيين إلى بريدك المسجّل ويظلّ صالحاً لمدة 30 دقيقة.'),('fr',1,'Combien de temps prend la livraison standard ?','La livraison standard arrive sous 3 à 5 jours ouvrés pour les commandes nationales et sous 7 à 12 jours ouvrés pour les destinations internationales. Des options de livraison express sont proposées au moment du paiement.'),('fr',2,'Proposez-vous la livraison gratuite ?','Oui : les commandes de plus de 99 $ bénéficient de la livraison gratuite aux États-Unis continentaux. Les seuils de gratuité à l\'international varient selon la destination et s\'affichent au moment du paiement.'),('fr',3,'Comment suivre ma commande ?','Vous recevrez un lien de suivi par e-mail dès l\'expédition de votre commande. Vous pouvez également suivre votre colis depuis votre espace client, dans la rubrique Mes commandes.'),('fr',4,'Puis-je modifier l\'adresse de livraison après avoir passé ma commande ?','Une modification d\'adresse reste possible tant que la commande n\'a pas été préparée. Contactez-nous dans les deux heures suivant votre commande pour maximiser les chances de mise à jour.'),('fr',5,'Quelle est votre politique de retour ?','Vous disposez de 30 jours à compter de la livraison pour retourner tout article non utilisé dans son état d\'origine. Les articles soldés et les sous-vêtements sont des ventes définitives, non échangeables ni remboursables.'),('fr',6,'Comment initier un retour ?','Lancez votre retour depuis votre espace client ou écrivez-nous à returns@amerce.test en précisant votre numéro de commande. Nous vous transmettrons une étiquette de retour prépayée pour les commandes nationales.'),('fr',7,'Quand vais-je être remboursé(e) ?','Les remboursements sont traités sous 3 à 5 jours ouvrés à réception de votre retour. Le crédit apparaît généralement sur votre relevé sous 5 à 7 jours supplémentaires, selon votre banque.'),('fr',8,'Comment trouver la bonne taille ?','Chaque fiche produit comporte un guide des tailles basé sur les mesures réelles du vêtement. Si vous hésitez entre deux tailles, nous recommandons généralement la taille supérieure pour la maille et les manteaux.'),('fr',9,'Quand les articles épuisés seront-ils réapprovisionnés ?','La plupart des modèles sont réapprovisionnés sous 2 à 4 semaines. Cliquez sur le bouton « Me prévenir » de toute déclinaison épuisée pour recevoir un e-mail dès son retour.'),('fr',10,'Vos produits sont-ils issus d\'un approvisionnement éthique ?','Oui. Nous travaillons uniquement avec des partenaires de fabrication qui respectent notre code de conduite fournisseur : salaires équitables, conditions de travail sûres et traçabilité des matières.'),('fr',11,'Quels moyens de paiement acceptez-vous ?','Nous acceptons Visa, Mastercard, American Express, Apple Pay, Google Pay, PayPal et Klarna sur les marchés pris en charge.'),('fr',12,'Est-ce sûr de saisir les informations de ma carte ?','Tous les paiements sont traités par un prestataire certifié PCI-DSS Level 1, avec chiffrement TLS 1.3. Nous ne stockons jamais le numéro de carte complet sur nos serveurs.'),('fr',13,'Comment réinitialiser mon mot de passe ?','Utilisez le lien « Mot de passe oublié » sur la page de connexion. Un lien de réinitialisation est envoyé à votre adresse e-mail enregistrée et reste valable 30 minutes.'),('id',1,'Berapa lama pengiriman standar?','Pengiriman standar tiba dalam 3-5 hari kerja untuk pesanan domestik dan 7-12 hari kerja untuk tujuan internasional. Pilihan pengiriman ekspres tersedia saat checkout.'),('id',2,'Apakah Anda menawarkan pengiriman gratis?','Ya — pesanan di atas $99 mendapatkan pengiriman gratis di seluruh wilayah Amerika Serikat kontinental. Ambang batas pengiriman gratis internasional bervariasi tergantung tujuan dan akan ditampilkan saat checkout.'),('id',3,'Bagaimana cara melacak pesanan saya?','Anda akan menerima tautan pelacakan melalui email segera setelah pesanan Anda dikirim. Anda juga dapat melacak paket dari halaman akun Anda di bagian Pesanan Saya.'),('id',4,'Apakah saya dapat mengubah alamat pengiriman setelah memesan?','Pengubahan alamat dimungkinkan jika pesanan belum diproses. Silakan hubungi kami dalam waktu dua jam setelah memesan untuk peluang pembaruan terbaik.'),('id',5,'Apa kebijakan pengembalian Anda?','Kami memberikan waktu 30 hari sejak pengiriman untuk mengembalikan barang yang belum dipakai dalam kondisi aslinya. Barang sale akhir dan pakaian dalam bersifat final dan tidak dapat dikembalikan.'),('id',6,'Bagaimana cara memulai pengembalian?','Mulai pengembalian dari halaman akun Anda atau kirim email ke returns@amerce.test beserta nomor pesanan. Kami akan mengirimkan label pengiriman pengembalian prabayar untuk pesanan domestik.'),('id',7,'Kapan saya menerima refund?','Refund diproses dalam 3-5 hari kerja setelah barang yang dikembalikan kami terima. Dana biasanya muncul di rekening Anda 5-7 hari setelahnya, tergantung pada bank Anda.'),('id',8,'Bagaimana cara menemukan ukuran yang tepat?','Setiap halaman produk memiliki tabel ukuran berdasarkan ukuran sebenarnya dari produk tersebut. Jika Anda berada di antara dua ukuran, kami biasanya menyarankan untuk memilih ukuran yang lebih besar untuk rajutan dan outerwear.'),('id',9,'Kapan barang yang habis akan tersedia kembali?','Sebagian besar gaya akan tersedia kembali dalam 2-4 minggu. Klik tombol Beri Tahu Saya pada varian yang habis untuk diberi tahu via email saat produk kembali tersedia.'),('id',10,'Apakah produk Anda bersumber secara etis?','Ya. Kami hanya bekerja sama dengan mitra produksi yang memenuhi kode etik pemasok kami, mencakup upah yang adil, kondisi kerja yang aman, dan asal-usul material yang terverifikasi.'),('id',11,'Metode pembayaran apa saja yang Anda terima?','Kami menerima Visa, Mastercard, American Express, Apple Pay, Google Pay, PayPal, dan Klarna untuk pasar yang didukung.'),('id',12,'Apakah aman memasukkan detail kartu saya?','Semua pembayaran diproses oleh penyedia bersertifikat PCI-DSS Level 1 dengan enkripsi TLS 1.3. Kami tidak pernah menyimpan nomor kartu lengkap di server kami.'),('id',13,'Bagaimana cara mengatur ulang kata sandi saya?','Gunakan tautan Lupa Kata Sandi pada halaman login. Tautan pengaturan ulang akan dikirim ke email terdaftar Anda dan berlaku selama 30 menit.'),('vi',1,'Vận chuyển tiêu chuẩn mất bao lâu?','Vận chuyển tiêu chuẩn đến trong vòng 3-5 ngày làm việc cho đơn hàng nội địa và 7-12 ngày làm việc cho điểm đến quốc tế. Lựa chọn vận chuyển nhanh có sẵn tại bước thanh toán.'),('vi',2,'Quý vị có hỗ trợ miễn phí vận chuyển không?','Có — đơn hàng trên 99$ được miễn phí vận chuyển trong khu vực Hoa Kỳ lục địa. Ngưỡng miễn phí vận chuyển quốc tế thay đổi theo điểm đến và được hiển thị tại bước thanh toán.'),('vi',3,'Làm thế nào để theo dõi đơn hàng?','Bạn sẽ nhận được liên kết theo dõi qua email ngay khi đơn hàng được gửi đi. Bạn cũng có thể theo dõi kiện hàng từ trang quản lý tài khoản trong mục Đơn hàng của tôi.'),('vi',4,'Tôi có thể đổi địa chỉ giao hàng sau khi đặt đơn không?','Có thể đổi địa chỉ nếu đơn hàng chưa được xử lý. Hãy liên hệ với chúng tôi trong vòng hai giờ kể từ khi đặt đơn để có cơ hội cập nhật thành công cao nhất.'),('vi',5,'Chính sách đổi trả của quý vị như thế nào?','Chúng tôi cho 30 ngày kể từ ngày giao hàng để trả lại bất kỳ sản phẩm nào chưa qua sử dụng trong tình trạng nguyên bản. Hàng giảm giá và đồ lót là hàng cuối — không đổi trả.'),('vi',6,'Làm thế nào để bắt đầu đổi trả?','Bắt đầu đổi trả từ trang quản lý tài khoản hoặc gửi email đến returns@amerce.test cùng số đơn hàng. Chúng tôi sẽ gửi nhãn vận chuyển trả hàng trả phí trước cho đơn hàng nội địa.'),('vi',7,'Khi nào tôi nhận được tiền hoàn lại?','Tiền hoàn được xử lý trong vòng 3-5 ngày làm việc kể từ khi chúng tôi nhận được hàng trả. Tiền thường xuất hiện trong sao kê của bạn sau thêm 5-7 ngày tùy ngân hàng.'),('vi',8,'Làm thế nào để tìm đúng kích cỡ?','Mỗi trang sản phẩm có bảng kích cỡ dựa trên số đo thực tế của sản phẩm. Nếu bạn ở giữa hai size, chúng tôi thường khuyên chọn size lớn hơn cho đồ dệt kim và áo khoác.'),('vi',9,'Khi nào sản phẩm hết hàng được nhập lại?','Hầu hết các kiểu được nhập lại trong vòng 2-4 tuần. Bấm nút Thông báo cho tôi trên bất kỳ biến thể nào hết hàng để được thông báo qua email khi sản phẩm trở lại.'),('vi',10,'Sản phẩm của quý vị có nguồn cung có đạo đức không?','Có. Chúng tôi chỉ làm việc với các đối tác sản xuất đáp ứng quy tắc ứng xử nhà cung cấp, bao gồm lương công bằng, điều kiện an toàn và nguồn gốc vật liệu được xác minh.'),('vi',11,'Quý vị chấp nhận những phương thức thanh toán nào?','Chúng tôi chấp nhận Visa, Mastercard, American Express, Apple Pay, Google Pay, PayPal và Klarna cho các thị trường được hỗ trợ.'),('vi',12,'Nhập thông tin thẻ có an toàn không?','Mọi thanh toán đều được xử lý bởi nhà cung cấp được chứng nhận PCI-DSS Level 1 với mã hóa TLS 1.3. Chúng tôi không bao giờ lưu trữ số thẻ đầy đủ trên máy chủ.'),('vi',13,'Làm thế nào để đặt lại mật khẩu?','Sử dụng liên kết Quên mật khẩu trên trang đăng nhập. Một liên kết đặt lại sẽ được gửi đến email đăng ký của bạn và có hiệu lực trong 30 phút.');

--
-- Table structure for table `fob_product_size_guide_relations`
--

CREATE TABLE `fob_product_size_guide_relations` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `size_guide_id` bigint unsigned NOT NULL,
  `reference_id` bigint unsigned NOT NULL,
  `reference_type` varchar(60) COLLATE utf8mb4_unicode_ci NOT NULL,
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  PRIMARY KEY (`id`),
  KEY `fob_psg_relations_size_guide_id_idx` (`size_guide_id`),
  KEY `fob_psg_relations_ref_idx` (`reference_id`,`reference_type`),
  CONSTRAINT `fob_product_size_guide_relations_size_guide_id_foreign` FOREIGN KEY (`size_guide_id`) REFERENCES `fob_product_size_guides` (`id`) ON DELETE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `fob_product_size_guide_relations`
--


--
-- Table structure for table `fob_product_size_guides`
--

CREATE TABLE `fob_product_size_guides` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `name` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
  `description` text COLLATE utf8mb4_unicode_ci,
  `image` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `table_headers` json DEFAULT NULL,
  `table_rows` json DEFAULT NULL,
  `status` varchar(60) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'published',
  `order` int NOT NULL DEFAULT '0',
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  PRIMARY KEY (`id`),
  KEY `fob_psg_status_idx` (`status`),
  KEY `fob_psg_order_idx` (`order`)
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `fob_product_size_guides`
--

INSERT INTO `fob_product_size_guides` VALUES (1,'Default Size Chart','<h6>Bust</h6><p>Measure around the fullest part of your bust.</p><h6>Waist</h6><p>Measure around the narrowest part of your torso.</p><h6>Low Hip</h6><p>With your feet together measure around the fullest part of your hips/rear.</p>',NULL,'[\"size\", \"us\", \"bust\", \"waist\", \"low-hip\"]','[[\"XS\", \"2\", \"32\", \"24 - 25\", \"33 - 34\"], [\"S\", \"4\", \"34 - 35\", \"26 - 27\", \"35 - 26\"], [\"M\", \"6\", \"36 - 37\", \"28 - 29\", \"38 - 40\"], [\"L\", \"8\", \"38 - 29\", \"30 - 31\", \"42 - 44\"], [\"XL\", \"10\", \"40 - 41\", \"32 - 33\", \"45 - 47\"], [\"XXL\", \"12\", \"42 - 43\", \"34 - 35\", \"48 - 50\"]]','published',0,'2026-05-07 01:57:53','2026-05-07 01:57:53');

--
-- Table structure for table `fob_size_guide_headers`
--

CREATE TABLE `fob_size_guide_headers` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `name` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
  `slug` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
  `category` varchar(60) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'general',
  `order` int NOT NULL DEFAULT '0',
  `status` varchar(60) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'published',
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  PRIMARY KEY (`id`),
  UNIQUE KEY `fob_size_guide_headers_slug_unique` (`slug`),
  KEY `fob_psg_headers_status_idx` (`status`),
  KEY `fob_psg_headers_category_idx` (`category`),
  KEY `fob_psg_headers_order_idx` (`order`)
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `fob_size_guide_headers`
--

INSERT INTO `fob_size_guide_headers` VALUES (1,'Size','size','general',0,'published','2026-05-07 01:57:53','2026-05-07 01:57:53'),(2,'US','us','general',1,'published','2026-05-07 01:57:53','2026-05-07 01:57:53'),(3,'Bust','bust','general',2,'published','2026-05-07 01:57:53','2026-05-07 01:57:53'),(4,'Waist','waist','general',3,'published','2026-05-07 01:57:53','2026-05-07 01:57:53'),(5,'Low Hip','low-hip','general',4,'published','2026-05-07 01:57:53','2026-05-07 01:57:53');

--
-- Table structure for table `fob_size_guide_headers_translations`
--

CREATE TABLE `fob_size_guide_headers_translations` (
  `lang_code` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL,
  `fob_size_guide_headers_id` bigint unsigned NOT NULL,
  `name` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  PRIMARY KEY (`lang_code`,`fob_size_guide_headers_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `fob_size_guide_headers_translations`
--


--
-- Table structure for table `galleries`
--

CREATE TABLE `galleries` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `name` varchar(120) COLLATE utf8mb4_unicode_ci NOT NULL,
  `description` longtext COLLATE utf8mb4_unicode_ci NOT NULL,
  `is_featured` tinyint unsigned NOT NULL DEFAULT '0',
  `order` tinyint unsigned NOT NULL DEFAULT '0',
  `image` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `user_id` bigint unsigned DEFAULT NULL,
  `status` varchar(60) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'published',
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  PRIMARY KEY (`id`),
  KEY `galleries_user_id_index` (`user_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `galleries`
--


--
-- Table structure for table `galleries_translations`
--

CREATE TABLE `galleries_translations` (
  `lang_code` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL,
  `galleries_id` bigint unsigned NOT NULL,
  `name` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `description` longtext COLLATE utf8mb4_unicode_ci,
  PRIMARY KEY (`lang_code`,`galleries_id`),
  KEY `idx_galleries_trans_galleries_id` (`galleries_id`),
  KEY `idx_galleries_trans_gallery_lang` (`galleries_id`,`lang_code`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `galleries_translations`
--


--
-- Table structure for table `gallery_meta`
--

CREATE TABLE `gallery_meta` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `images` text COLLATE utf8mb4_unicode_ci,
  `reference_id` bigint unsigned NOT NULL,
  `reference_type` varchar(120) COLLATE utf8mb4_unicode_ci NOT NULL,
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  PRIMARY KEY (`id`),
  KEY `gallery_meta_reference_id_index` (`reference_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `gallery_meta`
--


--
-- Table structure for table `gallery_meta_translations`
--

CREATE TABLE `gallery_meta_translations` (
  `lang_code` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL,
  `gallery_meta_id` bigint unsigned NOT NULL,
  `images` text COLLATE utf8mb4_unicode_ci,
  PRIMARY KEY (`lang_code`,`gallery_meta_id`),
  KEY `idx_gallery_meta_trans_gm_id` (`gallery_meta_id`),
  KEY `idx_gallery_meta_trans_gm_lang` (`gallery_meta_id`,`lang_code`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `gallery_meta_translations`
--


--
-- Table structure for table `jobs`
--

CREATE TABLE `jobs` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `queue` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
  `payload` longtext COLLATE utf8mb4_unicode_ci NOT NULL,
  `attempts` tinyint unsigned NOT NULL,
  `reserved_at` int unsigned DEFAULT NULL,
  `available_at` int unsigned NOT NULL,
  `created_at` int unsigned NOT NULL,
  PRIMARY KEY (`id`),
  KEY `jobs_queue_index` (`queue`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `jobs`
--


--
-- Table structure for table `language_meta`
--

CREATE TABLE `language_meta` (
  `lang_meta_id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `lang_meta_code` varchar(20) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `lang_meta_origin` varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL,
  `reference_id` bigint unsigned NOT NULL,
  `reference_type` varchar(120) COLLATE utf8mb4_unicode_ci NOT NULL,
  PRIMARY KEY (`lang_meta_id`),
  KEY `language_meta_reference_id_index` (`reference_id`),
  KEY `meta_code_index` (`lang_meta_code`),
  KEY `meta_origin_index` (`lang_meta_origin`),
  KEY `meta_reference_type_index` (`reference_type`)
) ENGINE=InnoDB AUTO_INCREMENT=37 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `language_meta`
--

INSERT INTO `language_meta` VALUES (7,'en','75e0b63b98559993a4716a75eeb94b7b',3,'Botble\\Menu\\Models\\Menu'),(8,'en','62b86b84a5161297419af5f92af1f1c8',2,'Botble\\Menu\\Models\\Menu'),(9,'en','0c4419b32ab13b20d3a93bb0ef247e0e',1,'Botble\\Menu\\Models\\Menu'),(10,'en','c801f577fb1c7a34e3a7a9d940e5ce42',1,'Botble\\Menu\\Models\\MenuLocation'),(11,'en','58b4af49131aa9631e6eca6fcc0f0ad0',2,'Botble\\Menu\\Models\\MenuLocation'),(12,'en','40597a71a7a4d06e7d695921eb85efbd',3,'Botble\\Menu\\Models\\MenuLocation'),(13,'vi','c801f577fb1c7a34e3a7a9d940e5ce42',4,'Botble\\Menu\\Models\\MenuLocation'),(14,'vi','0c4419b32ab13b20d3a93bb0ef247e0e',4,'Botble\\Menu\\Models\\Menu'),(15,'vi','58b4af49131aa9631e6eca6fcc0f0ad0',5,'Botble\\Menu\\Models\\MenuLocation'),(16,'vi','62b86b84a5161297419af5f92af1f1c8',5,'Botble\\Menu\\Models\\Menu'),(17,'vi','40597a71a7a4d06e7d695921eb85efbd',6,'Botble\\Menu\\Models\\MenuLocation'),(18,'vi','75e0b63b98559993a4716a75eeb94b7b',6,'Botble\\Menu\\Models\\Menu'),(19,'ar','c801f577fb1c7a34e3a7a9d940e5ce42',7,'Botble\\Menu\\Models\\MenuLocation'),(20,'ar','0c4419b32ab13b20d3a93bb0ef247e0e',7,'Botble\\Menu\\Models\\Menu'),(21,'ar','58b4af49131aa9631e6eca6fcc0f0ad0',8,'Botble\\Menu\\Models\\MenuLocation'),(22,'ar','62b86b84a5161297419af5f92af1f1c8',8,'Botble\\Menu\\Models\\Menu'),(23,'ar','40597a71a7a4d06e7d695921eb85efbd',9,'Botble\\Menu\\Models\\MenuLocation'),(24,'ar','75e0b63b98559993a4716a75eeb94b7b',9,'Botble\\Menu\\Models\\Menu'),(25,'fr','c801f577fb1c7a34e3a7a9d940e5ce42',10,'Botble\\Menu\\Models\\MenuLocation'),(26,'fr','0c4419b32ab13b20d3a93bb0ef247e0e',10,'Botble\\Menu\\Models\\Menu'),(27,'fr','58b4af49131aa9631e6eca6fcc0f0ad0',11,'Botble\\Menu\\Models\\MenuLocation'),(28,'fr','62b86b84a5161297419af5f92af1f1c8',11,'Botble\\Menu\\Models\\Menu'),(29,'fr','40597a71a7a4d06e7d695921eb85efbd',12,'Botble\\Menu\\Models\\MenuLocation'),(30,'fr','75e0b63b98559993a4716a75eeb94b7b',12,'Botble\\Menu\\Models\\Menu'),(31,'id','c801f577fb1c7a34e3a7a9d940e5ce42',13,'Botble\\Menu\\Models\\MenuLocation'),(32,'id','0c4419b32ab13b20d3a93bb0ef247e0e',13,'Botble\\Menu\\Models\\Menu'),(33,'id','58b4af49131aa9631e6eca6fcc0f0ad0',14,'Botble\\Menu\\Models\\MenuLocation'),(34,'id','62b86b84a5161297419af5f92af1f1c8',14,'Botble\\Menu\\Models\\Menu'),(35,'id','40597a71a7a4d06e7d695921eb85efbd',15,'Botble\\Menu\\Models\\MenuLocation'),(36,'id','75e0b63b98559993a4716a75eeb94b7b',15,'Botble\\Menu\\Models\\Menu');

--
-- Table structure for table `languages`
--

CREATE TABLE `languages` (
  `lang_id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `lang_name` varchar(120) COLLATE utf8mb4_unicode_ci NOT NULL,
  `lang_locale` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL,
  `lang_code` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL,
  `lang_flag` varchar(20) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `lang_is_default` tinyint unsigned NOT NULL DEFAULT '0',
  `lang_order` int NOT NULL DEFAULT '0',
  `lang_is_rtl` tinyint unsigned NOT NULL DEFAULT '0',
  PRIMARY KEY (`lang_id`),
  KEY `lang_locale_index` (`lang_locale`),
  KEY `lang_code_index` (`lang_code`),
  KEY `lang_is_default_index` (`lang_is_default`)
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `languages`
--

INSERT INTO `languages` VALUES (1,'English','en','en','us',1,0,0),(2,'Tiếng Việt','vi','vi','vn',0,1,0),(3,'العربية','ar','ar','sa',0,2,1),(4,'Français','fr','fr','fr',0,3,0),(5,'Bahasa Indonesia','id','id','id',0,4,0);

--
-- Table structure for table `media_files`
--

CREATE TABLE `media_files` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `user_id` bigint unsigned NOT NULL,
  `name` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
  `alt` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `folder_id` bigint unsigned NOT NULL DEFAULT '0',
  `mime_type` varchar(120) COLLATE utf8mb4_unicode_ci NOT NULL,
  `size` int NOT NULL,
  `url` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
  `options` text COLLATE utf8mb4_unicode_ci,
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  `deleted_at` timestamp NULL DEFAULT NULL,
  `visibility` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'public',
  PRIMARY KEY (`id`),
  KEY `media_files_user_id_index` (`user_id`),
  KEY `media_files_index` (`folder_id`,`user_id`,`created_at`),
  KEY `media_files_folder_deleted_name` (`folder_id`,`deleted_at`,`name`)
) ENGINE=InnoDB AUTO_INCREMENT=18 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `media_files`
--

INSERT INTO `media_files` VALUES (1,0,'cod','cod',1,'image/png',12121,'payments/cod-172.png','[]','2026-05-07 01:57:50','2026-05-07 01:57:50',NULL,'public'),(2,0,'bank-transfer','bank-transfer',1,'image/png',29089,'payments/bank-transfer-172.png','[]','2026-05-07 01:57:50','2026-05-07 01:57:50',NULL,'public'),(3,0,'stripe','stripe',1,'image/webp',7516,'payments/stripe-172.webp','[]','2026-05-07 01:57:50','2026-05-07 01:57:50',NULL,'public'),(4,0,'paypal','paypal',1,'image/png',3001,'payments/paypal-167.png','[]','2026-05-07 01:57:51','2026-05-07 01:57:51',NULL,'public'),(5,0,'mollie','mollie',1,'image/png',8968,'payments/mollie-167.png','[]','2026-05-07 01:57:51','2026-05-07 01:57:51',NULL,'public'),(6,0,'paystack','paystack',1,'image/png',31015,'payments/paystack-167.png','[]','2026-05-07 01:57:51','2026-05-07 01:57:51',NULL,'public'),(7,0,'razorpay','razorpay',1,'image/png',8489,'payments/razorpay-167.png','[]','2026-05-07 01:57:51','2026-05-07 01:57:51',NULL,'public'),(8,0,'sslcommerz','sslcommerz',1,'image/png',3482,'payments/sslcommerz-166.png','[]','2026-05-07 01:57:52','2026-05-07 01:57:52',NULL,'public'),(9,0,'tes-1','tes-1',2,'image/jpeg',56974,'testimonials/tes-1.jpg','[]','2026-05-07 01:57:58','2026-05-07 01:57:58',NULL,'public'),(10,0,'tes-2','tes-2',2,'image/jpeg',76238,'testimonials/tes-2.jpg','[]','2026-05-07 01:57:58','2026-05-07 01:57:58',NULL,'public'),(11,0,'member-1','member-1',3,'image/jpeg',39664,'member/member-1.jpg','[]','2026-05-07 01:57:58','2026-05-07 01:57:58',NULL,'public'),(12,0,'member-2','member-2',3,'image/jpeg',45019,'member/member-2.jpg','[]','2026-05-07 01:57:58','2026-05-07 01:57:58',NULL,'public'),(13,0,'member-3','member-3',3,'image/jpeg',43422,'member/member-3.jpg','[]','2026-05-07 01:57:58','2026-05-07 01:57:58',NULL,'public'),(14,0,'member-4','member-4',3,'image/jpeg',32985,'member/member-4.jpg','[]','2026-05-07 01:57:58','2026-05-07 01:57:58',NULL,'public'),(15,0,'s-contact-1','s-contact-1',4,'image/jpeg',204212,'section/s-contact-1.jpg','[]','2026-05-07 01:57:58','2026-05-07 01:57:58',NULL,'public'),(16,0,'s-contact-2','s-contact-2',4,'image/jpeg',70708,'section/s-contact-2.jpg','[]','2026-05-07 01:57:58','2026-05-07 01:57:58',NULL,'public'),(17,0,'banner-12','banner-12',4,'image/jpeg',84309,'section/banner-12.jpg','[]','2026-05-07 01:57:58','2026-05-07 01:57:58',NULL,'public');

--
-- Table structure for table `media_folder_permissions`
--

CREATE TABLE `media_folder_permissions` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `folder_id` bigint unsigned NOT NULL,
  `user_id` bigint unsigned NOT NULL,
  `permission` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'view',
  `granted_by` bigint unsigned DEFAULT NULL,
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  PRIMARY KEY (`id`),
  UNIQUE KEY `media_folder_permissions_folder_id_user_id_unique` (`folder_id`,`user_id`),
  KEY `media_folder_permissions_folder_id_index` (`folder_id`),
  KEY `media_folder_permissions_user_id_index` (`user_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `media_folder_permissions`
--


--
-- Table structure for table `media_folders`
--

CREATE TABLE `media_folders` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `user_id` bigint unsigned NOT NULL,
  `name` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `color` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `slug` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `parent_id` bigint unsigned NOT NULL DEFAULT '0',
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  `deleted_at` timestamp NULL DEFAULT NULL,
  PRIMARY KEY (`id`),
  KEY `media_folders_user_id_index` (`user_id`),
  KEY `media_folders_index` (`parent_id`,`user_id`,`created_at`)
) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `media_folders`
--

INSERT INTO `media_folders` VALUES (1,0,'payments',NULL,'payments',0,'2026-05-07 01:57:50','2026-05-07 01:57:50',NULL),(2,0,'testimonials',NULL,'testimonials',0,'2026-05-07 01:57:57','2026-05-07 01:57:57',NULL),(3,0,'member',NULL,'member',0,'2026-05-07 01:57:58','2026-05-07 01:57:58',NULL),(4,0,'section',NULL,'section',0,'2026-05-07 01:57:58','2026-05-07 01:57:58',NULL);

--
-- Table structure for table `media_settings`
--

CREATE TABLE `media_settings` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `key` varchar(120) COLLATE utf8mb4_unicode_ci NOT NULL,
  `value` text COLLATE utf8mb4_unicode_ci,
  `media_id` bigint unsigned DEFAULT NULL,
  `user_id` bigint unsigned DEFAULT NULL,
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Dumping data for table `media_settings`
--


--
-- Table structure for table `menu_locations`
--

CREATE TABLE `menu_locations` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `menu_id` bigint unsigned NOT NULL,
  `location` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  PRIMARY KEY (`id`),
  KEY `menu_locations_menu_id_created_at_index` (`menu_id`,`created_at`)
) ENGINE=InnoDB AUTO_INCREMENT=16 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
