-- Complete database import
-- Source database: ecommerce_app
-- Target database: selected database in phpMyAdmin
-- Created at: 2026-07-22T18:06:31.045Z



-- --------------------------------------------------------
-- Table structure for `accounting_expense_categories`

CREATE TABLE `accounting_expense_categories` (
  `id` int NOT NULL AUTO_INCREMENT,
  `category_name` varchar(120) NOT NULL,
  `sort_order` int NOT NULL DEFAULT '0',
  `is_active` tinyint(1) NOT NULL DEFAULT '1',
  `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`),
  UNIQUE KEY `uq_accounting_expense_categories_name` (`category_name`)
) ENGINE=InnoDB AUTO_INCREMENT=15 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

INSERT INTO `accounting_expense_categories` (`id`, `category_name`, `sort_order`, `is_active`) VALUES
('1', 'Electricity', '10', '1'),
('2', 'Rent', '20', '1'),
('3', 'Salaries', '30', '1'),
('4', 'Marketing', '40', '1'),
('5', 'Packaging', '50', '1'),
('6', 'Courier / Delivery', '60', '1'),
('7', 'Miscellaneous', '70', '1');

-- --------------------------------------------------------
-- Table structure for `accounting_expenses`

CREATE TABLE `accounting_expenses` (
  `id` bigint NOT NULL AUTO_INCREMENT,
  `category_id` int DEFAULT NULL,
  `title` varchar(255) NOT NULL,
  `amount` decimal(18,2) NOT NULL DEFAULT '0.00',
  `expense_date` date NOT NULL,
  `notes` text,
  `created_by` int DEFAULT NULL,
  `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`),
  KEY `idx_accounting_expenses_date` (`expense_date`),
  KEY `idx_accounting_expenses_category` (`category_id`),
  CONSTRAINT `fk_accounting_expenses_category` FOREIGN KEY (`category_id`) REFERENCES `accounting_expense_categories` (`id`) ON DELETE SET NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- No data for `accounting_expenses`

-- --------------------------------------------------------
-- Table structure for `ai_product_metadata`

CREATE TABLE `ai_product_metadata` (
  `id` bigint NOT NULL AUTO_INCREMENT,
  `product_id` int NOT NULL,
  `ai_tags_json` json DEFAULT NULL,
  `ai_keywords_json` json DEFAULT NULL,
  `ai_product_type` varchar(120) DEFAULT NULL,
  `ai_shape_style` varchar(120) DEFAULT NULL,
  `ai_audience_json` json DEFAULT NULL,
  `ai_use_cases_json` json DEFAULT NULL,
  `synonyms_json` json DEFAULT NULL,
  `confidence_score` decimal(5,4) NOT NULL DEFAULT '0.0000',
  `generated_by` varchar(40) NOT NULL DEFAULT 'local',
  `generated_at` datetime DEFAULT NULL,
  `reviewed_at` datetime DEFAULT NULL,
  `review_status` enum('pending','approved','rejected') NOT NULL DEFAULT 'pending',
  `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `updated_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`),
  UNIQUE KEY `uq_ai_product_metadata_product` (`product_id`),
  KEY `idx_ai_product_metadata_review_status` (`review_status`),
  KEY `idx_ai_product_metadata_generated_at` (`generated_at`),
  KEY `idx_ai_product_metadata_confidence` (`confidence_score`),
  CONSTRAINT `fk_ai_product_metadata_product` FOREIGN KEY (`product_id`) REFERENCES `products` (`id`) ON DELETE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=233 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

INSERT INTO `ai_product_metadata` (`id`, `product_id`, `ai_tags_json`, `ai_keywords_json`, `ai_product_type`, `ai_shape_style`, `ai_audience_json`, `ai_use_cases_json`, `synonyms_json`, `confidence_score`, `generated_by`, `generated_at`, `reviewed_at`, `review_status`) VALUES
('1', '4', '["fdafsafdsa"]', '["fdafsafdsa"]', 'fdafsafdsa', NULL, '[]', '[]', '[]', '0.3900', 'local', '2026-07-12 20:34:00', '2026-05-31 11:07:17', 'pending'),
('4', '5', '["asdfa"]', '["asdfa","frozen","items","item","dfsa","df","smaf"]', 'asdfa', NULL, '[]', '[]', '[]', '0.3900', 'local', '2026-07-12 20:34:00', '2026-05-31 11:07:17', 'pending'),
('5', '6', '["chicken","tikka","pizza"]', '["chicken","tikka","pizza","pizzas","cheese","onions","onion","black","olives","oliv","organo"]', 'chicken tikka', NULL, '[]', '[]', '[]', '0.5200', 'local', '2026-07-12 20:34:00', '2026-05-31 11:07:17', 'pending'),
('6', '7', '["zinger","burger"]', '["zinger","burger","features","featur","crispy","spicy","chicken","fillet","freshly","toasted","bun","topped","tangy","sauce","fresh","lettuce","ripe","tomatoes","tomato","each","bite","offers","offer","perfect","blend","crunch","spice","making","irresistible","choice","those","craving","flavorful","satisfying","meal"]', 'zinger burger', NULL, '[]', '[]', '[]', '0.4800', 'local', '2026-07-12 20:34:00', '2026-05-31 11:07:17', 'pending'),
('7', '8', '["chicken","burger","cosmetic","makeup","beauty","skincare"]', '["chicken","burger","div","class","w-full","text-token-text-primary","dir","auto","data-testid","conversation-turn-9","data-scroll-anchor","false","text-base","py-","18px","px-3","md","px-4","m-auto","px-5","lg","px-1","xl","mx-auto","flex","flex-1","gap-4","gap-5","gap-6","max-w-3xl","max-w-","40rem","48rem","group","conversation-turn","relative","min-w-0","flex-col","agent-turn","gap-1","gap-3","flex-grow","max-w-full","min-h-","20px","text-message","items-end","gap-2","whitespace-pre-wrap","break-words","break-word","amp","mt-5","overflow-x-auto","data-message-author-role","assistant","data-message-id","938a40cc-ebab-40e1-b56e-de39f5d67c0e","empty","hidden","first","pt-","3px","markdown","prose","dark","prose-invert","nthe","offers","offer","tender","juicy","patty","nestled","soft","bun","complemented","crisp","lettuce","ripe","tomatoes","tomato","creamy","mayonnaise","classic","provides","provid","harmonious","harmoniou","blend","flavors","flavor","textures","textur","perfect","delightful","lighter","meal","option","conversation-turn-10","user","aaa2c9a9-df83-4ce1-98bc-0221bc3f9b3c","rtl","items-start","70","rounded-3xl","bg-","f4f4f4","py-2","bg-token-main-surface-secondary","absolute","bottom-0","right-full","top-0","-mr-3","pr-5","pt-1","hover_","block","conversation-turn-11","true","flex-shrink-0","pt-0","gizmo-bot-avatar","h-8","w-8","items-center","justify-center","overflow-hidden","rounded-full","p-1","rounded-sm","bg-token-main-surface-primary","cosmetic","makeup","beauty","lipstick","foundation","skincare","cream","lotion"]', 'beauty', NULL, '["general"]', '["personal care"]', '["cosmetic","makeup","beauty","skincare"]', '0.6000', 'local', '2026-07-12 20:34:00', '2026-05-31 11:07:17', 'pending'),
('19', '9', '["grilled","burger"]', '["grilled","burger","offers","offer","smoky","flavorful","beef","patty","perfectly","nestled","soft","bun","topped","crisp","lettuce","fresh","tomatoes","tomato","hint","tangy","sauce","delivers","deliver","balanced","satisfying","bite","perfect","those","who","enjoy","classic","flavor"]', 'grilled burger', NULL, '[]', '[]', '[]', '0.4800', 'local', '2026-07-12 20:34:00', '2026-05-31 11:07:17', 'pending'),
('20', '10', '["chicken","chapali","burger"]', '["chicken","chapali","burger","chapli","features","featur","spicy","flavorful","patty","inspired","traditional","kebabs","kebab","nestled","soft","bun","topped","fresh","lettuce","tomatoes","tomato","tangy","sauce","offers","offer","unique","delicious","deliciou","twist","providing","perfect","blend","spices","spic","textures","textur","unforgettable","dining","experience"]', 'chicken chapali', NULL, '[]', '[]', '[]', '0.5200', 'local', '2026-07-12 20:34:00', '2026-05-31 11:07:17', 'pending'),
('21', '11', '["classic","beef","burger","cosmetic","makeup","beauty","skincare"]', '["classic","beef","burger","showcases","showcas","juicy","perfectly","seasoned","patty","soft","bun","topped","fresh","lettuce","tomatoes","tomato","hint","creamy","sauce","timeless","favorite","offers","offer","delightful","blend","flavors","flavor","textures","textur","making","ideal","choice","those","who","appreciate","traditional","satisfying","cosmetic","makeup","beauty","lipstick","foundation","skincare","cream","lotion"]', 'beauty', NULL, '["general"]', '["personal care"]', '["cosmetic","makeup","beauty","skincare"]', '0.6400', 'local', '2026-07-12 20:34:00', '2026-05-31 11:07:17', 'pending'),
('22', '12', '["double","decker","burger"]', '["double","decker","burger","features","featur","two","juicy","flavorful","beef","patties","patty","stacked","soft","bun","topped","fresh","lettuce","tomatoes","tomato","special","tangy","sauce","hearty","offers","offer","generous","generou","satisfying","meal","perfect","those","big","appetite","love","bold","delicious","deliciou","flavors","flavor"]', 'double decker', NULL, '[]', '[]', '[]', '0.5200', 'local', '2026-07-12 20:34:00', '2026-05-31 11:07:17', 'pending'),
('23', '13', '["chicken","fajita","pizza"]', '["chicken","fajita","pizza","pizzas","savor","zest","our","topped","spicy","melted","cheese","fresh","capsicum","crunchy","onions","onion","green","olives","oliv","sprinkle","oregano","zesty","featuring"]', 'chicken fajita', NULL, '[]', '[]', '[]', '0.5200', 'local', '2026-07-12 20:34:00', '2026-05-31 11:07:17', 'pending'),
('24', '14', '["vegetable","pizza"]', '["vegetable","pizza","pizzas","veggie","delight","black","olives","oliv","cheese","onion","tomato","capsicum","mushroom","jalapeno","oregano","our","packed","fresh","melty","juicy","onions","ripe","tomatoes","crisp","earthy","mushrooms","spicy","jalapenos","dash"]', 'vegetable pizza', NULL, '[]', '[]', '[]', '0.4800', 'local', '2026-07-12 20:34:00', '2026-05-31 11:07:17', 'pending'),
('25', '15', '["chicken","green","chilli","pizza"]', '["chicken","green","chilli","pizza","pizzas","spicy","treat","cheese","olives","oliv","onion","capsicum","sausages","sausag","jalapeno","black","olive","mushroom","oregano","spice","up","your","meal","our","loaded","melted","onions","jalapenos","mushrooms","sprinkle"]', 'chicken green', 'colored', '[]', '[]', '[]', '0.5600', 'local', '2026-07-12 20:34:00', '2026-05-31 11:07:17', 'pending'),
('26', '16', '["cheese","pizza"]', '["cheese","pizza","pizzas","classic","melted","oregano","indulge","simplicity","our","topped","generous","generou","layer","hint"]', 'cheese pizza', NULL, '[]', '[]', '[]', '0.4800', 'local', '2026-07-12 20:34:00', '2026-05-31 11:07:17', 'pending'),
('27', '17', '["kids","kid","meal","baby","children","kids item","grocery","food","snack","drink","beverage","toy","game","kids toy","play item"]', '["kids","kid","meal","perfect","featuring","either","burger","chicken","nuggets","nugget","served","crispy","fries","fry","refreshing","soft","drink","each","comes","com","surprise","toy","making","enjoyable","treat","little","ones","on","baby","child","children","infant","toddler","grocery","food","snack","beverage","juice","tea","coffee","toys","game","games","puzzle","doll"]', 'kids item', NULL, '["baby","kids","children","general"]', '["kids gift","daily use","play"]', '["baby","kids","children","kids item","grocery","food","snack","drink","beverage","toy","game","kids toy","play item"]', '0.8800', 'local', '2026-07-12 20:34:00', '2026-05-31 11:07:17', 'pending'),
('28', '18', '["family","fun"]', '["family","fun","nbsp","ul","li","zinger","burger","chicken","pieces","piec","drumsticks","drumstick","fries","fry","ltr","coca-cola","meal","perfect","choice","sharing","featuring","four","crispy","servings","serving","large","5-liter","bottle","ideal","gathering","group"]', 'family fun', NULL, '[]', '[]', '[]', '0.4800', 'local', '2026-07-12 20:34:00', '2026-05-31 11:07:17', 'pending'),
('29', '19', '["gool","gappay","grocery","food","snack","drink","beverage"]', '["gool","gappay","crispy","tangy","served","fresh","strong","dozen","per","serving","enjoy","plate","beloved","pakistani","street","food","featuring","hollow","semolina","balls","ball","filled","spicy","tamarind","water","chickpeas","chickpea","potatoes","potato","perfectly","dozens","sharing","indulging","popular","snack","grocery","drink","beverage","juice","tea","coffee"]', 'grocery', NULL, '["general"]', '["daily use"]', '["grocery","food","snack","drink","beverage"]', '0.6000', 'local', '2026-07-12 20:34:00', '2026-05-31 11:07:17', 'pending'),
('30', '20', '["dahi","ballay","cosmetic","makeup","beauty","skincare"]', '["dahi","ballay","creamy","served","plate","relish","flavors","flavor","classic","pakistani","dish","made","soft","lentil","fritters","fritter","immersed","cool","spiced","yogurt","topped","tamarind","chutney","spices","spic","delectable","choice","hearty","flavorful","meal","cosmetic","makeup","beauty","lipstick","foundation","skincare","cream","lotion"]', 'beauty', NULL, '["general"]', '["personal care"]', '["cosmetic","makeup","beauty","skincare"]', '0.6000', 'local', '2026-07-12 20:34:00', '2026-05-31 11:07:17', 'pending'),
('31', '21', '["zinger","burger","combo"]', '["zinger","burger","combo","combos","features","featur","crispy","spicy","chicken","fillet","freshly","toasted","bun","topped","tangy","sauce","fresh","lettuce","ripe","tomatoes","tomato","each","bite","offers","offer","perfect","blend","crunch","spice","making","irresistible","choice","those","craving","flavorful","satisfying","meal"]', 'zinger burger', NULL, '[]', '[]', '[]', '0.5200', 'local', '2026-07-12 20:34:00', '2026-05-31 11:07:17', 'pending'),
('32', '22', '["chicken","burger","combo","cosmetic","makeup","beauty","skincare"]', '["chicken","burger","combo","combos","div","class","w-full","text-token-text-primary","dir","auto","data-testid","conversation-turn-9","data-scroll-anchor","false","text-base","py-","18px","px-3","md","px-4","m-auto","px-5","lg","px-1","xl","mx-auto","flex","flex-1","gap-4","gap-5","gap-6","max-w-3xl","max-w-","40rem","48rem","group","conversation-turn","relative","min-w-0","flex-col","agent-turn","gap-1","gap-3","flex-grow","max-w-full","min-h-","20px","text-message","items-end","gap-2","whitespace-pre-wrap","break-words","break-word","amp","mt-5","overflow-x-auto","data-message-author-role","assistant","data-message-id","938a40cc-ebab-40e1-b56e-de39f5d67c0e","empty","hidden","first","pt-","3px","markdown","prose","dark","prose-invert","nthe","offers","offer","tender","juicy","patty","nestled","soft","bun","complemented","crisp","lettuce","ripe","tomatoes","tomato","creamy","mayonnaise","classic","provides","provid","harmonious","harmoniou","blend","flavors","flavor","textures","textur","perfect","delightful","lighter","meal","option","conversation-turn-10","user","aaa2c9a9-df83-4ce1-98bc-0221bc3f9b3c","rtl","items-start","70","rounded-3xl","bg-","f4f4f4","py-2","bg-token-main-surface-secondary","absolute","bottom-0","right-full","top-0","-mr-3","pr-5","pt-1","hover_","block","conversation-turn-11","true","flex-shrink-0","pt-0","gizmo-bot-avatar","h-8","w-8","items-center","justify-center","overflow-hidden","rounded-full","p-1","rounded-sm","bg-token-main-surface-primary","cosmetic","makeup","beauty","lipstick","foundation","skincare","cream","lotion"]', 'beauty', NULL, '["general"]', '["personal care"]', '["cosmetic","makeup","beauty","skincare"]', '0.6400', 'local', '2026-07-12 20:34:00', '2026-05-31 11:07:17', 'pending'),
('33', '23', '["grilled","burger","combo"]', '["grilled","burger","combo","combos","offers","offer","smoky","flavorful","beef","patty","perfectly","nestled","soft","bun","topped","crisp","lettuce","fresh","tomatoes","tomato","hint","tangy","sauce","delivers","deliver","balanced","satisfying","bite","perfect","those","who","enjoy","classic","flavor"]', 'grilled burger', NULL, '[]', '[]', '[]', '0.5200', 'local', '2026-07-12 20:34:00', '2026-05-31 11:07:17', 'pending'),
('34', '24', '["chicken","chapali","burger","combo"]', '["chicken","chapali","burger","combo","combos","chapli","features","featur","spicy","flavorful","patty","inspired","traditional","kebabs","kebab","nestled","soft","bun","topped","fresh","lettuce","tomatoes","tomato","tangy","sauce","offers","offer","unique","delicious","deliciou","twist","providing","perfect","blend","spices","spic","textures","textur","unforgettable","dining","experience"]', 'chicken chapali', NULL, '[]', '[]', '[]', '0.5600', 'local', '2026-07-12 20:34:00', '2026-05-31 11:07:17', 'pending'),
('35', '25', '["classic","beef","burger","combo","cosmetic","makeup","beauty","skincare"]', '["classic","beef","burger","combo","combos","showcases","showcas","juicy","perfectly","seasoned","patty","soft","bun","topped","fresh","lettuce","tomatoes","tomato","hint","creamy","sauce","timeless","favorite","offers","offer","delightful","blend","flavors","flavor","textures","textur","making","ideal","choice","those","who","appreciate","traditional","satisfying","cosmetic","makeup","beauty","lipstick","foundation","skincare","cream","lotion"]', 'beauty', NULL, '["general"]', '["personal care"]', '["cosmetic","makeup","beauty","skincare"]', '0.6800', 'local', '2026-07-12 20:34:00', '2026-05-31 11:07:17', 'pending'),
('36', '26', '["double","decker","burger","combo"]', '["double","decker","burger","combo","combos","features","featur","two","juicy","flavorful","beef","patties","patty","stacked","soft","bun","topped","fresh","lettuce","tomatoes","tomato","special","tangy","sauce","hearty","offers","offer","generous","generou","satisfying","meal","perfect","those","big","appetite","love","bold","delicious","deliciou","flavors","flavor"]', 'double decker', NULL, '[]', '[]', '[]', '0.5600', 'local', '2026-07-12 20:34:00', '2026-05-31 11:07:17', 'pending'),
('37', '27', '["fries","fry","grocery","food","snack","drink","beverage"]', '["fries","fry","food","classic","golden","seasoned","touch","salt","enjoy","our","plain","perfectly","crispy","just","hint","these","timeless","favorites","favorit","ideal","choice","any","meal","delicious","deliciou","snack","their","own","grocery","drink","beverage","juice","tea","coffee"]', 'grocery', NULL, '["general"]', '["daily use"]', '["grocery","food","snack","drink","beverage"]', '0.6000', 'local', '2026-07-12 20:34:00', '2026-05-31 11:07:17', 'pending'),
('38', '28', '["chicken","roll","pratha"]', '["chicken","roll","pratha","rolls","spiced","wrapped","soft","paratha","flavorful","wrap","enjoy","our","featuring","seasoned","warm","combines","combin","hearty","creating","satisfying","delicious","deliciou"]', 'chicken roll', NULL, '[]', '[]', '[]', '0.5200', 'local', '2026-07-12 20:34:00', '2026-05-31 11:07:17', 'pending'),
('39', '29', '["chicken","shawarma"]', '["chicken","shawarma","rolls","roll","classic","marinated","wrapped","pita","bread","relish","flavor","our","featuring","soft","fresh","toppings","topping","savory","sauce","middle","eastern","dish","delivers","deliver","burst","authentic","flavors","every","bite"]', 'chicken shawarma', NULL, '[]', '[]', '[]', '0.4800', 'local', '2026-07-12 20:34:00', '2026-05-31 11:07:17', 'pending'),
('40', '30', '["zinger","wrap"]', '["zinger","wrap","rolls","roll","crispy","chicken","fillet","wrapped","fresh","veggies","veggy","zesty","sauce","savor","taste","our","which","features","featur","soft","tortilla","offers","offer","perfect","balance","crunchy","flavors","flavor","ideal","quick","tasty","meal"]', 'zinger wrap', NULL, '[]', '[]', '[]', '0.4800', 'local', '2026-07-12 20:34:00', '2026-05-31 11:07:17', 'pending'),
('41', '31', '["chicken","wings","wing","cosmetic","makeup","beauty","skincare","grocery","food","snack","drink","beverage"]', '["chicken","wings","wing","food","popular","appetizer","snack","featuring","crispy","seasoned","skin","tender","juicy","meat","typically","fried","baked","they","often","coated","variety","sauces","sauc","such","buffalo","barbecue","honey","garlic","commonly","served","celery","sticks","stick","ranch","blue","cheese","dressing","div","class","flex-1","overflow-hidden","h-full","react-scroll-to-bottom--css-ywwia-79elbk","react-scroll-to-bottom--css-ywwia-1n7m0yu","flex","flex-col","text-sm","article","w-full","text-token-text-primary","focus-visible","outline-2","outline-offset-","-4px","dir","auto","tabindex","data-testid","conversation-turn-3","data-scroll-anchor","true","text-base","py-","18px","px-3","md","px-4","m-auto","px-5","mx-auto","gap-4","gap-5","lg","gap-6","max-w-3xl","group","conversation-turn","relative","min-w-0","agent-turn","gap-1","gap-3","max-w-full","flex-grow","min-h-","20px","text-message","items-end","gap-2","break-words","break-word","amp","mt-5","overflow-x-auto","whitespace-pre-wrap","data-message-author-role","assistant","data-message-id","52cca033-dcb7-489a-b868-8de11f0b681f","empty","hidden","first","pt-","3px","markdown","prose","dark","prose-invert","nchicken","beloved","dish","known","their","flavorful","irresistible","originating","american","cuisine","particularly","sports","sport","bars","bar","casual","dining","establishments","establishment","usually","divided","into","two","sections","section","drumette","flat","these","parts","part","cooked","perfection","either","frying","baking","resulting","delightful","combination","crunchy","exterior","interior","can","tossed","array","cater","diverse","tastes","tast","classic","spicy","sauce","sweet","tangy","even","more","exotic","flavors","flavor","like","teriyaki","accompanied","side","creamy","versatile","perfect","gatherings","gathering","parties","party","meals","meal","celebrated","not","only","taste","but","also","ability","bring","people","together","shared","experience","enjoyment","cosmetic","makeup","beauty","lipstick","foundation","skincare","cream","lotion","grocery","drink","beverage","juice","tea","coffee"]', 'beauty', NULL, '["general"]', '["personal care","daily use"]', '["cosmetic","makeup","beauty","skincare","grocery","food","snack","drink","beverage"]', '0.7600', 'local', '2026-07-12 20:34:00', '2026-05-31 11:07:17', 'pending'),
('42', '32', '["fried","chicken","grocery","food","snack","drink","beverage"]', '["fried","chicken","classic","comfort","food","featuring","seasoned","pieces","piec","coated","crispy","golden-brown","batter","often","deep-fried","achieve","its","signature","crunch","loved","juicy","flavorful","meat","staple","southern","cuisine","popular","family","gatherings","gathering","iconic","dish","renowned","mouthwatering","combination","exterior","succulent","culinary","favorite","involves","involv","coating","typically","drumsticks","drumstick","thighs","thigh","breasts","breast","wings","wing","flour","mixture","which","then","perfect","crispiness","frying","process","locks","lock","moisture","enhances","enhanc","rich","savory","flavors","flavor","making","each","bite","delightful","contrast","between","crunchy","crust","tender","blend","spices","spic","such","paprika","garlic","powder","cayenne","pepper","can","range","mildly","spiced","delightfully","hot","deeply","rooted","but","has","gained","widespread","popularity","around","world","frequently","served","sides","sid","like","mashed","potatoes","potato","coleslaw","cornbread","beloved","comforting","taste","satisfying","texture","cherished","choice","both","everyday","meals","meal","festive","occasions","occasion","grocery","snack","drink","beverage","juice","tea","coffee"]', 'grocery', NULL, '["general"]', '["daily use"]', '["grocery","food","snack","drink","beverage"]', '0.6000', 'local', '2026-07-12 20:34:00', '2026-05-31 11:07:17', 'pending'),
('43', '33', '["grilled","sandwich","grocery","food","snack","drink","beverage"]', '["grilled","sandwich","food","grocery","snack","drink","beverage","juice","tea","coffee"]', 'grocery', NULL, '["general"]', '["daily use"]', '["grocery","food","snack","drink","beverage"]', '0.5500', 'local', '2026-07-12 20:34:00', '2026-05-31 11:07:17', 'pending'),
('44', '34', '["royal","kulfi"]', '["royal","kulfi"]', 'royal kulfi', NULL, '[]', '[]', '[]', '0.4300', 'local', '2026-07-12 20:34:00', '2026-05-31 11:07:17', 'pending'),
('45', '35', '["fried","chicken","chest","grocery","food","snack","drink","beverage"]', '["fried","chicken","chest","food","classic","comfort","featuring","seasoned","pieces","piec","coated","crispy","golden-brown","batter","often","deep-fried","achieve","its","signature","crunch","loved","juicy","flavorful","meat","staple","southern","cuisine","popular","family","gatherings","gathering","iconic","dish","renowned","mouthwatering","combination","exterior","succulent","culinary","favorite","involves","involv","coating","typically","drumsticks","drumstick","thighs","thigh","breasts","breast","wings","wing","flour","mixture","which","then","perfect","crispiness","frying","process","locks","lock","moisture","enhances","enhanc","rich","savory","flavors","flavor","making","each","bite","delightful","contrast","between","crunchy","crust","tender","blend","spices","spic","such","paprika","garlic","powder","cayenne","pepper","can","range","mildly","spiced","delightfully","hot","deeply","rooted","but","has","gained","widespread","popularity","around","world","frequently","served","sides","sid","like","mashed","potatoes","potato","coleslaw","cornbread","beloved","comforting","taste","satisfying","texture","cherished","choice","both","everyday","meals","meal","festive","occasions","occasion","grocery","snack","drink","beverage","juice","tea","coffee"]', 'grocery', NULL, '["general"]', '["daily use"]', '["grocery","food","snack","drink","beverage"]', '0.6400', 'local', '2026-07-12 20:34:00', '2026-05-31 11:07:17', 'pending'),
('46', '36', '["chicken","supreme"]', '["chicken","supreme","pizzas","pizza","savor","zest","our","fajita","topped","spicy","melted","cheese","fresh","capsicum","crunchy","onions","onion","green","olives","oliv","sprinkle","oregano","zesty","featuring"]', 'chicken supreme', NULL, '[]', '[]', '[]', '0.4800', 'local', '2026-07-12 20:34:00', '2026-05-31 11:07:17', 'pending'),
('47', '37', '["chicken","kebabish","pizza"]', '["chicken","kebabish","pizza","pizzas","savor","zest","our","fajita","topped","spicy","melted","cheese","fresh","capsicum","crunchy","onions","onion","green","olives","oliv","sprinkle","oregano","zesty","featuring"]', 'chicken kebabish', NULL, '[]', '[]', '[]', '0.5200', 'local', '2026-07-12 20:34:00', '2026-05-31 11:07:17', 'pending'),
('48', '38', '["fried","chicken","thigh","grocery","food","snack","drink","beverage"]', '["fried","chicken","thigh","food","classic","comfort","featuring","seasoned","pieces","piec","coated","crispy","golden-brown","batter","often","deep-fried","achieve","its","signature","crunch","loved","juicy","flavorful","meat","staple","southern","cuisine","popular","family","gatherings","gathering","iconic","dish","renowned","mouthwatering","combination","exterior","succulent","culinary","favorite","involves","involv","coating","typically","drumsticks","drumstick","thighs","breasts","breast","wings","wing","flour","mixture","which","then","perfect","crispiness","frying","process","locks","lock","moisture","enhances","enhanc","rich","savory","flavors","flavor","making","each","bite","delightful","contrast","between","crunchy","crust","tender","blend","spices","spic","such","paprika","garlic","powder","cayenne","pepper","can","range","mildly","spiced","delightfully","hot","deeply","rooted","but","has","gained","widespread","popularity","around","world","frequently","served","sides","sid","like","mashed","potatoes","potato","coleslaw","cornbread","beloved","comforting","taste","satisfying","texture","cherished","choice","both","everyday","meals","meal","festive","occasions","occasion","grocery","snack","drink","beverage","juice","tea","coffee"]', 'grocery', NULL, '["general"]', '["daily use"]', '["grocery","food","snack","drink","beverage"]', '0.6400', 'local', '2026-07-12 20:34:00', '2026-05-31 11:07:18', 'pending'),
('49', '39', '["double","decker","burger","combo","fries","fry"]', '["double","decker","burger","combo","fries","fry","combos","features","featur","two","juicy","flavorful","beef","patties","patty","stacked","soft","bun","topped","fresh","lettuce","tomatoes","tomato","special","tangy","sauce","hearty","offers","offer","generous","generou","satisfying","meal","perfect","those","big","appetite","love","bold","delicious","deliciou","flavors","flavor"]', 'double decker', NULL, '[]', '[]', '[]', '0.6000', 'local', '2026-07-12 20:34:00', '2026-05-31 11:07:18', 'pending'),
('50', '40', '["classic","beef","burger","combo","fries","fry","cosmetic","makeup","beauty","skincare"]', '["classic","beef","burger","combo","fries","fry","combos","showcases","showcas","juicy","perfectly","seasoned","patty","soft","bun","topped","fresh","lettuce","tomatoes","tomato","hint","creamy","sauce","timeless","favorite","offers","offer","delightful","blend","flavors","flavor","textures","textur","making","ideal","choice","those","who","appreciate","traditional","satisfying","cosmetic","makeup","beauty","lipstick","foundation","skincare","cream","lotion"]', 'beauty', NULL, '["general"]', '["personal care"]', '["cosmetic","makeup","beauty","skincare"]', '0.7200', 'local', '2026-07-12 20:34:00', '2026-05-31 11:07:18', 'pending'),
('51', '41', '["chicken","chapali","burger","combo","fries","fry"]', '["chicken","chapali","burger","combo","fries","fry","combos","chapli","features","featur","spicy","flavorful","patty","inspired","traditional","kebabs","kebab","nestled","soft","bun","topped","fresh","lettuce","tomatoes","tomato","tangy","sauce","offers","offer","unique","delicious","deliciou","twist","providing","perfect","blend","spices","spic","textures","textur","unforgettable","dining","experience"]', 'chicken chapali', NULL, '[]', '[]', '[]', '0.6000', 'local', '2026-07-12 20:34:00', '2026-05-31 11:07:18', 'pending'),
('52', '42', '["grilled","burger","combo","fries","fry"]', '["grilled","burger","combo","fries","fry","combos","offers","offer","smoky","flavorful","beef","patty","perfectly","nestled","soft","bun","topped","crisp","lettuce","fresh","tomatoes","tomato","hint","tangy","sauce","delivers","deliver","balanced","satisfying","bite","perfect","those","who","enjoy","classic","flavor"]', 'grilled burger', NULL, '[]', '[]', '[]', '0.6000', 'local', '2026-07-12 20:34:00', '2026-05-31 11:07:18', 'pending'),
('53', '43', '["chicken","burger","combo","fries","fry","cosmetic","makeup","beauty","skincare"]', '["chicken","burger","combo","fries","fry","combos","div","class","w-full","text-token-text-primary","dir","auto","data-testid","conversation-turn-9","data-scroll-anchor","false","text-base","py-","18px","px-3","md","px-4","m-auto","px-5","lg","px-1","xl","mx-auto","flex","flex-1","gap-4","gap-5","gap-6","max-w-3xl","max-w-","40rem","48rem","group","conversation-turn","relative","min-w-0","flex-col","agent-turn","gap-1","gap-3","flex-grow","max-w-full","min-h-","20px","text-message","items-end","gap-2","whitespace-pre-wrap","break-words","break-word","amp","mt-5","overflow-x-auto","data-message-author-role","assistant","data-message-id","938a40cc-ebab-40e1-b56e-de39f5d67c0e","empty","hidden","first","pt-","3px","markdown","prose","dark","prose-invert","nthe","offers","offer","tender","juicy","patty","nestled","soft","bun","complemented","crisp","lettuce","ripe","tomatoes","tomato","creamy","mayonnaise","classic","provides","provid","harmonious","harmoniou","blend","flavors","flavor","textures","textur","perfect","delightful","lighter","meal","option","conversation-turn-10","user","aaa2c9a9-df83-4ce1-98bc-0221bc3f9b3c","rtl","items-start","70","rounded-3xl","bg-","f4f4f4","py-2","bg-token-main-surface-secondary","absolute","bottom-0","right-full","top-0","-mr-3","pr-5","pt-1","hover_","block","conversation-turn-11","true","flex-shrink-0","pt-0","gizmo-bot-avatar","h-8","w-8","items-center","justify-center","overflow-hidden","rounded-full","p-1","rounded-sm","bg-token-main-surface-primary","cosmetic","makeup","beauty","lipstick","foundation","skincare","cream","lotion"]', 'beauty', NULL, '["general"]', '["personal care"]', '["cosmetic","makeup","beauty","skincare"]', '0.7200', 'local', '2026-07-12 20:34:00', '2026-05-31 11:07:18', 'pending'),
('54', '44', '["zinger","burger","combo","fries","fry"]', '["zinger","burger","combo","fries","fry","combos","features","featur","crispy","spicy","chicken","fillet","freshly","toasted","bun","topped","tangy","sauce","fresh","lettuce","ripe","tomatoes","tomato","each","bite","offers","offer","perfect","blend","crunch","spice","making","irresistible","choice","those","craving","flavorful","satisfying","meal"]', 'zinger burger', NULL, '[]', '[]', '[]', '0.6000', 'local', '2026-07-12 20:34:00', '2026-05-31 11:07:18', 'pending'),
('55', '45', '["black","chana","chaat"]', '["black","chana","chaat","fresh","salad","div","class","flex","max-w-full","flex-col","flex-grow","min-h-","20px","text-message","w-full","items-end","gap-2","whitespace-normal","break-words","break-word","amp","mt-5","dir","auto","data-message-author-role","assistant","data-message-id","5da1dcce-d284-4a77-a4b1-37c2b7a68959","gap-1","empty","hidden","first","pt-","3px","markdown","prose","dark","prose-invert","na","vibrant","refreshing","perfect","balance","tangy","savory","crunchy","elements","element","offers","offer","mix","textures","textur","flavors","flavor","balanced","vinaigrette","finished","touch","light","yet","satisfying","dish","any","occasion"]', 'black chana', 'colored', '[]', '[]', '[]', '0.5200', 'local', '2026-07-12 20:34:00', '2026-05-31 11:07:18', 'pending'),
('56', '46', '["mix","vegetable","salad"]', '["mix","vegetable","salad","fresh","div","class","flex","max-w-full","flex-col","flex-grow","min-h-","20px","text-message","w-full","items-end","gap-2","whitespace-normal","break-words","break-word","amp","mt-5","dir","auto","data-message-author-role","assistant","data-message-id","5da1dcce-d284-4a77-a4b1-37c2b7a68959","gap-1","empty","hidden","first","pt-","3px","markdown","prose","dark","prose-invert","na","vibrant","refreshing","perfect","balance","tangy","savory","crunchy","elements","element","offers","offer","textures","textur","flavors","flavor","balanced","vinaigrette","finished","touch","light","yet","satisfying","dish","any","occasion"]', 'mix vegetable', NULL, '[]', '[]', '[]', '0.5200', 'local', '2026-07-12 20:34:00', '2026-05-31 11:07:18', 'pending'),
('57', '47', '["red","bean","chicken"]', '["red","bean","chicken","fresh","salad","div","class","flex","max-w-full","flex-col","flex-grow","min-h-","20px","text-message","w-full","items-end","gap-2","whitespace-normal","break-words","break-word","amp","mt-5","dir","auto","data-message-author-role","assistant","data-message-id","5da1dcce-d284-4a77-a4b1-37c2b7a68959","gap-1","empty","hidden","first","pt-","3px","markdown","prose","dark","prose-invert","na","vibrant","refreshing","perfect","balance","tangy","savory","crunchy","elements","element","offers","offer","mix","textures","textur","flavors","flavor","balanced","vinaigrette","finished","touch","light","yet","satisfying","dish","any","occasion"]', 'red bean', 'colored', '[]', '[]', '[]', '0.5200', 'local', '2026-07-12 20:34:00', '2026-05-31 11:07:18', 'pending'),
('58', '48', '["italian","salad"]', '["italian","salad","fresh","div","class","flex","max-w-full","flex-col","flex-grow","min-h-","20px","text-message","w-full","items-end","gap-2","whitespace-normal","break-words","break-word","amp","mt-5","dir","auto","data-message-author-role","assistant","data-message-id","5da1dcce-d284-4a77-a4b1-37c2b7a68959","gap-1","empty","hidden","first","pt-","3px","markdown","prose","dark","prose-invert","na","vibrant","refreshing","perfect","balance","tangy","savory","crunchy","elements","element","offers","offer","mix","textures","textur","flavors","flavor","balanced","vinaigrette","finished","touch","light","yet","satisfying","dish","any","occasion"]', 'italian salad', NULL, '[]', '[]', '[]', '0.4800', 'local', '2026-07-12 20:34:00', '2026-05-31 11:07:18', 'pending'),
('59', '49', '["noddles","noddl","vegetables","vegetabl"]', '["noddles","noddl","vegetables","vegetabl","fresh","salad","div","class","flex","max-w-full","flex-col","flex-grow","min-h-","20px","text-message","w-full","items-end","gap-2","whitespace-normal","break-words","break-word","amp","mt-5","dir","auto","data-message-author-role","assistant","data-message-id","5da1dcce-d284-4a77-a4b1-37c2b7a68959","gap-1","empty","hidden","first","pt-","3px","markdown","prose","dark","prose-invert","na","vibrant","refreshing","perfect","balance","tangy","savory","crunchy","elements","element","offers","offer","mix","textures","textur","flavors","flavor","balanced","vinaigrette","finished","touch","light","yet","satisfying","dish","any","occasion"]', 'noddles noddl', NULL, '[]', '[]', '[]', '0.5600', 'local', '2026-07-12 20:34:00', '2026-05-31 11:07:18', 'pending'),
('60', '50', '["peanut","sweet","salad"]', '["peanut","sweet","salad","fresh","div","class","flex","max-w-full","flex-col","flex-grow","min-h-","20px","text-message","w-full","items-end","gap-2","whitespace-normal","break-words","break-word","amp","mt-5","dir","auto","data-message-author-role","assistant","data-message-id","5da1dcce-d284-4a77-a4b1-37c2b7a68959","gap-1","empty","hidden","first","pt-","3px","markdown","prose","dark","prose-invert","na","vibrant","refreshing","perfect","balance","tangy","savory","crunchy","elements","element","offers","offer","mix","textures","textur","flavors","flavor","balanced","vinaigrette","finished","touch","light","yet","satisfying","dish","any","occasion"]', 'peanut sweet', NULL, '[]', '[]', '[]', '0.5200', 'local', '2026-07-12 20:34:00', '2026-05-31 11:07:18', 'pending'),
('61', '51', '["cocktail","fruit","salad"]', '["cocktail","fruit","salad","fresh","div","class","flex","max-w-full","flex-col","flex-grow","min-h-","20px","text-message","w-full","items-end","gap-2","whitespace-normal","break-words","break-word","amp","mt-5","dir","auto","data-message-author-role","assistant","data-message-id","5da1dcce-d284-4a77-a4b1-37c2b7a68959","gap-1","empty","hidden","first","pt-","3px","markdown","prose","dark","prose-invert","na","vibrant","refreshing","perfect","balance","tangy","savory","crunchy","elements","element","offers","offer","mix","textures","textur","flavors","flavor","balanced","vinaigrette","finished","touch","light","yet","satisfying","dish","any","occasion"]', 'cocktail fruit', NULL, '[]', '[]', '[]', '0.5200', 'local', '2026-07-12 20:34:00', '2026-05-31 11:07:18', 'pending'),
('62', '52', '["pineapple","fruit","salad"]', '["pineapple","fruit","salad","fresh","div","class","flex","max-w-full","flex-col","flex-grow","min-h-","20px","text-message","w-full","items-end","gap-2","whitespace-normal","break-words","break-word","amp","mt-5","dir","auto","data-message-author-role","assistant","data-message-id","5da1dcce-d284-4a77-a4b1-37c2b7a68959","gap-1","empty","hidden","first","pt-","3px","markdown","prose","dark","prose-invert","na","vibrant","refreshing","perfect","balance","tangy","savory","crunchy","elements","element","offers","offer","mix","textures","textur","flavors","flavor","balanced","vinaigrette","finished","touch","light","yet","satisfying","dish","any","occasion"]', 'pineapple fruit', NULL, '[]', '[]', '[]', '0.5200', 'local', '2026-07-12 20:34:00', '2026-05-31 11:07:18', 'pending'),
('63', '53', '["mix","fruit","salad"]', '["mix","fruit","salad","fresh","div","class","flex","max-w-full","flex-col","flex-grow","min-h-","20px","text-message","w-full","items-end","gap-2","whitespace-normal","break-words","break-word","amp","mt-5","dir","auto","data-message-author-role","assistant","data-message-id","5da1dcce-d284-4a77-a4b1-37c2b7a68959","gap-1","empty","hidden","first","pt-","3px","markdown","prose","dark","prose-invert","na","vibrant","refreshing","perfect","balance","tangy","savory","crunchy","elements","element","offers","offer","textures","textur","flavors","flavor","balanced","vinaigrette","finished","touch","light","yet","satisfying","dish","any","occasion"]', 'mix fruit', NULL, '[]', '[]', '[]', '0.5200', 'local', '2026-07-12 20:34:00', '2026-05-31 11:07:18', 'pending'),
('64', '638', '["classic","piqué","polo"]', '["classic","piqué","polo","polos","premium","fabric","multiple","colors","color","sizes","siz","strong","our","modern","streetwear","collection","crafted","fabrics","designed","everyday","comfort","style","h3","care","ul","li","100","combed","cotton","blended","machine","wash","cold","tumble","dry","low","do","not","bleach","inside","out","guide","inches","inch","table","tr","th","chest","length","td","36-38","27","38-40","28","40-42","29","xl","42-44","30"]', 'classic piqué', NULL, '[]', '[]', '[]', '0.5200', 'local', '2026-06-02 12:06:20', '2026-06-11 12:09:55', 'approved'),
('65', '629', '["tooth","pickk","pick"]', '["tooth","pickk","pick","hoodies","hoody"]', 'tooth pickk', NULL, '[]', '[]', '[]', '0.4700', 'local', '2026-06-18 15:31:33', '2026-06-11 12:09:55', 'pending'),
('70', '628', '["air","freshner"]', '["air","freshner","mart"]', 'air freshner', NULL, '[]', '[]', '[]', '0.4300', 'local', '2026-07-22 21:28:39', NULL, 'pending'),
('77', '639', '["test"]', '["test"]', 'test', NULL, '[]', '[]', '[]', '0.3900', 'local', '2026-06-24 04:28:31', NULL, 'pending'),
('78', '640', '["test"]', '["test"]', 'test', NULL, '[]', '[]', '[]', '0.3900', 'local', '2026-06-24 04:29:03', NULL, 'pending'),
('79', '641', '["asd"]', '["asd"]', 'asd', NULL, '[]', '[]', '[]', '0.3900', 'local', '2026-06-24 04:34:05', NULL, 'pending'),
('231', '627', '["dove","conditioner"]', '["dove","conditioner","mart"]', 'dove conditioner', NULL, '[]', '[]', '[]', '0.4300', 'local', '2026-07-22 21:28:23', NULL, 'pending');

-- --------------------------------------------------------
-- Table structure for `ai_recommendations`

CREATE TABLE `ai_recommendations` (
  `id` bigint NOT NULL AUTO_INCREMENT,
  `product_id` int NOT NULL,
  `recommended_product_id` int NOT NULL,
  `recommendation_type` varchar(40) NOT NULL DEFAULT 'related',
  `score` decimal(10,4) NOT NULL DEFAULT '0.0000',
  `reason` varchar(500) DEFAULT NULL,
  `generated_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`),
  KEY `idx_ai_recommendations_product` (`product_id`),
  KEY `idx_ai_recommendations_recommended` (`recommended_product_id`),
  KEY `idx_ai_recommendations_type_score` (`recommendation_type`,`score`),
  KEY `idx_ai_recommendations_generated` (`generated_at`),
  CONSTRAINT `fk_ai_recommendations_product` FOREIGN KEY (`product_id`) REFERENCES `products` (`id`) ON DELETE CASCADE,
  CONSTRAINT `fk_ai_recommendations_recommended` FOREIGN KEY (`recommended_product_id`) REFERENCES `products` (`id`) ON DELETE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=705 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

INSERT INTO `ai_recommendations` (`id`, `product_id`, `recommended_product_id`, `recommendation_type`, `score`, `reason`) VALUES
('57', '503', '627', 'related', '80.0000', 'same_category,similar_type,similar_price'),
('58', '503', '626', 'related', '80.0000', 'same_category,similar_type,similar_price'),
('59', '503', '625', 'related', '80.0000', 'same_category,similar_type,similar_price'),
('60', '503', '624', 'related', '80.0000', 'same_category,similar_type,similar_price'),
('61', '503', '623', 'related', '80.0000', 'same_category,similar_type,similar_price'),
('62', '503', '622', 'related', '80.0000', 'same_category,similar_type,similar_price'),
('63', '503', '621', 'related', '80.0000', 'same_category,similar_type,similar_price'),
('64', '503', '620', 'related', '80.0000', 'same_category,similar_type,similar_price'),
('201', '627', '626', 'related', '80.0000', 'same_category,similar_type,similar_price'),
('202', '627', '625', 'related', '80.0000', 'same_category,similar_type,similar_price'),
('203', '627', '624', 'related', '80.0000', 'same_category,similar_type,similar_price'),
('204', '627', '623', 'related', '80.0000', 'same_category,similar_type,similar_price'),
('205', '627', '622', 'related', '80.0000', 'same_category,similar_type,similar_price'),
('206', '627', '621', 'related', '80.0000', 'same_category,similar_type,similar_price'),
('207', '627', '620', 'related', '80.0000', 'same_category,similar_type,similar_price'),
('208', '627', '618', 'related', '80.0000', 'same_category,similar_type,similar_price'),
('521', '638', '40', 'related', '30.0000', 'tag_match,similar_price'),
('522', '638', '25', 'related', '30.0000', 'tag_match,similar_price'),
('523', '638', '321', 'related', '20.0000', 'similar_price'),
('524', '638', '320', 'related', '20.0000', 'similar_price'),
('525', '638', '319', 'related', '20.0000', 'similar_price'),
('526', '638', '318', 'related', '20.0000', 'similar_price'),
('527', '638', '361', 'related', '15.0000', 'similar_price'),
('528', '638', '360', 'related', '15.0000', 'similar_price'),
('537', '625', '627', 'related', '80.0000', 'same_category,similar_type,similar_price'),
('538', '625', '626', 'related', '80.0000', 'same_category,similar_type,similar_price'),
('539', '625', '624', 'related', '80.0000', 'same_category,similar_type,similar_price'),
('540', '625', '623', 'related', '80.0000', 'same_category,similar_type,similar_price'),
('541', '625', '622', 'related', '80.0000', 'same_category,similar_type,similar_price'),
('542', '625', '621', 'related', '80.0000', 'same_category,similar_type,similar_price'),
('543', '625', '620', 'related', '80.0000', 'same_category,similar_type,similar_price'),
('544', '625', '618', 'related', '80.0000', 'same_category,similar_type,similar_price'),
('553', '630', '321', 'related', '30.0000', 'similar_type'),
('554', '630', '320', 'related', '30.0000', 'similar_type'),
('555', '630', '319', 'related', '30.0000', 'similar_type'),
('556', '630', '318', 'related', '30.0000', 'similar_type'),
('557', '630', '361', 'related', '25.0000', 'similar_type'),
('558', '630', '360', 'related', '25.0000', 'similar_type'),
('559', '630', '359', 'related', '25.0000', 'similar_type'),
('560', '630', '358', 'related', '25.0000', 'similar_type'),
('580', '617', '624', 'related', '80.0000', 'same_category,similar_type,similar_price'),
('581', '617', '627', 'related', '80.0000', 'same_category,similar_type,similar_price'),
('582', '617', '623', 'related', '80.0000', 'same_category,similar_type,similar_price'),
('583', '617', '626', 'related', '80.0000', 'same_category,similar_type,similar_price'),
('584', '617', '622', 'related', '80.0000', 'same_category,similar_type,similar_price'),
('585', '617', '625', 'related', '80.0000', 'same_category,similar_type,similar_price'),
('586', '617', '621', 'related', '80.0000', 'same_category,similar_type,similar_price'),
('587', '617', '624', 'related', '80.0000', 'same_category,similar_type,similar_price'),
('588', '617', '620', 'related', '80.0000', 'same_category,similar_type,similar_price'),
('589', '617', '623', 'related', '80.0000', 'same_category,similar_type,similar_price'),
('590', '617', '622', 'related', '80.0000', 'same_category,similar_type,similar_price'),
('591', '617', '621', 'related', '80.0000', 'same_category,similar_type,similar_price'),
('592', '617', '620', 'related', '80.0000', 'same_category,similar_type,similar_price'),
('612', '628', '624', 'related', '40.0000', 'same_category'),
('613', '628', '627', 'related', '40.0000', 'same_category'),
('614', '628', '623', 'related', '40.0000', 'same_category'),
('615', '628', '626', 'related', '40.0000', 'same_category'),
('616', '628', '622', 'related', '40.0000', 'same_category'),
('617', '628', '625', 'related', '40.0000', 'same_category'),
('618', '628', '621', 'related', '40.0000', 'same_category'),
('619', '628', '624', 'related', '40.0000', 'same_category'),
('620', '628', '620', 'related', '40.0000', 'same_category'),
('621', '628', '623', 'related', '40.0000', 'same_category'),
('622', '628', '622', 'related', '40.0000', 'same_category'),
('623', '628', '621', 'related', '40.0000', 'same_category'),
('624', '628', '620', 'related', '40.0000', 'same_category'),
('632', '626', '618', 'related', '80.0000', 'same_category,similar_type,similar_price'),
('633', '626', '627', 'related', '80.0000', 'same_category,similar_type,similar_price'),
('634', '626', '625', 'related', '80.0000', 'same_category,similar_type,similar_price'),
('635', '626', '624', 'related', '80.0000', 'same_category,similar_type,similar_price'),
('636', '626', '623', 'related', '80.0000', 'same_category,similar_type,similar_price'),
('637', '626', '622', 'related', '80.0000', 'same_category,similar_type,similar_price'),
('638', '626', '621', 'related', '80.0000', 'same_category,similar_type,similar_price'),
('639', '626', '620', 'related', '80.0000', 'same_category,similar_type,similar_price'),
('640', '626', '618', 'related', '80.0000', 'same_category,similar_type,similar_price'),
('649', '603', '627', 'related', '80.0000', 'same_category,similar_type,similar_price'),
('650', '603', '626', 'related', '80.0000', 'same_category,similar_type,similar_price'),
('651', '603', '625', 'related', '80.0000', 'same_category,similar_type,similar_price'),
('652', '603', '624', 'related', '80.0000', 'same_category,similar_type,similar_price'),
('653', '603', '623', 'related', '80.0000', 'same_category,similar_type,similar_price'),
('654', '603', '622', 'related', '80.0000', 'same_category,similar_type,similar_price'),
('655', '603', '621', 'related', '80.0000', 'same_category,similar_type,similar_price'),
('656', '603', '620', 'related', '80.0000', 'same_category,similar_type,similar_price'),
('658', '620', '626', 'related', '80.0000', 'same_category,similar_type,similar_price'),
('659', '620', '627', 'related', '80.0000', 'same_category,similar_type,similar_price'),
('660', '620', '625', 'related', '80.0000', 'same_category,similar_type,similar_price'),
('661', '620', '626', 'related', '80.0000', 'same_category,similar_type,similar_price'),
('662', '620', '624', 'related', '80.0000', 'same_category,similar_type,similar_price'),
('663', '620', '625', 'related', '80.0000', 'same_category,similar_type,similar_price'),
('664', '620', '623', 'related', '80.0000', 'same_category,similar_type,similar_price'),
('665', '620', '624', 'related', '80.0000', 'same_category,similar_type,similar_price'),
('666', '620', '622', 'related', '80.0000', 'same_category,similar_type,similar_price'),
('667', '620', '623', 'related', '80.0000', 'same_category,similar_type,similar_price'),
('668', '620', '621', 'related', '80.0000', 'same_category,similar_type,similar_price'),
('669', '620', '622', 'related', '80.0000', 'same_category,similar_type,similar_price'),
('670', '620', '618', 'related', '80.0000', 'same_category,similar_type,similar_price'),
('671', '620', '621', 'related', '80.0000', 'same_category,similar_type,similar_price'),
('672', '620', '618', 'related', '80.0000', 'same_category,similar_type,similar_price'),
('681', '339', '361', 'related', '80.0000', 'same_category,similar_type,similar_price'),
('682', '339', '360', 'related', '80.0000', 'same_category,similar_type,similar_price'),
('683', '339', '359', 'related', '80.0000', 'same_category,similar_type,similar_price'),
('684', '339', '358', 'related', '80.0000', 'same_category,similar_type,similar_price'),
('685', '339', '357', 'related', '80.0000', 'same_category,similar_type,similar_price'),
('686', '339', '356', 'related', '80.0000', 'same_category,similar_type,similar_price'),
('687', '339', '343', 'related', '80.0000', 'same_category,similar_type,similar_price'),
('688', '339', '342', 'related', '80.0000', 'same_category,similar_type,similar_price'),
('697', '629', '319', 'related', '45.0000', 'same_category'),
('698', '629', '641', 'related', '0.0000', ''),
('699', '629', '639', 'related', '0.0000', ''),
('700', '629', '627', 'related', '0.0000', ''),
('701', '629', '626', 'related', '0.0000', ''),
('702', '629', '625', 'related', '0.0000', ''),
('703', '629', '624', 'related', '0.0000', ''),
('704', '629', '623', 'related', '0.0000', '');

-- --------------------------------------------------------
-- Table structure for `ai_suggestions`

CREATE TABLE `ai_suggestions` (
  `id` bigint NOT NULL AUTO_INCREMENT,
  `entity_type` varchar(40) NOT NULL,
  `entity_id` int NOT NULL,
  `field_name` varchar(80) NOT NULL,
  `old_value` mediumtext,
  `suggested_value` mediumtext,
  `confidence_score` decimal(5,4) NOT NULL DEFAULT '0.0000',
  `reason` varchar(500) DEFAULT NULL,
  `status` enum('pending','approved','rejected','applied') NOT NULL DEFAULT 'pending',
  `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `applied_at` datetime DEFAULT NULL,
  `applied_by` int DEFAULT NULL,
  PRIMARY KEY (`id`),
  KEY `idx_ai_suggestions_entity` (`entity_type`,`entity_id`),
  KEY `idx_ai_suggestions_status` (`status`),
  KEY `idx_ai_suggestions_created` (`created_at`)
) ENGINE=InnoDB AUTO_INCREMENT=271 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

INSERT INTO `ai_suggestions` (`id`, `entity_type`, `entity_id`, `field_name`, `old_value`, `suggested_value`, `confidence_score`, `reason`, `status`, `applied_at`, `applied_by`) VALUES
('1', 'product', '4', 'ai_tags_json', NULL, '["fdafsafdsa"]', '0.3900', 'Local AI tag generation', 'applied', '2026-05-31 11:05:27', '1'),
('2', 'product', '5', 'ai_tags_json', NULL, '["asdfa"]', '0.3900', 'Local AI tag generation', 'applied', '2026-05-31 11:05:27', '1'),
('3', 'product', '6', 'ai_tags_json', NULL, '["chicken","tikka","pizza"]', '0.5200', 'Local AI tag generation', 'applied', '2026-05-31 11:05:27', '1'),
('4', 'product', '7', 'ai_tags_json', NULL, '["zinger","burger"]', '0.4800', 'Local AI tag generation', 'applied', '2026-05-31 11:05:27', '1'),
('5', 'product', '8', 'ai_tags_json', NULL, '["chicken","burger","cosmetic","makeup","beauty","skincare"]', '0.6000', 'Local AI tag generation', 'applied', '2026-05-31 11:05:27', '1'),
('6', 'product', '4', 'meta_title', NULL, 'fdafsafdsa', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:27', '1'),
('7', 'product', '4', 'meta_description', NULL, 'fdafsafdsa —', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:27', '1'),
('8', 'product', '4', 'focus_keyword', NULL, 'fdafsafdsa', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:26', '1'),
('9', 'product', '4', 'og_title', NULL, 'fdafsafdsa', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:26', '1'),
('10', 'product', '4', 'og_description', NULL, 'fdafsafdsa —', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:26', '1'),
('11', 'product', '5', 'meta_title', NULL, 'asdfa | dfsa', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:26', '1'),
('12', 'product', '5', 'meta_description', NULL, 'asdfa — Frozen Items', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:26', '1'),
('13', 'product', '5', 'focus_keyword', NULL, 'asdfa', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:26', '1'),
('14', 'product', '6', 'meta_title', NULL, 'Chicken Tikka Pizza', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:26', '1'),
('15', 'product', '6', 'meta_description', NULL, 'Chicken Tikka , Cheese , Onions , Black Olives ,Organo', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:26', '1'),
('16', 'product', '6', 'focus_keyword', NULL, 'chicken', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:26', '1'),
('17', 'product', '7', 'meta_title', NULL, 'Zinger Burger', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:26', '1'),
('18', 'product', '7', 'meta_description', NULL, 'The Zinger Burger features a crispy, spicy chicken fillet in a freshly toasted bun, topped with tangy sauce, fresh lettuce, and ripe tomatoes. Each bite of', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:26', '1'),
('19', 'product', '7', 'focus_keyword', NULL, 'zinger', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:26', '1'),
('20', 'product', '8', 'meta_title', NULL, 'Chicken Burger', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:26', '1'),
('21', 'product', '8', 'meta_description', NULL, '<div class="w-full text-token-text-primary" dir="auto" data-testid="conversation-turn-9" data-scroll-anchor="false"> \\n<div class="text-base py-[18px] px-3', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:26', '1'),
('22', 'product', '8', 'focus_keyword', NULL, 'chicken', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:26', '1'),
('23', 'product', '9', 'meta_title', NULL, 'Grilled Burger', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:26', '1'),
('24', 'product', '9', 'meta_description', NULL, 'The Grilled Burger offers a smoky, flavorful beef patty, perfectly grilled and nestled in a soft bun. Topped with crisp lettuce, fresh tomatoes, and a hint', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:26', '1'),
('25', 'product', '9', 'focus_keyword', NULL, 'grilled', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:26', '1'),
('26', 'product', '10', 'meta_title', NULL, 'Chicken Chapali Burger', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:26', '1'),
('27', 'product', '10', 'meta_description', NULL, 'The Chicken Chapli Burger features a spicy, flavorful chicken patty inspired by traditional chapli kebabs. Nestled in a soft bun, it''s topped with fresh le', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:26', '1'),
('28', 'product', '10', 'focus_keyword', NULL, 'chicken', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:26', '1'),
('29', 'product', '11', 'meta_title', NULL, 'Classic Beef Burger', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:26', '1'),
('30', 'product', '11', 'meta_description', NULL, 'The Classic Beef Burger showcases a juicy, perfectly seasoned beef patty in a soft bun, topped with fresh lettuce, tomatoes, and a hint of creamy sauce. Th', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:26', '1'),
('31', 'product', '11', 'focus_keyword', NULL, 'classic', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:26', '1'),
('32', 'product', '12', 'meta_title', NULL, 'Double Decker Burger', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:26', '1'),
('33', 'product', '12', 'meta_description', NULL, 'The Double Decker Burger features two juicy, flavorful beef patties stacked in a soft bun, topped with fresh lettuce, tomatoes, and a special tangy sauce. ', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:26', '1'),
('34', 'product', '12', 'focus_keyword', NULL, 'double', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:26', '1'),
('35', 'product', '13', 'meta_title', NULL, 'Chicken Fajita Pizza', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:26', '1'),
('36', 'product', '13', 'meta_description', NULL, 'Savor the zest of our Chicken Fajita Pizza, topped with spicy chicken fajita, melted cheese, fresh capsicum, crunchy onions, green olives, and a sprinkle o', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:26', '1'),
('37', 'product', '13', 'focus_keyword', NULL, 'chicken', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:26', '1'),
('38', 'product', '14', 'meta_title', NULL, 'Vegetable Pizza', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:26', '1'),
('39', 'product', '14', 'meta_description', NULL, 'A veggie delight with black olives, cheese, onion, tomato, capsicum, mushroom, jalapeno, and oregano.', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:26', '1'),
('40', 'product', '14', 'focus_keyword', NULL, 'vegetable', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:26', '1'),
('41', 'product', '15', 'meta_title', NULL, 'Chicken Green Chilli Pizza', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:26', '1'),
('42', 'product', '15', 'meta_description', NULL, 'A spicy treat with green chilli chicken, cheese, green olives, onion, capsicum, chicken sausages, jalapeno, black olive, mushroom, and oregano.', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:26', '1'),
('43', 'product', '15', 'focus_keyword', NULL, 'chicken', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:26', '1'),
('44', 'product', '16', 'meta_title', NULL, 'Cheese Pizza', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:26', '1'),
('45', 'product', '16', 'meta_description', NULL, 'A classic pizza with melted cheese and oregano.', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:26', '1'),
('46', 'product', '16', 'focus_keyword', NULL, 'cheese', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:26', '1'),
('47', 'product', '17', 'meta_title', NULL, 'Kids Meal', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:26', '1'),
('48', 'product', '17', 'meta_description', NULL, 'A perfect meal for kids featuring either a burger or chicken nuggets, served with crispy fries and a refreshing soft drink. Each meal comes with a surprise', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:26', '1'),
('49', 'product', '17', 'focus_keyword', NULL, 'kids', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:26', '1'),
('50', 'product', '18', 'meta_title', NULL, 'Family Fun', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:26', '1'),
('51', 'product', '18', 'meta_description', NULL, '&nbsp; \\n<ul> \\n <li>1 Zinger Burger</li> \\n <li>1 Chicken Burger</li> \\n <li>4 Pieces of Drumsticks</li> \\n <li>4 Fries</li> \\n <li>1.5 Ltr Coca-Cola</li>', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:26', '1'),
('52', 'product', '18', 'focus_keyword', NULL, 'family', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:26', '1'),
('53', 'product', '19', 'meta_title', NULL, 'Gool Gappay', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:26', '1'),
('54', 'product', '19', 'meta_description', NULL, 'Crispy and tangy Gool Gappay, served fresh. \\n \\n<strong>1</strong> Dozen Per Serving', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:26', '1'),
('55', 'product', '19', 'focus_keyword', NULL, 'gool', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:26', '1'),
('56', 'product', '20', 'meta_title', NULL, 'Dahi Ballay', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:26', '1'),
('57', 'product', '20', 'meta_description', NULL, 'Creamy Dahi Ballay, served in a plate', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:26', '1'),
('58', 'product', '20', 'focus_keyword', NULL, 'dahi', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:24', '1'),
('59', 'product', '21', 'meta_title', NULL, 'Zinger Burger Combo', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:24', '1'),
('60', 'product', '21', 'meta_description', NULL, 'The Zinger Burger features a crispy, spicy chicken fillet in a freshly toasted bun, topped with tangy sauce, fresh lettuce, and ripe tomatoes. Each bite of', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:24', '1'),
('61', 'product', '21', 'focus_keyword', NULL, 'zinger', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:24', '1'),
('62', 'product', '22', 'meta_title', NULL, 'Chicken Burger Combo', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:24', '1'),
('63', 'product', '22', 'meta_description', NULL, '<div class="w-full text-token-text-primary" dir="auto" data-testid="conversation-turn-9" data-scroll-anchor="false"> \\n<div class="text-base py-[18px] px-3', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:24', '1'),
('64', 'product', '22', 'focus_keyword', NULL, 'chicken', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:24', '1'),
('65', 'product', '23', 'meta_title', NULL, 'Grilled Burger Combo', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:24', '1'),
('66', 'product', '23', 'meta_description', NULL, 'The Grilled Burger offers a smoky, flavorful beef patty, perfectly grilled and nestled in a soft bun. Topped with crisp lettuce, fresh tomatoes, and a hint', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:24', '1'),
('67', 'product', '23', 'focus_keyword', NULL, 'grilled', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:24', '1'),
('68', 'product', '24', 'meta_title', NULL, 'Chicken Chapali Burger Combo', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:24', '1'),
('69', 'product', '24', 'meta_description', NULL, 'The Chicken Chapli Burger features a spicy, flavorful chicken patty inspired by traditional chapli kebabs. Nestled in a soft bun, it''s topped with fresh le', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:24', '1'),
('70', 'product', '24', 'focus_keyword', NULL, 'chicken', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:24', '1'),
('71', 'product', '25', 'meta_title', NULL, 'Classic Beef Burger Combo', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:24', '1'),
('72', 'product', '25', 'meta_description', NULL, 'The Classic Beef Burger showcases a juicy, perfectly seasoned beef patty in a soft bun, topped with fresh lettuce, tomatoes, and a hint of creamy sauce. Th', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:24', '1'),
('73', 'product', '25', 'focus_keyword', NULL, 'classic', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:24', '1'),
('74', 'product', '26', 'meta_title', NULL, 'Double Decker Burger Combo', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:24', '1'),
('75', 'product', '26', 'meta_description', NULL, 'The Double Decker Burger features two juicy, flavorful beef patties stacked in a soft bun, topped with fresh lettuce, tomatoes, and a special tangy sauce. ', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:24', '1'),
('76', 'product', '26', 'focus_keyword', NULL, 'double', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:24', '1'),
('77', 'product', '27', 'meta_title', NULL, 'Fries', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:24', '1'),
('78', 'product', '27', 'meta_description', NULL, 'Classic golden fries seasoned with a touch of salt.', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:24', '1'),
('79', 'product', '27', 'focus_keyword', NULL, 'fries', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:24', '1'),
('80', 'product', '28', 'meta_title', NULL, 'Chicken Roll Pratha', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:24', '1'),
('81', 'product', '28', 'meta_description', NULL, 'Spiced chicken wrapped in a soft paratha for a flavorful wrap.', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:24', '1'),
('82', 'product', '28', 'focus_keyword', NULL, 'chicken', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:24', '1'),
('83', 'product', '29', 'meta_title', NULL, 'Chicken Shawarma', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:24', '1'),
('84', 'product', '29', 'meta_description', NULL, 'Classic shawarma with marinated chicken wrapped in pita bread.', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:24', '1'),
('85', 'product', '29', 'focus_keyword', NULL, 'chicken', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:24', '1'),
('86', 'product', '30', 'meta_title', NULL, 'Zinger Wrap', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:24', '1'),
('87', 'product', '30', 'meta_description', NULL, 'Crispy chicken fillet wrapped with fresh veggies and zesty sauce.', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:24', '1'),
('88', 'product', '30', 'focus_keyword', NULL, 'zinger', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:24', '1'),
('89', 'product', '31', 'meta_title', NULL, 'Chicken Wings', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:24', '1'),
('90', 'product', '31', 'meta_description', NULL, 'Chicken wings are a popular appetizer or snack, featuring crispy, seasoned skin and tender, juicy meat. Typically fried or baked, they are often coated in ', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:24', '1'),
('91', 'product', '31', 'focus_keyword', NULL, 'chicken', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:24', '1'),
('92', 'product', '32', 'meta_title', NULL, 'Fried Chicken', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:24', '1'),
('93', 'product', '32', 'meta_description', NULL, 'Fried chicken is a classic comfort food featuring seasoned chicken pieces coated in a crispy, golden-brown batter. Often deep-fried to achieve its signatur', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:24', '1'),
('94', 'product', '32', 'focus_keyword', NULL, 'fried', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:24', '1'),
('95', 'product', '33', 'meta_title', NULL, 'Grilled Sandwich', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:24', '1'),
('96', 'product', '33', 'meta_description', NULL, 'Grilled Sandwich — Food', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:24', '1'),
('97', 'product', '33', 'focus_keyword', NULL, 'grilled', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:25', '1'),
('98', 'product', '34', 'meta_title', NULL, 'Royal Kulfi', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:25', '1'),
('99', 'product', '34', 'meta_description', NULL, 'Royal Kulfi — Kulfi', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:25', '1'),
('100', 'product', '34', 'focus_keyword', NULL, 'royal', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:25', '1'),
('101', 'product', '35', 'meta_title', NULL, 'Fried Chicken Chest', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:25', '1'),
('102', 'product', '35', 'meta_description', NULL, 'Fried chicken is a classic comfort food featuring seasoned chicken pieces coated in a crispy, golden-brown batter. Often deep-fried to achieve its signatur', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:25', '1'),
('103', 'product', '35', 'focus_keyword', NULL, 'fried', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:25', '1'),
('104', 'product', '36', 'meta_title', NULL, 'Chicken Supreme', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:25', '1'),
('105', 'product', '36', 'meta_description', NULL, 'Savor the zest of our Chicken Fajita Pizza, topped with spicy chicken fajita, melted cheese, fresh capsicum, crunchy onions, green olives, and a sprinkle o', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:25', '1'),
('106', 'product', '36', 'focus_keyword', NULL, 'chicken', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:25', '1'),
('107', 'product', '37', 'meta_title', NULL, 'Chicken Kebabish Pizza', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:25', '1'),
('108', 'product', '37', 'meta_description', NULL, 'Savor the zest of our Chicken Fajita Pizza, topped with spicy chicken fajita, melted cheese, fresh capsicum, crunchy onions, green olives, and a sprinkle o', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:19', '1'),
('109', 'product', '37', 'focus_keyword', NULL, 'chicken', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:19', '1'),
('110', 'product', '38', 'meta_title', NULL, 'Fried Chicken Thigh', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:19', '1'),
('111', 'product', '38', 'meta_description', NULL, 'Fried chicken is a classic comfort food featuring seasoned chicken pieces coated in a crispy, golden-brown batter. Often deep-fried to achieve its signatur', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:19', '1'),
('112', 'product', '38', 'focus_keyword', NULL, 'fried', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:19', '1'),
('113', 'product', '39', 'meta_title', NULL, 'Double Decker Burger Combo With fries', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:19', '1'),
('114', 'product', '39', 'meta_description', NULL, 'The Double Decker Burger features two juicy, flavorful beef patties stacked in a soft bun, topped with fresh lettuce, tomatoes, and a special tangy sauce. ', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:19', '1'),
('115', 'product', '39', 'focus_keyword', NULL, 'double', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:19', '1'),
('116', 'product', '40', 'meta_title', NULL, 'Classic Beef Burger Combo With Fries', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:19', '1'),
('117', 'product', '40', 'meta_description', NULL, 'The Classic Beef Burger showcases a juicy, perfectly seasoned beef patty in a soft bun, topped with fresh lettuce, tomatoes, and a hint of creamy sauce. Th', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:19', '1'),
('118', 'product', '40', 'focus_keyword', NULL, 'classic', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:19', '1'),
('119', 'product', '41', 'meta_title', NULL, 'Chicken Chapali Burger Combo With Fries', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:19', '1'),
('120', 'product', '41', 'meta_description', NULL, 'The Chicken Chapli Burger features a spicy, flavorful chicken patty inspired by traditional chapli kebabs. Nestled in a soft bun, it''s topped with fresh le', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:19', '1'),
('121', 'product', '41', 'focus_keyword', NULL, 'chicken', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:19', '1'),
('122', 'product', '42', 'meta_title', NULL, 'Grilled Burger Combo With Fries', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:19', '1'),
('123', 'product', '42', 'meta_description', NULL, 'The Grilled Burger offers a smoky, flavorful beef patty, perfectly grilled and nestled in a soft bun. Topped with crisp lettuce, fresh tomatoes, and a hint', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:19', '1'),
('124', 'product', '42', 'focus_keyword', NULL, 'grilled', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:19', '1'),
('125', 'product', '43', 'meta_title', NULL, 'Chicken Burger Combo With Fries', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:19', '1'),
('126', 'product', '43', 'meta_description', NULL, '<div class="w-full text-token-text-primary" dir="auto" data-testid="conversation-turn-9" data-scroll-anchor="false"> \\n<div class="text-base py-[18px] px-3', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:19', '1'),
('127', 'product', '43', 'focus_keyword', NULL, 'chicken', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:19', '1'),
('128', 'product', '44', 'meta_title', NULL, 'Zinger Burger Combo With Fries', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:19', '1'),
('129', 'product', '44', 'meta_description', NULL, 'The Zinger Burger features a crispy, spicy chicken fillet in a freshly toasted bun, topped with tangy sauce, fresh lettuce, and ripe tomatoes. Each bite of', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:19', '1'),
('130', 'product', '44', 'focus_keyword', NULL, 'zinger', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:19', '1'),
('131', 'product', '45', 'meta_title', NULL, 'Black Chana Chaat', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:19', '1'),
('132', 'product', '45', 'meta_description', NULL, '<div class="flex max-w-full flex-col flex-grow"> \\n<div class="min-h-[20px] text-message flex w-full flex-col items-end gap-2 whitespace-normal break-words', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:19', '1'),
('133', 'product', '45', 'focus_keyword', NULL, 'black', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:19', '1'),
('134', 'product', '46', 'meta_title', NULL, 'Mix Vegetable Salad', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:19', '1'),
('135', 'product', '46', 'meta_description', NULL, '<div class="flex max-w-full flex-col flex-grow"> \\n<div class="min-h-[20px] text-message flex w-full flex-col items-end gap-2 whitespace-normal break-words', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:19', '1'),
('136', 'product', '46', 'focus_keyword', NULL, 'mix', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:19', '1'),
('137', 'product', '47', 'meta_title', NULL, 'Red Bean with Chicken', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:19', '1'),
('138', 'product', '47', 'meta_description', NULL, '<div class="flex max-w-full flex-col flex-grow"> \\n<div class="min-h-[20px] text-message flex w-full flex-col items-end gap-2 whitespace-normal break-words', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:19', '1'),
('139', 'product', '47', 'focus_keyword', NULL, 'red', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:19', '1'),
('140', 'product', '48', 'meta_title', NULL, 'Italian Salad', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:19', '1'),
('141', 'product', '48', 'meta_description', NULL, '<div class="flex max-w-full flex-col flex-grow"> \\n<div class="min-h-[20px] text-message flex w-full flex-col items-end gap-2 whitespace-normal break-words', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:19', '1'),
('142', 'product', '48', 'focus_keyword', NULL, 'italian', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:19', '1'),
('143', 'product', '49', 'meta_title', NULL, 'Noddles with Vegetables', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:19', '1'),
('144', 'product', '49', 'meta_description', NULL, '<div class="flex max-w-full flex-col flex-grow"> \\n<div class="min-h-[20px] text-message flex w-full flex-col items-end gap-2 whitespace-normal break-words', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:19', '1'),
('145', 'product', '49', 'focus_keyword', NULL, 'noddles', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:19', '1'),
('146', 'product', '50', 'meta_title', NULL, 'Peanut Sweet Salad', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:19', '1'),
('147', 'product', '50', 'meta_description', NULL, '<div class="flex max-w-full flex-col flex-grow"> \\n<div class="min-h-[20px] text-message flex w-full flex-col items-end gap-2 whitespace-normal break-words', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:19', '1'),
('148', 'product', '50', 'focus_keyword', NULL, 'peanut', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:19', '1'),
('149', 'product', '51', 'meta_title', NULL, 'Cocktail Fruit Salad', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:19', '1'),
('150', 'product', '51', 'meta_description', NULL, '<div class="flex max-w-full flex-col flex-grow"> \\n<div class="min-h-[20px] text-message flex w-full flex-col items-end gap-2 whitespace-normal break-words', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:19', '1'),
('151', 'product', '51', 'focus_keyword', NULL, 'cocktail', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:19', '1'),
('152', 'product', '52', 'meta_title', NULL, 'Pineapple Fruit Salad', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:19', '1'),
('153', 'product', '52', 'meta_description', NULL, '<div class="flex max-w-full flex-col flex-grow"> \\n<div class="min-h-[20px] text-message flex w-full flex-col items-end gap-2 whitespace-normal break-words', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:19', '1'),
('154', 'product', '52', 'focus_keyword', NULL, 'pineapple', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:19', '1'),
('155', 'product', '53', 'meta_title', NULL, 'Mix Fruit Salad', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:19', '1'),
('156', 'product', '53', 'meta_description', NULL, '<div class="flex max-w-full flex-col flex-grow"> \\n<div class="min-h-[20px] text-message flex w-full flex-col items-end gap-2 whitespace-normal break-words', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:19', '1'),
('157', 'product', '53', 'focus_keyword', NULL, 'mix', '0.7500', 'Local AI SEO for product', 'applied', '2026-05-31 11:05:19', '1'),
('158', 'product', '4', 'ai_tags_json', NULL, '["fdafsafdsa"]', '0.3900', 'Local AI tag generation', 'applied', '2026-05-31 11:07:17', '1'),
('159', 'product', '5', 'ai_tags_json', NULL, '["asdfa"]', '0.3900', 'Local AI tag generation', 'applied', '2026-05-31 11:07:17', '1'),
('160', 'product', '6', 'ai_tags_json', NULL, '["chicken","tikka","pizza"]', '0.5200', 'Local AI tag generation', 'applied', '2026-05-31 11:07:17', '1'),
('161', 'product', '7', 'ai_tags_json', NULL, '["zinger","burger"]', '0.4800', 'Local AI tag generation', 'applied', '2026-05-31 11:07:17', '1'),
('162', 'product', '8', 'ai_tags_json', NULL, '["chicken","burger","cosmetic","makeup","beauty","skincare"]', '0.6000', 'Local AI tag generation', 'applied', '2026-05-31 11:07:17', '1'),
('163', 'product', '9', 'ai_tags_json', NULL, '["grilled","burger"]', '0.4800', 'Local AI tag generation', 'applied', '2026-05-31 11:07:17', '1'),
('164', 'product', '10', 'ai_tags_json', NULL, '["chicken","chapali","burger"]', '0.5200', 'Local AI tag generation', 'applied', '2026-05-31 11:07:17', '1'),
('165', 'product', '11', 'ai_tags_json', NULL, '["classic","beef","burger","cosmetic","makeup","beauty","skincare"]', '0.6400', 'Local AI tag generation', 'applied', '2026-05-31 11:07:17', '1'),
('166', 'product', '12', 'ai_tags_json', NULL, '["double","decker","burger"]', '0.5200', 'Local AI tag generation', 'applied', '2026-05-31 11:07:17', '1'),
('167', 'product', '13', 'ai_tags_json', NULL, '["chicken","fajita","pizza"]', '0.5200', 'Local AI tag generation', 'applied', '2026-05-31 11:07:17', '1'),
('168', 'product', '14', 'ai_tags_json', NULL, '["vegetable","pizza"]', '0.4800', 'Local AI tag generation', 'applied', '2026-05-31 11:07:17', '1'),
('169', 'product', '15', 'ai_tags_json', NULL, '["chicken","green","chilli","pizza"]', '0.5600', 'Local AI tag generation', 'applied', '2026-05-31 11:07:17', '1'),
('170', 'product', '16', 'ai_tags_json', NULL, '["cheese","pizza"]', '0.4800', 'Local AI tag generation', 'applied', '2026-05-31 11:07:17', '1'),
('171', 'product', '17', 'ai_tags_json', NULL, '["kids","kid","meal","baby","children","kids item","grocery","food","snack","drink","beverage","toy","game","kids toy","play item"]', '0.8800', 'Local AI tag generation', 'applied', '2026-05-31 11:07:17', '1'),
('172', 'product', '18', 'ai_tags_json', NULL, '["family","fun"]', '0.4800', 'Local AI tag generation', 'applied', '2026-05-31 11:07:17', '1'),
('173', 'product', '19', 'ai_tags_json', NULL, '["gool","gappay","grocery","food","snack","drink","beverage"]', '0.6000', 'Local AI tag generation', 'applied', '2026-05-31 11:07:17', '1'),
('174', 'product', '20', 'ai_tags_json', NULL, '["dahi","ballay","cosmetic","makeup","beauty","skincare"]', '0.6000', 'Local AI tag generation', 'applied', '2026-05-31 11:07:17', '1'),
('175', 'product', '21', 'ai_tags_json', NULL, '["zinger","burger","combo"]', '0.5200', 'Local AI tag generation', 'applied', '2026-05-31 11:07:17', '1'),
('176', 'product', '22', 'ai_tags_json', NULL, '["chicken","burger","combo","cosmetic","makeup","beauty","skincare"]', '0.6400', 'Local AI tag generation', 'applied', '2026-05-31 11:07:17', '1'),
('177', 'product', '23', 'ai_tags_json', NULL, '["grilled","burger","combo"]', '0.5200', 'Local AI tag generation', 'applied', '2026-05-31 11:07:17', '1'),
('178', 'product', '24', 'ai_tags_json', NULL, '["chicken","chapali","burger","combo"]', '0.5600', 'Local AI tag generation', 'applied', '2026-05-31 11:07:17', '1'),
('179', 'product', '25', 'ai_tags_json', NULL, '["classic","beef","burger","combo","cosmetic","makeup","beauty","skincare"]', '0.6800', 'Local AI tag generation', 'applied', '2026-05-31 11:07:17', '1'),
('180', 'product', '26', 'ai_tags_json', NULL, '["double","decker","burger","combo"]', '0.5600', 'Local AI tag generation', 'applied', '2026-05-31 11:07:17', '1'),
('181', 'product', '27', 'ai_tags_json', NULL, '["fries","fry","grocery","food","snack","drink","beverage"]', '0.6000', 'Local AI tag generation', 'applied', '2026-05-31 11:07:17', '1'),
('182', 'product', '28', 'ai_tags_json', NULL, '["chicken","roll","pratha"]', '0.5200', 'Local AI tag generation', 'applied', '2026-05-31 11:07:17', '1'),
('183', 'product', '29', 'ai_tags_json', NULL, '["chicken","shawarma"]', '0.4800', 'Local AI tag generation', 'applied', '2026-05-31 11:07:17', '1'),
('184', 'product', '30', 'ai_tags_json', NULL, '["zinger","wrap"]', '0.4800', 'Local AI tag generation', 'applied', '2026-05-31 11:07:17', '1'),
('185', 'product', '31', 'ai_tags_json', NULL, '["chicken","wings","wing","cosmetic","makeup","beauty","skincare","grocery","food","snack","drink","beverage"]', '0.7600', 'Local AI tag generation', 'applied', '2026-05-31 11:07:17', '1'),
('186', 'product', '32', 'ai_tags_json', NULL, '["fried","chicken","grocery","food","snack","drink","beverage"]', '0.6000', 'Local AI tag generation', 'applied', '2026-05-31 11:07:17', '1'),
('187', 'product', '33', 'ai_tags_json', NULL, '["grilled","sandwich","grocery","food","snack","drink","beverage"]', '0.5500', 'Local AI tag generation', 'applied', '2026-05-31 11:07:17', '1'),
('188', 'product', '34', 'ai_tags_json', NULL, '["royal","kulfi"]', '0.4300', 'Local AI tag generation', 'applied', '2026-05-31 11:07:17', '1'),
('189', 'product', '35', 'ai_tags_json', NULL, '["fried","chicken","chest","grocery","food","snack","drink","beverage"]', '0.6400', 'Local AI tag generation', 'applied', '2026-05-31 11:07:17', '1'),
('190', 'product', '36', 'ai_tags_json', NULL, '["chicken","supreme"]', '0.4800', 'Local AI tag generation', 'applied', '2026-05-31 11:07:17', '1'),
('191', 'product', '37', 'ai_tags_json', NULL, '["chicken","kebabish","pizza"]', '0.5200', 'Local AI tag generation', 'applied', '2026-05-31 11:07:17', '1'),
('192', 'product', '38', 'ai_tags_json', NULL, '["fried","chicken","thigh","grocery","food","snack","drink","beverage"]', '0.6400', 'Local AI tag generation', 'applied', '2026-05-31 11:07:18', '1'),
('193', 'product', '39', 'ai_tags_json', NULL, '["double","decker","burger","combo","fries","fry"]', '0.6000', 'Local AI tag generation', 'applied', '2026-05-31 11:07:18', '1'),
('194', 'product', '40', 'ai_tags_json', NULL, '["classic","beef","burger","combo","fries","fry","cosmetic","makeup","beauty","skincare"]', '0.7200', 'Local AI tag generation', 'applied', '2026-05-31 11:07:18', '1'),
('195', 'product', '41', 'ai_tags_json', NULL, '["chicken","chapali","burger","combo","fries","fry"]', '0.6000', 'Local AI tag generation', 'applied', '2026-05-31 11:07:18', '1'),
('196', 'product', '42', 'ai_tags_json', NULL, '["grilled","burger","combo","fries","fry"]', '0.6000', 'Local AI tag generation', 'applied', '2026-05-31 11:07:18', '1'),
('197', 'product', '43', 'ai_tags_json', NULL, '["chicken","burger","combo","fries","fry","cosmetic","makeup","beauty","skincare"]', '0.7200', 'Local AI tag generation', 'applied', '2026-05-31 11:07:18', '1'),
('198', 'product', '44', 'ai_tags_json', NULL, '["zinger","burger","combo","fries","fry"]', '0.6000', 'Local AI tag generation', 'applied', '2026-05-31 11:07:18', '1'),
('199', 'product', '45', 'ai_tags_json', NULL, '["black","chana","chaat"]', '0.5200', 'Local AI tag generation', 'applied', '2026-05-31 11:07:18', '1'),
('200', 'product', '46', 'ai_tags_json', NULL, '["mix","vegetable","salad"]', '0.5200', 'Local AI tag generation', 'applied', '2026-05-31 11:07:18', '1');
INSERT INTO `ai_suggestions` (`id`, `entity_type`, `entity_id`, `field_name`, `old_value`, `suggested_value`, `confidence_score`, `reason`, `status`, `applied_at`, `applied_by`) VALUES
('201', 'product', '47', 'ai_tags_json', NULL, '["red","bean","chicken"]', '0.5200', 'Local AI tag generation', 'applied', '2026-05-31 11:07:18', '1'),
('202', 'product', '48', 'ai_tags_json', NULL, '["italian","salad"]', '0.4800', 'Local AI tag generation', 'applied', '2026-05-31 11:07:18', '1'),
('203', 'product', '49', 'ai_tags_json', NULL, '["noddles","noddl","vegetables","vegetabl"]', '0.5600', 'Local AI tag generation', 'applied', '2026-05-31 11:07:18', '1'),
('204', 'product', '50', 'ai_tags_json', NULL, '["peanut","sweet","salad"]', '0.5200', 'Local AI tag generation', 'applied', '2026-05-31 11:07:18', '1'),
('205', 'product', '51', 'ai_tags_json', NULL, '["cocktail","fruit","salad"]', '0.5200', 'Local AI tag generation', 'applied', '2026-05-31 11:07:18', '1'),
('206', 'product', '52', 'ai_tags_json', NULL, '["pineapple","fruit","salad"]', '0.5200', 'Local AI tag generation', 'applied', '2026-05-31 11:07:18', '1'),
('207', 'product', '53', 'ai_tags_json', NULL, '["mix","fruit","salad"]', '0.5200', 'Local AI tag generation', 'applied', '2026-05-31 11:07:18', '1'),
('208', 'product', '638', 'ai_tags_json', NULL, '["classic","piqué","polo"]', '0.5200', 'Local AI tag generation', 'applied', '2026-06-11 12:09:55', '1'),
('209', 'product', '629', 'ai_tags_json', NULL, '["tooth","pickk","pick"]', '0.4700', 'Local AI tag generation', 'applied', '2026-06-11 12:09:55', '1'),
('210', 'product', '629', 'meta_title', NULL, 'Tooth Pickk', '0.7500', 'Local AI SEO for product', 'applied', '2026-06-11 12:09:56', '1'),
('211', 'product', '629', 'meta_description', NULL, 'Tooth Pickk — Hoodies', '0.7500', 'Local AI SEO for product', 'applied', '2026-06-11 12:09:56', '1'),
('212', 'product', '629', 'focus_keyword', NULL, 'tooth', '0.7500', 'Local AI SEO for product', 'applied', '2026-06-11 12:09:56', '1'),
('213', 'product', '629', 'og_title', NULL, 'Tooth Pickk', '0.7500', 'Local AI SEO for product', 'applied', '2026-06-11 12:09:56', '1'),
('214', 'product', '629', 'og_description', NULL, 'Tooth Pickk — Hoodies', '0.7500', 'Local AI SEO for product', 'applied', '2026-06-11 12:09:56', '1'),
('215', 'product', '629', 'ai_tags_json', NULL, '["tooth","pickk","pick"]', '0.4700', 'Local AI tag generation', 'pending', NULL, NULL),
('216', 'product', '628', 'ai_tags_json', NULL, '["air","freshner"]', '0.4300', 'Local AI tag generation', 'pending', NULL, NULL),
('217', 'product', '639', 'ai_tags_json', NULL, '["test"]', '0.3900', 'Local AI tag generation', 'pending', NULL, NULL),
('218', 'product', '640', 'ai_tags_json', NULL, '["test"]', '0.3900', 'Local AI tag generation', 'pending', NULL, NULL),
('219', 'product', '641', 'ai_tags_json', NULL, '["asd"]', '0.3900', 'Local AI tag generation', 'pending', NULL, NULL),
('220', 'product', '4', 'ai_tags_json', NULL, '["fdafsafdsa"]', '0.3900', 'Local AI tag generation', 'pending', NULL, NULL),
('221', 'product', '5', 'ai_tags_json', NULL, '["asdfa"]', '0.3900', 'Local AI tag generation', 'pending', NULL, NULL),
('222', 'product', '6', 'ai_tags_json', NULL, '["chicken","tikka","pizza"]', '0.5200', 'Local AI tag generation', 'pending', NULL, NULL),
('223', 'product', '7', 'ai_tags_json', NULL, '["zinger","burger"]', '0.4800', 'Local AI tag generation', 'pending', NULL, NULL),
('224', 'product', '8', 'ai_tags_json', NULL, '["chicken","burger","cosmetic","makeup","beauty","skincare"]', '0.6000', 'Local AI tag generation', 'pending', NULL, NULL),
('225', 'product', '9', 'ai_tags_json', NULL, '["grilled","burger"]', '0.4800', 'Local AI tag generation', 'pending', NULL, NULL),
('226', 'product', '10', 'ai_tags_json', NULL, '["chicken","chapali","burger"]', '0.5200', 'Local AI tag generation', 'pending', NULL, NULL),
('227', 'product', '11', 'ai_tags_json', NULL, '["classic","beef","burger","cosmetic","makeup","beauty","skincare"]', '0.6400', 'Local AI tag generation', 'pending', NULL, NULL),
('228', 'product', '12', 'ai_tags_json', NULL, '["double","decker","burger"]', '0.5200', 'Local AI tag generation', 'pending', NULL, NULL),
('229', 'product', '13', 'ai_tags_json', NULL, '["chicken","fajita","pizza"]', '0.5200', 'Local AI tag generation', 'pending', NULL, NULL),
('230', 'product', '14', 'ai_tags_json', NULL, '["vegetable","pizza"]', '0.4800', 'Local AI tag generation', 'pending', NULL, NULL),
('231', 'product', '15', 'ai_tags_json', NULL, '["chicken","green","chilli","pizza"]', '0.5600', 'Local AI tag generation', 'pending', NULL, NULL),
('232', 'product', '16', 'ai_tags_json', NULL, '["cheese","pizza"]', '0.4800', 'Local AI tag generation', 'pending', NULL, NULL),
('233', 'product', '17', 'ai_tags_json', NULL, '["kids","kid","meal","baby","children","kids item","grocery","food","snack","drink","beverage","toy","game","kids toy","play item"]', '0.8800', 'Local AI tag generation', 'pending', NULL, NULL),
('234', 'product', '18', 'ai_tags_json', NULL, '["family","fun"]', '0.4800', 'Local AI tag generation', 'pending', NULL, NULL),
('235', 'product', '19', 'ai_tags_json', NULL, '["gool","gappay","grocery","food","snack","drink","beverage"]', '0.6000', 'Local AI tag generation', 'pending', NULL, NULL),
('236', 'product', '20', 'ai_tags_json', NULL, '["dahi","ballay","cosmetic","makeup","beauty","skincare"]', '0.6000', 'Local AI tag generation', 'pending', NULL, NULL),
('237', 'product', '21', 'ai_tags_json', NULL, '["zinger","burger","combo"]', '0.5200', 'Local AI tag generation', 'pending', NULL, NULL),
('238', 'product', '22', 'ai_tags_json', NULL, '["chicken","burger","combo","cosmetic","makeup","beauty","skincare"]', '0.6400', 'Local AI tag generation', 'pending', NULL, NULL),
('239', 'product', '23', 'ai_tags_json', NULL, '["grilled","burger","combo"]', '0.5200', 'Local AI tag generation', 'pending', NULL, NULL),
('240', 'product', '24', 'ai_tags_json', NULL, '["chicken","chapali","burger","combo"]', '0.5600', 'Local AI tag generation', 'pending', NULL, NULL),
('241', 'product', '25', 'ai_tags_json', NULL, '["classic","beef","burger","combo","cosmetic","makeup","beauty","skincare"]', '0.6800', 'Local AI tag generation', 'pending', NULL, NULL),
('242', 'product', '26', 'ai_tags_json', NULL, '["double","decker","burger","combo"]', '0.5600', 'Local AI tag generation', 'pending', NULL, NULL),
('243', 'product', '27', 'ai_tags_json', NULL, '["fries","fry","grocery","food","snack","drink","beverage"]', '0.6000', 'Local AI tag generation', 'pending', NULL, NULL),
('244', 'product', '28', 'ai_tags_json', NULL, '["chicken","roll","pratha"]', '0.5200', 'Local AI tag generation', 'pending', NULL, NULL),
('245', 'product', '29', 'ai_tags_json', NULL, '["chicken","shawarma"]', '0.4800', 'Local AI tag generation', 'pending', NULL, NULL),
('246', 'product', '30', 'ai_tags_json', NULL, '["zinger","wrap"]', '0.4800', 'Local AI tag generation', 'pending', NULL, NULL),
('247', 'product', '31', 'ai_tags_json', NULL, '["chicken","wings","wing","cosmetic","makeup","beauty","skincare","grocery","food","snack","drink","beverage"]', '0.7600', 'Local AI tag generation', 'pending', NULL, NULL),
('248', 'product', '32', 'ai_tags_json', NULL, '["fried","chicken","grocery","food","snack","drink","beverage"]', '0.6000', 'Local AI tag generation', 'pending', NULL, NULL),
('249', 'product', '33', 'ai_tags_json', NULL, '["grilled","sandwich","grocery","food","snack","drink","beverage"]', '0.5500', 'Local AI tag generation', 'pending', NULL, NULL),
('250', 'product', '34', 'ai_tags_json', NULL, '["royal","kulfi"]', '0.4300', 'Local AI tag generation', 'pending', NULL, NULL),
('251', 'product', '35', 'ai_tags_json', NULL, '["fried","chicken","chest","grocery","food","snack","drink","beverage"]', '0.6400', 'Local AI tag generation', 'pending', NULL, NULL),
('252', 'product', '36', 'ai_tags_json', NULL, '["chicken","supreme"]', '0.4800', 'Local AI tag generation', 'pending', NULL, NULL),
('253', 'product', '37', 'ai_tags_json', NULL, '["chicken","kebabish","pizza"]', '0.5200', 'Local AI tag generation', 'pending', NULL, NULL),
('254', 'product', '38', 'ai_tags_json', NULL, '["fried","chicken","thigh","grocery","food","snack","drink","beverage"]', '0.6400', 'Local AI tag generation', 'pending', NULL, NULL),
('255', 'product', '39', 'ai_tags_json', NULL, '["double","decker","burger","combo","fries","fry"]', '0.6000', 'Local AI tag generation', 'pending', NULL, NULL),
('256', 'product', '40', 'ai_tags_json', NULL, '["classic","beef","burger","combo","fries","fry","cosmetic","makeup","beauty","skincare"]', '0.7200', 'Local AI tag generation', 'pending', NULL, NULL),
('257', 'product', '41', 'ai_tags_json', NULL, '["chicken","chapali","burger","combo","fries","fry"]', '0.6000', 'Local AI tag generation', 'pending', NULL, NULL),
('258', 'product', '42', 'ai_tags_json', NULL, '["grilled","burger","combo","fries","fry"]', '0.6000', 'Local AI tag generation', 'pending', NULL, NULL),
('259', 'product', '43', 'ai_tags_json', NULL, '["chicken","burger","combo","fries","fry","cosmetic","makeup","beauty","skincare"]', '0.7200', 'Local AI tag generation', 'pending', NULL, NULL),
('260', 'product', '44', 'ai_tags_json', NULL, '["zinger","burger","combo","fries","fry"]', '0.6000', 'Local AI tag generation', 'pending', NULL, NULL),
('261', 'product', '45', 'ai_tags_json', NULL, '["black","chana","chaat"]', '0.5200', 'Local AI tag generation', 'pending', NULL, NULL),
('262', 'product', '46', 'ai_tags_json', NULL, '["mix","vegetable","salad"]', '0.5200', 'Local AI tag generation', 'pending', NULL, NULL),
('263', 'product', '47', 'ai_tags_json', NULL, '["red","bean","chicken"]', '0.5200', 'Local AI tag generation', 'pending', NULL, NULL),
('264', 'product', '48', 'ai_tags_json', NULL, '["italian","salad"]', '0.4800', 'Local AI tag generation', 'pending', NULL, NULL),
('265', 'product', '49', 'ai_tags_json', NULL, '["noddles","noddl","vegetables","vegetabl"]', '0.5600', 'Local AI tag generation', 'pending', NULL, NULL),
('266', 'product', '50', 'ai_tags_json', NULL, '["peanut","sweet","salad"]', '0.5200', 'Local AI tag generation', 'pending', NULL, NULL),
('267', 'product', '51', 'ai_tags_json', NULL, '["cocktail","fruit","salad"]', '0.5200', 'Local AI tag generation', 'pending', NULL, NULL),
('268', 'product', '52', 'ai_tags_json', NULL, '["pineapple","fruit","salad"]', '0.5200', 'Local AI tag generation', 'pending', NULL, NULL),
('269', 'product', '53', 'ai_tags_json', NULL, '["mix","fruit","salad"]', '0.5200', 'Local AI tag generation', 'pending', NULL, NULL),
('270', 'product', '627', 'ai_tags_json', NULL, '["dove","conditioner"]', '0.4300', 'Local AI tag generation', 'pending', NULL, NULL);

-- --------------------------------------------------------
-- Table structure for `api_permission_map`

CREATE TABLE `api_permission_map` (
  `id` int NOT NULL AUTO_INCREMENT,
  `api_prefix` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL,
  `path_pattern` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `module_code` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL,
  `is_public` tinyint(1) NOT NULL DEFAULT '0',
  `is_active` tinyint(1) NOT NULL DEFAULT '1',
  `description` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `created_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
  `updated_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  `permission_code` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `match_type` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'prefix',
  PRIMARY KEY (`id`),
  UNIQUE KEY `uq_api_prefix` (`api_prefix`),
  UNIQUE KEY `uq_api_permission_map_path_pattern` (`path_pattern`),
  KEY `idx_module_code` (`module_code`),
  KEY `idx_is_active` (`is_active`),
  KEY `idx_is_public` (`is_public`)
) ENGINE=InnoDB AUTO_INCREMENT=1059 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

INSERT INTO `api_permission_map` (`id`, `api_prefix`, `path_pattern`, `module_code`, `is_public`, `is_active`, `description`, `permission_code`, `match_type`) VALUES
('1', '/api/departments', '/api/departments', 'departments', '0', '1', 'Department APIs.', NULL, 'prefix'),
('2', '/api/categories', '/api/categories', 'categories', '0', '1', 'Category APIs.', NULL, 'prefix'),
('3', '/api/suppliers', '/api/suppliers', 'suppliers', '0', '1', 'Supplier APIs.', NULL, 'prefix'),
('4', '/api/brands', '/api/brands', 'brands', '0', '1', 'Brand APIs.', NULL, 'prefix'),
('5', '/api/security', '/api/security', 'super_admin_settings', '0', '1', 'Security APIs.', NULL, 'prefix'),
('6', '/api/products', '/api/products', 'products', '0', '1', 'Product APIs.', NULL, 'prefix'),
('7', '/api/variants', '/api/variants', 'products', '0', '1', 'Product variant APIs', NULL, 'prefix'),
('8', '/api/product-masters', '/api/product-masters', 'products', '0', '1', 'Product master APIs', NULL, 'prefix'),
('9', '/api/media', '/api/media', 'media', '0', '1', 'Media APIs.', NULL, 'prefix'),
('10', '/api/attributes', '/api/attributes', 'attributes', '0', '1', 'Attributes APIs', NULL, 'prefix'),
('11', '/api/attribute-values', '/api/attribute-values', 'attributes', '0', '1', 'Attribute values APIs', NULL, 'prefix'),
('12', '/api/size-charts', '/api/size-charts', 'size_charts', '0', '1', 'Size chart APIs.', NULL, 'prefix'),
('13', '/api/banner-groups', '/api/banner-groups', 'banner_groups', '0', '1', 'Banner group APIs.', NULL, 'prefix'),
('14', '/api/banner-items', '/api/banner-items', 'banner_groups', '0', '1', 'Banner item APIs.', NULL, 'prefix'),
('15', '/api/homepage-sections', '/api/homepage-sections', 'homepage_builder', '0', '1', 'Homepage section APIs.', NULL, 'prefix'),
('16', '/api/homepage-builder', '/api/homepage-builder', 'homepage_builder', '0', '1', 'Homepage builder APIs.', NULL, 'prefix'),
('17', '/api/homepage-config', '/api/homepage-config', 'homepage_builder', '0', '1', 'Homepage config APIs.', NULL, 'prefix'),
('18', '/api/settings', '/api/settings', 'settings', '0', '1', 'Settings APIs.', NULL, 'prefix'),
('19', '/api/store-settings', '/api/store-settings', 'settings', '0', '1', 'Store settings APIs.', NULL, 'prefix'),
('20', '/api/tax-classes', '/api/tax-classes', 'tax_classes', '0', '1', 'Tax class APIs.', NULL, 'prefix'),
('21', '/api/tax-rules', '/api/tax-rules', 'tax_rules', '0', '1', 'Tax rule APIs.', NULL, 'prefix'),
('22', '/api/shipping-zones', '/api/shipping-zones', 'shipping_zones', '0', '1', 'Shipping zone APIs.', NULL, 'prefix'),
('23', '/api/shipping-methods', '/api/shipping-methods', 'shipping_zones', '0', '1', 'Shipping methods/charges APIs', NULL, 'prefix'),
('24', '/api/payment-methods', '/api/payment-methods', 'payment_methods', '0', '1', 'Payment method APIs.', NULL, 'prefix'),
('25', '/api/roles', '/api/roles', 'users', '0', '1', 'Role APIs.', NULL, 'prefix'),
('26', '/api/permissions', '/api/permissions', 'users', '0', '1', 'Permission catalog APIs.', 'users.view', 'prefix'),
('27', '/api/users-admin', '/api/users-admin', 'users', '0', '1', 'User admin APIs.', NULL, 'prefix'),
('28', '/api/audit-logs', '/api/audit-logs', 'audit_logs', '0', '1', 'Audit log APIs.', NULL, 'prefix'),
('29', '/api/audit-settings', '/api/audit-settings', 'audit_logs', '0', '1', 'Audit settings APIs.', 'audit_logs.manage', 'prefix'),
('30', '/api/api-permission-map', '/api/api-permission-map', 'api_permission_map', '0', '1', 'API permission map APIs.', 'api_permission_map.view', 'prefix'),
('31', '/api/system-debug-logs', '/api/system-debug-logs', 'super_admin_settings', '0', '1', 'System debug log APIs.', 'super_admin_settings.view', 'prefix'),
('32', '/api/store-settings-admin', '/api/store-settings-admin', 'store_settings', '0', '1', 'Admin store settings management', NULL, 'prefix'),
('33', '/api/store-floating-options', '/api/store-floating-options', 'settings', '0', '1', 'Store floating button option APIs.', NULL, 'prefix'),
('34', '/api/ref-countries', '/api/ref-countries', 'store_settings', '0', '1', 'Reference countries', NULL, 'prefix'),
('35', '/api/ref-cities', '/api/ref-cities', 'store_settings', '0', '1', 'Reference cities', NULL, 'prefix'),
('36', '/api/ref-currencies', '/api/ref-currencies', 'store_settings', '0', '1', 'Reference currencies', NULL, 'prefix'),
('37', '/api/ref-timezones', '/api/ref-timezones', 'store_settings', '0', '1', 'Reference timezones', NULL, 'prefix'),
('44', '/api/reference-data/import-countries', '/api/reference-data/import-countries', 'store_settings', '0', '1', 'Import countries, currencies and timezones', NULL, 'prefix'),
('45', '/api/reference-data/import-cities', '/api/reference-data/import-cities', 'store_settings', '0', '1', 'Import cities', NULL, 'prefix'),
('47', '/api/session-lite', '/api/session-lite', 'security', '1', '1', 'Optional public session check for admin bar', NULL, 'prefix'),
('48', '/api/variations', '/api/variations', 'products', '0', '1', 'Product variation APIs', NULL, 'prefix'),
('49', '/api/customers', '/api/customers', 'customers', '0', '1', 'Customer management APIs', NULL, 'prefix'),
('50', '/api/customer-addresses', '/api/customer-addresses', 'customers', '0', '1', 'Customer address APIs', NULL, 'prefix'),
('51', '/api/cart', '/api/cart', 'carts', '1', '1', 'Public/customer cart APIs', NULL, 'prefix'),
('52', '/api/checkout', '/api/checkout', 'checkout', '1', '1', 'Public/customer checkout APIs', NULL, 'prefix'),
('53', '/api/orders', '/api/orders', 'orders', '0', '1', 'Orders and order invoice APIs.', 'orders.view', 'prefix'),
('54', '/api/store-orders', '/api/store-orders', 'orders', '1', '1', 'Public customer order placement/status APIs', NULL, 'prefix'),
('55', '/api/payment-transactions', '/api/payment-transactions', 'payments', '0', '1', 'Admin payment transaction APIs', NULL, 'prefix'),
('56', '/api/shipments', '/api/shipments', 'shipments', '0', '1', 'Admin shipment APIs', NULL, 'prefix'),
('57', '/api/invoices', '/api/invoices', 'invoices', '0', '1', 'Admin invoice APIs', NULL, 'prefix'),
('58', '/api/stock-reservations', '/api/stock-reservations', 'stock_reservations', '0', '1', 'Stock reservation APIs', NULL, 'prefix'),
('59', '^/api/orders/[0-9]+/status$', '^/api/orders/[0-9]+/status$', 'orders', '0', '1', 'Order status update API', 'orders.update_status', 'regex'),
('60', '^/api/payment-transactions/[0-9]+/verify$', '^/api/payment-transactions/[0-9]+/verify$', 'payment_methods', '0', '1', 'Payment verification from order detail', 'payment_methods.edit', 'regex'),
('61', '^/api/shipments/[0-9]+/update$', '^/api/shipments/[0-9]+/update$', 'shipping_zones', '0', '1', 'Shipment update from order detail', 'shipping_zones.edit', 'regex'),
('65', '/api/wishlist-settings', '/api/wishlist-settings', 'wishlist', '0', '1', 'Wishlist settings APIs.', 'wishlist.manage', 'prefix'),
('66', '/api/wishlist-stats', '/api/wishlist-stats', 'wishlist', '0', '1', 'Wishlist stats APIs.', 'wishlist.view', 'prefix'),
('67', '/api/multi-branch-settings', '/api/multi-branch-settings', 'branches', '0', '1', 'Multi-branch global settings.', NULL, 'prefix'),
('68', '/api/branches', '/api/branches', 'branches', '0', '1', 'Branch APIs.', NULL, 'prefix'),
('70', '/api/pickup-portal', '/api/pickup-portal', 'pickup_portal', '0', '1', 'Pickup portal APIs.', NULL, 'prefix'),
('71', '/api/branch-user-options', '/api/branch-user-options', 'branch-user-options', '0', '1', '', NULL, 'prefix'),
('72', '/api/admin/customers', '/api/admin/customers', 'customers', '0', '1', 'Admin customer APIs.', NULL, 'prefix'),
('74', '/api/dashboard/owner-summary', '/api/dashboard/owner-summary', 'dashboard', '0', '1', 'Owner dashboard summary.', NULL, 'exact'),
('75', '/api/backups', '/api/backups', 'backups', '0', '1', 'Backup, restore, dry-run, download, and job polling APIs.', NULL, 'prefix'),
('76', '/api/dashboard', '/api/dashboard', 'dashboard', '0', '1', 'Dashboard APIs.', 'dashboard.view', 'prefix'),
('79', '/api/background-jobs', '/api/background-jobs', 'background_jobs', '0', '1', 'Background job APIs.', 'background_jobs.view', 'prefix'),
('80', '/api/products/import/woocommerce', '/api/products/import/woocommerce', 'products', '0', '1', 'WooCommerce product import APIs.', 'products.import', 'prefix'),
('81', '/api/theme-layouts', '/api/theme-layouts', 'theme_builder', '0', '1', 'Theme builder APIs.', NULL, 'prefix'),
('82', '/api/store/theme-layouts', '/api/store/theme-layouts', 'theme_builder', '1', '1', 'Public live theme layout API.', NULL, 'prefix'),
('83', '/api/courier-packaging-settings', '/api/courier-packaging-settings', 'couriers', '0', '1', 'Courier packaging settings APIs.', 'couriers.page', 'prefix'),
('84', '/api/couriers', '/api/couriers', 'couriers', '0', '1', 'Courier APIs.', NULL, 'prefix'),
('85', '/api/packaging-slips', '/api/packaging-slips', 'packaging_slips', '0', '1', 'Packaging slip preview and PDF APIs.', 'packaging_slips.print', 'prefix'),
('86', '/api/bulk-print', '/api/bulk-print', 'bulk_print', '0', '1', 'Bulk invoice and packaging slip APIs.', 'bulk_print.page', 'prefix'),
('87', '/api/pickup-portal/orders', '/api/pickup-portal/orders', 'pickup_portal', '0', '1', 'Pickup and delivery portal order APIs.', NULL, 'prefix'),
('88', '/api/pickup-portal/print', '/api/pickup-portal/print', 'pickup_portal', '0', '1', 'Pickup portal print APIs.', NULL, 'prefix'),
('89', '/api/membership/settings', '/api/membership/settings', 'membership', '0', '1', 'Membership settings APIs.', 'membership.settings', 'prefix'),
('90', '/api/membership/card-settings', '/api/membership/card-settings', 'membership', '0', '1', 'Membership card designer APIs.', 'membership.card', 'prefix'),
('91', '/api/membership/tiers', '/api/membership/tiers', 'membership', '0', '1', 'Membership tier APIs.', 'membership.settings', 'prefix'),
('92', '/api/members', '/api/members', 'membership', '0', '1', 'Member admin APIs.', 'membership.view', 'prefix'),
('93', '/api/coupons', '/api/coupons', 'coupons', '0', '1', 'Coupon APIs.', NULL, 'prefix'),
('94', '/api/customer/membership', '/api/customer/membership', 'customer', '1', '1', 'Customer membership APIs.', NULL, 'prefix'),
('95', '/api/edit-locks', '/api/edit-locks', 'edit_locks', '0', '1', 'Edit lock APIs including acquire, revoke, force unlock, and settings.', 'edit_locks.manage', 'prefix'),
('96', '/api/email-settings', '/api/email-settings', 'emails', '0', '1', 'Email settings APIs.', 'emails.manage', 'prefix'),
('97', '/api/order-events', '/api/order-events', 'orders', '0', '1', 'Order event configuration APIs.', 'orders.manage', 'prefix'),
('98', '/api/email-templates', '/api/email-templates', 'emails', '0', '1', 'Email template APIs.', 'emails.templates', 'prefix'),
('99', '/api/email-queue', '/api/email-queue', 'emails', '0', '1', 'Email queue APIs.', 'emails.queue', 'prefix'),
('100', '/api/email-logs', '/api/email-logs', 'emails', '0', '1', 'Email log APIs.', 'emails.logs', 'prefix'),
('105', '/api/orders/:id/invoice/email', '/api/orders/:id/invoice/email', 'emails', '0', '1', 'Send invoice email API.', 'edit', 'prefix'),
('107', '/api/backups/restore/dry-run', '/api/backups/restore/dry-run', 'backups', '0', '1', 'Backup restore dry-run API.', 'edit', 'prefix'),
('110', '/api/membership', '/api/membership', 'membership', '0', '1', 'Membership APIs.', NULL, 'prefix'),
('118', '/api/banners', '/api/banners', 'banner_groups', '0', '1', 'Banner APIs.', 'banners.manage', 'prefix'),
('124', '/api/email-test', '/api/email-test', 'emails', '0', '1', 'Email test APIs.', 'emails.test', 'prefix'),
('128', '/api/admin-appearance', '/api/admin-appearance', 'dashboard', '0', '1', 'Admin appearance and branding APIs.', 'dashboard.manage', 'prefix'),
('129', '/api/super-admin-settings/admin-appearance', '/api/super-admin-settings/admin-appearance', 'super_admin_settings', '0', '1', 'Admin source page and appearance settings.', 'super_admin_settings.manage', 'prefix'),
('132', '/api/backups/preflight', '/api/backups/preflight', 'backups', '0', '1', 'Backup preflight check.', 'backups.manage', 'prefix'),
('134', '/api/email-templates/sync-enterprise', '/api/email-templates/sync-enterprise', 'emails', '0', '1', 'Sync enterprise email templates.', 'emails.edit', 'prefix'),
('135', '/api/accounting', '/api/accounting', 'accounting', '0', '1', 'Accounting APIs.', NULL, 'prefix'),
('137', '/api/admin/ai-engine', '/api/admin/ai-engine', 'ai_engine', '0', '1', 'AI Engine APIs.', NULL, 'prefix'),
('138', '/api/products/search', '/api/products/search', 'storefront', '1', '1', 'Public AI/legacy product search.', NULL, 'prefix'),
('139', '/api/store/search', '/api/store/search', 'storefront', '1', '1', 'Public storefront search.', NULL, 'prefix'),
('140', '/api/store/track', '/api/store/track', 'storefront', '1', '1', 'Public analytics tracking.', NULL, 'prefix'),
('141', '/api/cart/recommendations', '/api/cart/recommendations', 'storefront', '1', '1', 'Public cart recommendations.', NULL, 'prefix'),
('142', '/api/collections', '/api/collections', 'collections', '0', '1', 'Collection and wholesale group APIs.', NULL, 'prefix'),
('143', '/api/admin-appearance/branding', '/api/admin-appearance/branding', 'dashboard', '1', '1', 'Public admin/login branding (no auth).', NULL, 'prefix'),
('144', '/api/mobile-app/settings', '/api/mobile-app/settings', 'mobile_app', '0', '1', 'Mobile app manager settings API. Requires the mobile app manager power.', 'mobile_app.manage', 'prefix'),
('147', '/api/mobile-app/public', '/api/mobile-app/public', 'mobile_app', '1', '1', 'Public mobile web-app settings API.', NULL, 'prefix'),
('148', '/api/mobile-app/portal', '/api/mobile-app/portal', 'mobile_app', '0', '1', 'Admin-session owner mobile web-app portal APIs.', 'mobile_app.view', 'prefix'),
('184', '/api/permission-safe', '/api/permission-safe', 'permission_safe', '0', '1', 'Permission Safe settings and protected permission APIs.', 'permission_safe.manage', 'prefix'),
('188', '/api/mobile-app/settings/regenerate-link', '/api/mobile-app/settings/regenerate-link', 'mobile_app', '0', '1', 'Regenerate mobile app private link.', 'mobile_app.create', 'prefix'),
('194', '/api/super-admin-settings/wholesale-mode', '/api/super-admin-settings/wholesale-mode', 'wholesale', '0', '1', 'Wholesale mode settings APIs.', 'wholesale.settings', 'prefix'),
('195', '/api/super-admin-settings/warehouse-mode', '/api/super-admin-settings/warehouse-mode', 'wholesale', '0', '1', 'Wholesale mode compatibility settings APIs.', 'wholesale.settings', 'prefix'),
('197', '/api/super-admin-settings/catalog-modules', '/api/super-admin-settings/catalog-modules', 'super_admin_settings', '0', '1', 'Catalog module feature toggles.', 'super_admin_settings.manage', 'prefix'),
('198', '/api/super-admin-settings/actions', '/api/super-admin-settings/actions', 'super_admin_settings', '0', '1', 'Super Admin maintenance APIs.', 'super_admin_settings.maintenance', 'prefix'),
('199', '/api/super-admin-settings/maintenance-enabled', '/api/super-admin-settings/maintenance-enabled', 'super_admin_settings', '0', '1', 'Maintenance feature toggle.', 'super_admin_settings.manage', 'prefix'),
('207', '/api/integrations', '/api/integrations', 'integrations', '0', '1', 'Developer and integration center admin APIs.', 'integrations.page', 'prefix'),
('208', '/api/v1/integration', NULL, 'api_integrations', '1', '1', 'External controlled integration API engine.', NULL, 'prefix'),
('216', '/api/super-admin-settings/integration-apis-enabled', NULL, 'super_admin_settings', '0', '1', 'Integration APIs feature toggle.', 'super_admin_settings.manage', 'prefix'),
('232', '/api/system/version', '/api/system/version', 'system_update', '0', '1', 'System version API.', 'SYSTEM_UPDATE_VIEW', 'exact'),
('233', '/api/system/update/history', NULL, 'system_update', '0', '1', 'System update history API.', 'SYSTEM_UPDATE_HISTORY', 'prefix'),
('234', '/api/system/update/upload', NULL, 'system_update', '0', '1', 'System update upload API.', 'SYSTEM_UPDATE_UPLOAD', 'prefix'),
('235', '/api/system/update/validate', NULL, 'system_update', '0', '1', 'System update validation API.', 'SYSTEM_UPDATE_VALIDATE', 'prefix'),
('236', '/api/system/update/install', NULL, 'system_update', '0', '1', 'System update install API.', 'SYSTEM_UPDATE_INSTALL', 'prefix'),
('237', '/api/system/update/rollback', NULL, 'system_update', '0', '1', 'System update rollback API.', 'SYSTEM_UPDATE_ROLLBACK', 'prefix'),
('238', '/api/system/update/report', NULL, 'system_update', '0', '1', 'System update report API.', 'SYSTEM_UPDATE_HISTORY', 'prefix'),
('239', '/api/system/backup/history', NULL, 'system_update', '0', '1', 'System update backup history API.', 'SYSTEM_BACKUP_DOWNLOAD', 'prefix'),
('240', '/api/system/health', NULL, 'system_update', '0', '1', 'System health check API.', 'SYSTEM_UPDATE_VIEW', 'prefix'),
('241', '/api/system/maintenance', NULL, 'system_update', '0', '1', 'System maintenance mode API.', 'SYSTEM_MAINTENANCE_MODE', 'prefix'),
('246', '/api/super-admin-settings/system-update-center-enabled', NULL, 'super_admin_settings', '0', '1', 'System Update Center feature toggle.', 'super_admin_settings.manage', 'prefix'),
('263', '/api/products/import/jobs', '/api/products/import/jobs', 'products', '0', '1', 'Product import job polling APIs.', 'products.import', 'prefix'),
('264', '/api/products/export/woocommerce', '/api/products/export/woocommerce', 'products', '0', '1', 'WooCommerce product export API.', 'products.export', 'prefix'),
('267', '/api/system', '/api/system', 'system_update', '0', '1', 'System update center APIs.', 'SYSTEM_UPDATE_VIEW', 'prefix'),
('277', '/api/backups/jobs/create', '/api/backups/jobs/create', 'backups', '0', '1', 'Backup create job API.', 'backups.create', 'prefix'),
('278', '/api/backups/create', '/api/backups/create', 'backups', '0', '1', 'Backup create API.', 'backups.create', 'prefix'),
('279', '/api/backups/jobs/restore', '/api/backups/jobs/restore', 'backups', '0', '1', 'Backup restore job API.', 'backups.restore', 'prefix'),
('280', '/api/backups/restore', '/api/backups/restore', 'backups', '0', '1', 'Backup restore and dry-run APIs.', 'backups.restore', 'prefix'),
('308', '/api/products/export/shopify', '/api/products/export/shopify', 'products', '0', '1', 'Shopify product export API.', 'products.export.shopify', 'prefix'),
('309', '/api/products/import/shopify', '/api/products/import/shopify', 'products', '0', '1', 'Shopify product import APIs.', 'products.import.shopify', 'prefix'),
('326', '/api/advertisement-banners', '/api/advertisement-banners', 'banner_groups', '0', '1', 'Advertisement banner APIs.', NULL, 'prefix'),
('336', '/api/cart-product-counts', '/api/cart-product-counts', 'products', '0', '1', 'Product count admin APIs.', 'products.view', 'prefix'),
('341', '/api/customer-credit', '/api/customer-credit', 'customers', '0', '1', 'Customer credit APIs.', 'customers.manage', 'prefix'),
('345', '/api/email', '/api/email', 'emails', '0', '1', 'Email manager APIs.', NULL, 'prefix'),
('346', '/api/events', '/api/events', 'events', '0', '1', 'Event APIs.', NULL, 'prefix'),
('347', '/api/homepage', '/api/homepage', 'homepage_builder', '0', '1', 'Homepage builder APIs.', NULL, 'prefix'),
('351', '/api/integration', '/api/integration', 'integration_apis', '0', '1', 'Integration manager APIs.', NULL, 'prefix'),
('354', '/api/mobile-app', '/api/mobile-app', 'mobile_app', '0', '1', 'Mobile app APIs.', NULL, 'prefix'),
('358', '/api/permission-safe/verify-page', '/api/permission-safe/verify-page', 'permission_safe', '1', '1', 'Permission Safe page verification API.', NULL, 'exact'),
('361', '/api/platform-engine', '/api/platform-engine', 'super_admin_settings', '0', '1', 'Platform engine APIs.', 'super_admin_settings.manage', 'prefix'),
('362', '/api/platform-engines', '/api/platform-engines', 'super_admin_settings', '0', '1', 'Platform engine APIs.', 'super_admin_settings.manage', 'prefix'),
('369', '/api/ref-', '/api/ref-', 'reference_data', '0', '1', 'Reference data APIs.', 'reference_data.view', 'prefix'),
('370', '/api/reference-data', '/api/reference-data', 'reference_data', '0', '1', 'Reference data import APIs.', 'reference_data.manage', 'prefix'),
('379', '/api/super-admin-settings', '/api/super-admin-settings', 'super_admin_settings', '0', '1', 'Super admin setting APIs.', NULL, 'prefix'),
('408', '/api/dashboard/area-heatmap', '/api/dashboard/area-heatmap', 'heatmap', '0', '1', 'Area heat map analytics API.', 'heatmap.view', 'prefix'),
('425', '/api/important-pages', '/api/important-pages', 'important_pages', '0', '1', 'Important Pages admin APIs.', 'important_pages.page', 'prefix'),
('426', '/api/store/important-pages', '/api/store/important-pages', 'storefront', '1', '1', 'Public important pages APIs.', NULL, 'prefix'),
('427', '/api/super-admin-settings/important-pages-enabled', '/api/super-admin-settings/important-pages-enabled', 'super_admin_settings', '0', '1', 'Important Pages master toggle.', 'super_admin_settings.manage', 'prefix'),
('428', '/api/super-admin-settings/accounting-system-enabled', '/api/super-admin-settings/accounting-system-enabled', 'super_admin_settings', '0', '1', 'Accounting system master toggle.', 'super_admin_settings.manage', 'prefix'),
('461', '/api/products/bulk-assign', '/api/products/bulk-assign', 'products', '0', '1', 'Bulk product assignment APIs.', 'products.bulk_assign', 'prefix'),
('489', '/api/returns', NULL, 'returns', '0', '1', 'Order returns list and create APIs.', 'returns.view', 'prefix'),
('490', '/api/returns/settings/enabled', NULL, 'returns', '0', '1', 'Order returns feature toggle read.', 'returns.view', 'prefix'),
('491', '/api/returns/orders', NULL, 'returns', '0', '1', 'Return eligible orders and item lookup.', 'returns.view', 'prefix'),
('492', '/api/returns/:id', NULL, 'returns', '0', '1', 'Return detail and workflow actions.', 'returns.view', 'prefix'),
('493', '/api/super-admin-settings/order-returns-enabled', NULL, 'super_admin_settings', '0', '1', 'Order returns master switch.', 'super_admin_settings.manage', 'prefix'),
('756', '/api/analytics/report', NULL, 'analytics', '0', '1', 'Analytics report builder API.', 'analytics.report_builder', 'prefix'),
('757', '/api/analytics/options', NULL, 'analytics', '0', '1', 'Analytics options API.', 'analytics.report_builder', 'prefix'),
('758', '/api/analytics/export', NULL, 'analytics', '0', '1', 'Analytics export download API.', 'analytics.export', 'prefix'),
('763', '/api/excel-export/options', NULL, 'excel_export', '0', '1', 'Excel Export options API.', 'excel_export.view', 'prefix'),
('768', '/api/excel-export/download', NULL, 'excel_export', '0', '1', 'Excel/PDF report download API.', 'excel_export.download', 'prefix'),
('781', '/api/newsletter/segments', NULL, 'newsletter', '0', '1', 'Newsletter segments API.', 'newsletter.view', 'prefix'),
('782', '/api/newsletter/preview', NULL, 'newsletter', '0', '1', 'Newsletter preview API.', 'newsletter.view', 'prefix'),
('787', '/api/analytics', NULL, 'analytics', '0', '1', 'Analytics report APIs.', 'analytics.view', 'prefix'),
('791', '/api/customer-info-extractor/options', NULL, 'customer_info_extractor', '0', '1', 'Customer extractor options API.', 'customer_info_extractor.view', 'prefix'),
('792', '/api/customer-info-extractor/report', NULL, 'customer_info_extractor', '0', '1', 'Customer extractor preview API.', 'customer_info_extractor.view', 'prefix'),
('793', '/api/customer-info-extractor/export', NULL, 'customer_info_extractor', '0', '1', 'Customer extractor CSV download API.', 'customer_info_extractor.export', 'prefix'),
('796', '/api/newsletter/broadcast', NULL, 'newsletter', '0', '1', 'Newsletter broadcast API.', 'newsletter.broadcast', 'prefix'),
('809', '/api/admin-assistant/chat', NULL, 'admin-assistant_chat', '0', '1', '', NULL, 'prefix'),
('859', '/api/super-admin-settings/demo-sites', '/api/super-admin-settings/demo-sites', 'super_admin_settings', '0', '1', 'Password protected demo site profile switcher APIs.', 'super_admin_settings.manage', 'prefix'),
('868', '/api/admin/bootstrap', '/api/admin/bootstrap', 'dashboard', '0', '1', 'Authenticated admin bootstrap settings and active engine endpoint.', 'dashboard.view', 'exact'),
('885', '/api/site-analytics/summary', '/api/site-analytics/summary', 'analytics', '0', '1', 'Site analytics tracking summary API.', 'analytics.site_tracking', 'prefix'),
('916', '/api/product-tags', NULL, 'product_tags', '0', '1', 'Product tag list APIs.', 'product_tags.page', 'prefix'),
('918', '/api/header-notice', NULL, 'header_notice', '0', '1', 'Header notice APIs.', 'header_notice.view', 'prefix'),
('987', '/api/grouped-products', NULL, 'grouped_products', '0', '1', 'Grouped products admin APIs.', 'grouped_products.page', 'prefix'),
('988', '/api/store/grouped-products', NULL, 'grouped_products', '1', '1', 'Public grouped products storefront APIs.', NULL, 'prefix'),
('989', '/api/cart/add-group', NULL, 'cart', '1', '1', 'Public add grouped product to cart API.', NULL, 'prefix'),
('1018', '/api/cart/groups', NULL, 'cart', '1', '1', 'Public grouped cart quantity/remove APIs.', NULL, 'prefix'),
('1047', '/api/customer/register', NULL, 'customer', '1', '1', 'Public customer account creation API.', NULL, 'prefix'),
('1052', '/api/product-tags/public', NULL, 'product_tags', '1', '1', 'Public visible product tags storefront API.', NULL, 'prefix');

-- --------------------------------------------------------
-- Table structure for `attribute_values`

CREATE TABLE `attribute_values` (
  `id` int NOT NULL AUTO_INCREMENT,
  `attribute_id` int NOT NULL,
  `value_code` varchar(50) DEFAULT NULL,
  `value_name` varchar(100) NOT NULL,
  `value_slug` varchar(150) NOT NULL,
  `color_code` varchar(20) DEFAULT NULL,
  `sort_order` int NOT NULL DEFAULT '0',
  `is_live` tinyint(1) NOT NULL DEFAULT '1',
  `status` varchar(20) NOT NULL DEFAULT 'active',
  `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `updated_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`),
  UNIQUE KEY `uq_attribute_value_slug` (`attribute_id`,`value_slug`),
  UNIQUE KEY `uq_attribute_value_name` (`attribute_id`,`value_name`),
  UNIQUE KEY `uq_attribute_value_code` (`attribute_id`,`value_code`),
  KEY `idx_attribute_values_attribute` (`attribute_id`),
  CONSTRAINT `fk_attribute_values_attribute` FOREIGN KEY (`attribute_id`) REFERENCES `attributes` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=49 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

INSERT INTO `attribute_values` (`id`, `attribute_id`, `value_code`, `value_name`, `value_slug`, `color_code`, `sort_order`, `is_live`, `status`) VALUES
('1', '1', 'SIZE-S', 'Small', 'small', NULL, '1', '1', 'active'),
('2', '1', 'SIZE-M', 'Medium', 'medium', NULL, '2', '1', 'active'),
('3', '1', 'SIZE-L', 'Large', 'large', NULL, '3', '1', 'active'),
('4', '2', 'CLR-RED', 'Red', 'red', '#FF0000', '1', '1', 'active'),
('5', '2', 'CLR-BLUE', 'Blue', 'blue', '#0000FF', '2', '1', 'active'),
('6', '2', 'CLR-BLACK', 'Black', 'black', '#000000', '3', '1', 'active'),
('7', '3', 'COTTON', 'cotton', 'cotton', NULL, '0', '1', 'active'),
('9', '4', 'BIG', 'BIG', 'big', NULL, '0', '1', 'active'),
('10', '4', 'NORMAL', 'Normal', 'normal', NULL, '0', '1', 'active'),
('11', '4', 'SMALL', 'Small', 'small', NULL, '0', '1', 'active'),
('12', '10', 'ONLY_BURGER', 'Only Burger', 'only-burger', NULL, '0', '1', 'active'),
('13', '10', 'BURGER_WITH_FRIES_AND_DRINK', 'Burger With Fries and Drink', 'burger-with-fries-and-drink', NULL, '0', '1', 'active'),
('14', '10', 'BURGER_WITH_CHICKEN_PIECE_AND_DRINK', 'Burger With Chicken Piece and Drink', 'burger-with-chicken-piece-and-drink', NULL, '0', '1', 'active'),
('15', '10', 'BURGER_MEAL', 'Burger Meal', 'burger-meal', NULL, '0', '1', 'active'),
('16', '10', 'NUGGETS_MEAL', 'Nuggets Meal', 'nuggets-meal', NULL, '0', '1', 'active'),
('17', '11', 'PLAIN_FRIES', 'Plain Fries', 'plain-fries', NULL, '0', '1', 'active'),
('18', '11', 'MASALA_FRIES', 'Masala Fries', 'masala-fries', NULL, '0', '1', 'active'),
('19', '11', 'GARLIC_MAYO', 'Garlic Mayo', 'garlic-mayo', NULL, '0', '1', 'active'),
('20', '11', 'BBQ_FRIES', 'BBQ Fries', 'bbq-fries', NULL, '0', '1', 'active'),
('21', '12', '5_PIECES', '5 Pieces', '5-pieces', NULL, '0', '1', 'active'),
('22', '12', '10_PIECES', '10 Pieces', '10-pieces', NULL, '0', '1', 'active'),
('23', '11', 'CRISPY', 'Crispy', 'crispy', NULL, '0', '1', 'active'),
('24', '11', 'MASALA', 'Masala', 'masala', NULL, '0', '1', 'active'),
('25', '11', 'BBQ', 'BBQ', 'bbq', NULL, '0', '1', 'active'),
('26', '13', 'CHEST', 'Chest', 'chest', NULL, '0', '1', 'active'),
('27', '13', 'LEG', 'Leg', 'leg', NULL, '0', '1', 'active'),
('28', '13', 'THIGH', 'Thigh', 'thigh', NULL, '0', '1', 'active'),
('29', '1', 'S', 'S', 's', NULL, '0', '1', 'active'),
('30', '1', 'M', 'M', 'm', NULL, '0', '1', 'active'),
('31', '1', 'L', 'L', 'l', NULL, '0', '1', 'active'),
('32', '1', 'XL', 'XL', 'xl', NULL, '0', '1', 'active'),
('33', '2', 'WHITE', 'White', 'white', NULL, '0', '1', 'active'),
('34', '2', 'NAVY', 'Navy', 'navy', NULL, '0', '1', 'active'),
('35', '2', 'OLIVE', 'Olive', 'olive', NULL, '0', '1', 'active'),
('36', '1', '30', '30', '30', NULL, '0', '1', 'active'),
('37', '1', '32', '32', '32', NULL, '0', '1', 'active'),
('38', '1', '34', '34', '34', NULL, '0', '1', 'active'),
('39', '1', '36', '36', '36', NULL, '0', '1', 'active'),
('40', '2', 'DARK_BLUE', 'Dark Blue', 'dark-blue', NULL, '0', '1', 'active'),
('41', '2', 'LIGHT_BLUE', 'Light Blue', 'light-blue', NULL, '0', '1', 'active'),
('42', '2', 'STONE', 'Stone', 'stone', NULL, '0', '1', 'active'),
('43', '2', 'BURGUNDY', 'Burgundy', 'burgundy', NULL, '0', '1', 'active'),
('44', '12', 'ASD', 'Green', 'green', NULL, '0', '1', 'active');

-- --------------------------------------------------------
-- Table structure for `attributes`

CREATE TABLE `attributes` (
  `id` int NOT NULL AUTO_INCREMENT,
  `attr_code` varchar(50) DEFAULT NULL,
  `attr_name` varchar(100) NOT NULL,
  `attr_slug` varchar(150) NOT NULL,
  `display_type` varchar(20) NOT NULL DEFAULT 'dropdown',
  `is_variation` tinyint(1) NOT NULL DEFAULT '1',
  `is_live` tinyint(1) NOT NULL DEFAULT '1',
  `status` varchar(20) NOT NULL DEFAULT 'active',
  `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `updated_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`),
  UNIQUE KEY `uq_attributes_slug` (`attr_slug`),
  UNIQUE KEY `uq_attributes_name` (`attr_name`),
  UNIQUE KEY `uq_attributes_code` (`attr_code`)
) ENGINE=InnoDB AUTO_INCREMENT=16 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

INSERT INTO `attributes` (`id`, `attr_code`, `attr_name`, `attr_slug`, `display_type`, `is_variation`, `is_live`, `status`) VALUES
('1', 'ATTR-SIZE', 'Size', 'size', 'dropdown', '1', '1', 'active'),
('2', 'ATTR-COLOR', 'Color', 'color', 'color', '1', '1', 'active'),
('3', 'ATTR-MATERIAL', 'Material', 'material', 'dropdown', '0', '1', 'active'),
('4', 'ATTR-PACK', 'Pack Size', 'pack-size', 'dropdown', '1', '1', 'active'),
('10', 'MEAL', 'Meal', 'meal', 'dropdown', '1', '1', 'active'),
('11', 'FLAVOUR', 'Flavour', 'flavour', 'dropdown', '1', '1', 'active'),
('12', 'PIECES', 'Pieces', 'pieces', 'dropdown', '1', '1', 'active'),
('13', 'PIECE', 'Piece', 'piece', 'dropdown', '1', '1', 'active'),
('14', 'LLSF', 'dsfs', 'dsfs', 'dropdown', '1', '1', 'active');

-- --------------------------------------------------------
-- Table structure for `audit_logs`

CREATE TABLE `audit_logs` (
  `id` bigint NOT NULL AUTO_INCREMENT,
  `user_id` int DEFAULT NULL,
  `username_snapshot` varchar(150) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `role_snapshot` varchar(150) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `module_code` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL,
  `action_code` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL,
  `entity_type` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `entity_id` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `summary` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `changed_fields` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `old_values_json` json DEFAULT NULL,
  `new_values_json` json DEFAULT NULL,
  `ip_address` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `user_agent` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`),
  KEY `idx_audit_user` (`user_id`),
  KEY `idx_audit_module_action` (`module_code`,`action_code`),
  KEY `idx_audit_entity` (`entity_type`,`entity_id`),
  KEY `idx_audit_created` (`created_at`),
  KEY `idx_audit_logs_created` (`created_at`),
  KEY `idx_audit_logs_module_action` (`module_code`,`action_code`)
) ENGINE=InnoDB AUTO_INCREMENT=890 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;


-- Runtime data for `audit_logs` was intentionally omitted from the cPanel import; the table schema is kept.
CREATE TABLE `background_job_logs` (
  `id` bigint NOT NULL AUTO_INCREMENT,
  `job_id` bigint NOT NULL,
  `level` enum('debug','info','warn','error') NOT NULL DEFAULT 'info',
  `message` varchar(1000) NOT NULL,
  `data_json` json DEFAULT NULL,
  `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`),
  KEY `idx_background_job_logs_job_id` (`job_id`,`id`),
  CONSTRAINT `fk_background_job_logs_job` FOREIGN KEY (`job_id`) REFERENCES `background_jobs` (`id`) ON DELETE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=1951 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;


-- Runtime data for `background_job_logs` was intentionally omitted from the cPanel import; the table schema is kept.
CREATE TABLE `background_jobs` (
  `id` bigint NOT NULL AUTO_INCREMENT,
  `job_type` varchar(80) NOT NULL,
  `status` enum('pending','running','completed','failed','cancelled') NOT NULL DEFAULT 'pending',
  `priority` int NOT NULL DEFAULT '100',
  `progress_current` bigint NOT NULL DEFAULT '0',
  `progress_total` bigint NOT NULL DEFAULT '0',
  `input_json` json DEFAULT NULL,
  `result_json` json DEFAULT NULL,
  `error_message` text,
  `requested_by_user_id` int DEFAULT NULL,
  `locked_by` varchar(120) DEFAULT NULL,
  `locked_at` datetime DEFAULT NULL,
  `started_at` datetime DEFAULT NULL,
  `finished_at` datetime DEFAULT NULL,
  `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `updated_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`),
  KEY `idx_background_jobs_status_priority` (`status`,`priority`,`id`),
  KEY `idx_background_jobs_type_status` (`job_type`,`status`),
  KEY `idx_background_jobs_created` (`created_at`)
) ENGINE=InnoDB AUTO_INCREMENT=25 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;


-- Runtime data for `background_jobs` was intentionally omitted from the cPanel import; the table schema is kept.
CREATE TABLE `banner_groups` (
  `id` int NOT NULL AUTO_INCREMENT,
  `group_code` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL,
  `group_name` varchar(150) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL,
  `group_type` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'carousel',
  `slides_to_show` int NOT NULL DEFAULT '1',
  `autoplay` tinyint NOT NULL DEFAULT '1',
  `autoplay_speed` int NOT NULL DEFAULT '3000',
  `show_dots` tinyint NOT NULL DEFAULT '1',
  `show_arrows` tinyint NOT NULL DEFAULT '1',
  `is_live` tinyint NOT NULL DEFAULT '0',
  `status` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'Draft',
  `created_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
  `updated_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  `banner_width_preset` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'default',
  `banner_width_percent` int NOT NULL DEFAULT '100',
  `banner_height_preset` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'default',
  `banner_height_percent` int NOT NULL DEFAULT '60',
  `desktop_banner_height` varchar(24) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `mobile_banner_height` varchar(24) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `mobile_banner_landscape` tinyint(1) NOT NULL DEFAULT '0',
  PRIMARY KEY (`id`),
  UNIQUE KEY `group_code` (`group_code`)
) ENGINE=InnoDB AUTO_INCREMENT=9 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

INSERT INTO `banner_groups` (`id`, `group_code`, `group_name`, `group_type`, `slides_to_show`, `autoplay`, `autoplay_speed`, `show_dots`, `show_arrows`, `is_live`, `status`, `banner_width_preset`, `banner_width_percent`, `banner_height_preset`, `banner_height_percent`, `desktop_banner_height`, `mobile_banner_height`, `mobile_banner_landscape`) VALUES
('6', 'EQWE', 'qew', 'carousel', '1', '1', '3000', '1', '1', '0', 'Draft', 'default', '100', 'default', '60', NULL, NULL, '0'),
('7', 'ERW', 'ekwrj', 'carousel', '3', '1', '3000', '1', '1', '1', 'Draft', 'default', '100', 'custom', '45', '45%', '35%', '1'),
('8', 'EIDBANNER', 'Eid Banner', 'carousel', '3', '1', '6000', '1', '1', '0', 'Draft', 'default', '100', 'default', '60', NULL, NULL, '0');

-- --------------------------------------------------------
-- Table structure for `banner_items`

CREATE TABLE `banner_items` (
  `id` int NOT NULL AUTO_INCREMENT,
  `group_id` int NOT NULL,
  `banner_title` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `banner_subtitle` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `banner_description` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `image_media_id` int DEFAULT NULL,
  `mobile_image_media_id` int DEFAULT NULL,
  `sort_order` int NOT NULL DEFAULT '1',
  `is_enabled` tinyint NOT NULL DEFAULT '1',
  `show_badge` tinyint NOT NULL DEFAULT '0',
  `badge_text` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `badge_position` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'left',
  `badge_bg_color` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `badge_text_color` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `overlay_enabled` tinyint NOT NULL DEFAULT '1',
  `overlay_color` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `overlay_opacity` decimal(4,2) NOT NULL DEFAULT '0.30',
  `content_alignment` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'left',
  `text_color` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `title_color` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `subtitle_color` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `text_holder_enabled` tinyint(1) NOT NULL DEFAULT '0',
  `text_holder_bg_color` varchar(24) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '#000000',
  `text_holder_opacity` decimal(4,2) NOT NULL DEFAULT '0.35',
  `text_holder_border_radius` int NOT NULL DEFAULT '16',
  `text_holder_padding` int NOT NULL DEFAULT '24',
  `button_count` int NOT NULL DEFAULT '1',
  `button1_enabled` tinyint NOT NULL DEFAULT '1',
  `button1_text` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `button1_link` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `button1_style` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'primary',
  `button1_new_tab` tinyint NOT NULL DEFAULT '0',
  `button2_enabled` tinyint NOT NULL DEFAULT '0',
  `button2_text` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `button2_link` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `button2_style` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'secondary',
  `button2_new_tab` tinyint NOT NULL DEFAULT '0',
  `button3_enabled` tinyint NOT NULL DEFAULT '0',
  `button3_text` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `button3_link` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `button3_style` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'outline',
  `button3_new_tab` tinyint NOT NULL DEFAULT '0',
  `alt_text` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `schedule_start` datetime DEFAULT NULL,
  `schedule_end` datetime DEFAULT NULL,
  `created_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
  `updated_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`),
  KEY `fk_banner_items_group` (`group_id`),
  KEY `fk_banner_items_image` (`image_media_id`),
  KEY `fk_banner_items_mobile_image` (`mobile_image_media_id`),
  CONSTRAINT `fk_banner_items_group` FOREIGN KEY (`group_id`) REFERENCES `banner_groups` (`id`) ON DELETE CASCADE,
  CONSTRAINT `fk_banner_items_image` FOREIGN KEY (`image_media_id`) REFERENCES `media` (`id`) ON DELETE SET NULL,
  CONSTRAINT `fk_banner_items_mobile_image` FOREIGN KEY (`mobile_image_media_id`) REFERENCES `media` (`id`) ON DELETE SET NULL
) ENGINE=InnoDB AUTO_INCREMENT=12 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

INSERT INTO `banner_items` (`id`, `group_id`, `banner_title`, `banner_subtitle`, `banner_description`, `image_media_id`, `mobile_image_media_id`, `sort_order`, `is_enabled`, `show_badge`, `badge_text`, `badge_position`, `badge_bg_color`, `badge_text_color`, `overlay_enabled`, `overlay_color`, `overlay_opacity`, `content_alignment`, `text_color`, `title_color`, `subtitle_color`, `text_holder_enabled`, `text_holder_bg_color`, `text_holder_opacity`, `text_holder_border_radius`, `text_holder_padding`, `button_count`, `button1_enabled`, `button1_text`, `button1_link`, `button1_style`, `button1_new_tab`, `button2_enabled`, `button2_text`, `button2_link`, `button2_style`, `button2_new_tab`, `button3_enabled`, `button3_text`, `button3_link`, `button3_style`, `button3_new_tab`, `alt_text`, `schedule_start`, `schedule_end`) VALUES
('5', '7', 'Welcome To Ecommerce Store', 'New Season Sale', '', '2', '2', '1', '1', '1', 'vcxmzv,xz', 'left', '#ef4444', '#ffffff', '1', '#000000', '0.30', 'left', '#ffffff', '#ffffff', '#ffffff', '0', '#000000', '0.35', '16', '24', '2', '1', 'Shop Now', '', 'primary', '0', '1', '', '', 'secondary', '0', '0', '', '', 'outline', '0', '', NULL, NULL),
('6', '7', 'ParallaxWare Website', '', '', '1', '1', '2', '1', '0', '', 'left', '#ef4444', '#ffffff', '1', '#000000', '0.30', 'left', '#ffffff', '#ffffff', '#ffffff', '0', '#000000', '0.35', '16', '24', '1', '1', 'Shop Now', '', 'primary', '0', '0', '', '', 'secondary', '0', '0', '', '', 'outline', '0', '', NULL, NULL),
('7', '7', 'WELCOME TO STORE', '', '', '10', '5', '3', '1', '0', '', 'left', '#ef4444', '#ffffff', '1', '#000000', '0.30', 'left', '#ffffff', '#ffffff', '#ffffff', '0', '#000000', '0.35', '16', '24', '1', '1', 'Shop Now', '', 'primary', '0', '0', '', '', 'secondary', '0', '0', '', '', 'outline', '0', '', NULL, NULL),
('8', '6', 'kdfaljhdkfj', '', '', '8', NULL, '1', '1', '0', '', 'left', '#ef4444', '#ffffff', '1', '#000000', '0.30', 'left', '#ffffff', '#ffffff', '#ffffff', '0', '#000000', '0.35', '16', '24', '1', '1', 'Shop Now', '', 'primary', '0', '0', '', '', 'secondary', '0', '0', '', '', 'outline', '0', '', NULL, NULL),
('9', '8', 'Welcome to My Custom Store', 'Shop Best for men Women', '', '278', NULL, '1', '1', '1', 'Install Our App', 'right', '#ffffff', '#000000', '1', '#000000', '0.40', 'left', '#ffffff', '#ffffff', '#ffffff', '0', '#000000', '0.35', '16', '24', '3', '1', 'Shop Now', '', 'primary', '0', '1', 'Contact US', '', 'secondary', '0', '1', 'whatsapp Us', '', 'dark', '0', '', NULL, NULL),
('10', '8', 'StandarD Stiched Clothes', '', '', '292', NULL, '2', '1', '1', '', 'left', '#ef4444', '#ffffff', '1', '#000000', '0.30', 'left', '#ffffff', '#ffffff', '#ffffff', '0', '#000000', '0.35', '16', '24', '1', '1', 'Shop Now', '', 'primary', '0', '0', '', '', 'secondary', '0', '0', '', '', 'outline', '0', '', NULL, NULL),
('11', '8', 'Perfect weather Conditions', '', 'sadf', '229', NULL, '3', '1', '0', '', 'left', '#ef4444', '#ffffff', '1', '#000000', '0.30', 'left', '#ffffff', '#ffffff', '#ffffff', '0', '#000000', '0.35', '16', '24', '1', '1', 'Shop Now', '', 'primary', '0', '0', '', '', 'secondary', '0', '0', '', '', 'outline', '0', '', NULL, NULL);

-- --------------------------------------------------------
-- Table structure for `branch_pickup_users`

CREATE TABLE `branch_pickup_users` (
  `id` int NOT NULL AUTO_INCREMENT,
  `branch_id` int NOT NULL,
  `user_id` int NOT NULL,
  `is_active` tinyint(1) NOT NULL DEFAULT '1',
  `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `updated_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`),
  UNIQUE KEY `uq_branch_pickup_user` (`branch_id`,`user_id`),
  KEY `idx_branch_pickup_users_user` (`user_id`,`is_active`),
  CONSTRAINT `fk_branch_pickup_users_branch` FOREIGN KEY (`branch_id`) REFERENCES `branches` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
  CONSTRAINT `fk_branch_pickup_users_user` FOREIGN KEY (`user_id`) REFERENCES `users` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=46 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

INSERT INTO `branch_pickup_users` (`id`, `branch_id`, `user_id`, `is_active`) VALUES
('23', '2', '8', '1'),
('25', '2', '1', '1'),
('42', '1', '1', '1'),
('43', '1', '8', '1');

-- --------------------------------------------------------
-- Table structure for `branch_service_areas`

CREATE TABLE `branch_service_areas` (
  `id` int NOT NULL AUTO_INCREMENT,
  `branch_id` int NOT NULL,
  `country` varchar(100) DEFAULT NULL,
  `province` varchar(100) DEFAULT NULL,
  `city` varchar(100) NOT NULL,
  `area` varchar(150) DEFAULT NULL,
  `postal_code` varchar(30) DEFAULT NULL,
  `is_active` tinyint(1) NOT NULL DEFAULT '1',
  `sort_order` int NOT NULL DEFAULT '0',
  `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `updated_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`),
  KEY `idx_branch_service_area_lookup` (`country`,`city`,`area`,`postal_code`,`is_active`),
  KEY `idx_branch_service_area_branch` (`branch_id`,`is_active`),
  CONSTRAINT `fk_branch_service_areas_branch` FOREIGN KEY (`branch_id`) REFERENCES `branches` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=85 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

INSERT INTO `branch_service_areas` (`id`, `branch_id`, `country`, `province`, `city`, `area`, `postal_code`, `is_active`, `sort_order`) VALUES
('39', '2', 'Pakistan', NULL, 'Islamabad', 'G13', NULL, '1', '1'),
('40', '2', 'Pakistan', NULL, 'Islamabad', 'G14', NULL, '1', '2'),
('41', '2', 'Pakistan', NULL, 'Islamabad', 'G11', NULL, '1', '3'),
('42', '2', 'Pakistan', NULL, 'Islamabad', 'G12', NULL, '1', '4'),
('43', '2', 'Pakistan', NULL, 'Islamabad', 'g15', NULL, '1', '5'),
('44', '2', 'Pakistan', NULL, 'Islamabad', 'g16', NULL, '1', '6'),
('77', '1', 'Pakistan', NULL, 'Islamabad', 'G9', NULL, '1', '1'),
('78', '1', 'Pakistan', NULL, 'Islamabad', 'G8', NULL, '1', '2'),
('79', '1', 'Pakistan', NULL, 'Islamabad', 'F8', NULL, '1', '3'),
('80', '1', 'Pakistan', NULL, 'Islamabad', 'F6', NULL, '1', '4'),
('81', '1', 'Pakistan', NULL, 'Islamabad', 'F7', NULL, '1', '5'),
('82', '1', 'Pakistan', NULL, 'Islamabad', 'F11', NULL, '1', '6'),
('83', '1', 'Pakistan', NULL, 'Islamabad', 'F10', NULL, '1', '7'),
('84', '1', 'Pakistan', NULL, 'Islamabad', 'G10', NULL, '1', '8');

-- --------------------------------------------------------
-- Table structure for `branches`

CREATE TABLE `branches` (
  `id` int NOT NULL AUTO_INCREMENT,
  `branch_code` varchar(50) NOT NULL,
  `branch_name` varchar(150) NOT NULL,
  `branch_type` varchar(40) NOT NULL DEFAULT 'branch',
  `phone` varchar(80) DEFAULT NULL,
  `country` varchar(100) DEFAULT NULL,
  `province` varchar(100) DEFAULT NULL,
  `city` varchar(100) DEFAULT NULL,
  `area` varchar(150) DEFAULT NULL,
  `address_line_1` varchar(255) DEFAULT NULL,
  `address_line_2` varchar(255) DEFAULT NULL,
  `latitude` decimal(10,7) DEFAULT NULL,
  `longitude` decimal(10,7) DEFAULT NULL,
  `can_fulfill_online_orders` tinyint(1) NOT NULL DEFAULT '1',
  `can_accept_pickup` tinyint(1) NOT NULL DEFAULT '1',
  `can_deliver` tinyint(1) NOT NULL DEFAULT '1',
  `is_active` tinyint(1) NOT NULL DEFAULT '1',
  `sort_order` int NOT NULL DEFAULT '0',
  `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `updated_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`),
  UNIQUE KEY `uq_branches_code` (`branch_code`),
  KEY `idx_branches_active_type` (`is_active`,`branch_type`),
  KEY `idx_branches_city` (`country`,`city`,`area`)
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

INSERT INTO `branches` (`id`, `branch_code`, `branch_name`, `branch_type`, `phone`, `country`, `province`, `city`, `area`, `address_line_1`, `address_line_2`, `latitude`, `longitude`, `can_fulfill_online_orders`, `can_accept_pickup`, `can_deliver`, `is_active`, `sort_order`) VALUES
('1', 'BRANCH1120', 'F10 Branch', 'branch', 'abc', 'Pakistan', 'Islamabad', 'Islamabad', 'F10', 'Street 60, F-10/3, F-10, Islamabad, Zone 1, Islamabad Capital Territory, 44000, Pakistan', NULL, '33.6942091', '73.0083561', '1', '1', '1', '1', '0'),
('2', 'ABC', 'G14 Branch', 'warehouse', 'abc', 'Pakistan', 'Islamabad', 'Islamabad', 'G14', 'Street 21, G-14/4, G-13, Islamabad, Zone 1, Islamabad Capital Territory, 44000, Pakistan', NULL, '33.6430271', '72.9485750', '1', '1', '1', '1', '0');

-- --------------------------------------------------------
-- Table structure for `brands`

CREATE TABLE `brands` (
  `id` int NOT NULL AUTO_INCREMENT,
  `brand_code` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL,
  `brand_name` varchar(150) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL,
  `brand_desc` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `image_media_id` int DEFAULT NULL,
  `created_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
  `updated_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  `meta_title` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `meta_description` varchar(500) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `focus_keyword` varchar(150) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `seo_slug` varchar(250) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `site_text_enabled` tinyint(1) NOT NULL DEFAULT '0',
  `site_text_html` longtext COLLATE utf8mb4_unicode_ci,
  `site_text_bg_color` varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '#ffffff',
  `site_text_text_color` varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '#0f172a',
  `site_text_font_size` int NOT NULL DEFAULT '18',
  `site_text_font_style` varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'normal',
  `site_text_button_label` varchar(160) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `site_text_button_url` varchar(500) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `site_text_button_bg_color` varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '#2563eb',
  `site_text_button_text_color` varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '#ffffff',
  PRIMARY KEY (`id`),
  UNIQUE KEY `brand_code` (`brand_code`),
  KEY `fk_brands_media` (`image_media_id`),
  CONSTRAINT `fk_brands_media` FOREIGN KEY (`image_media_id`) REFERENCES `media` (`id`) ON DELETE SET NULL
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

INSERT INTO `brands` (`id`, `brand_code`, `brand_name`, `brand_desc`, `image_media_id`, `meta_title`, `meta_description`, `focus_keyword`, `seo_slug`, `site_text_enabled`, `site_text_html`, `site_text_bg_color`, `site_text_text_color`, `site_text_font_size`, `site_text_font_style`, `site_text_button_label`, `site_text_button_url`, `site_text_button_bg_color`, `site_text_button_text_color`) VALUES
('2', 'DAFD', 'dfsa', NULL, NULL, NULL, NULL, NULL, NULL, '0', NULL, '#ffffff', '#0f172a', '18', 'normal', NULL, NULL, '#2563eb', '#ffffff');

-- --------------------------------------------------------
-- Table structure for `cart_item_options`

CREATE TABLE `cart_item_options` (
  `id` bigint NOT NULL AUTO_INCREMENT,
  `cart_item_id` bigint NOT NULL,
  `option_type` varchar(50) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'attribute',
  `option_name` varchar(150) COLLATE utf8mb4_unicode_ci NOT NULL,
  `option_value` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `price_delta` decimal(18,2) NOT NULL DEFAULT '0.00',
  `sort_order` int NOT NULL DEFAULT '0',
  `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`),
  KEY `idx_cart_item_options_item` (`cart_item_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- No data for `cart_item_options`

-- --------------------------------------------------------
-- Table structure for `cart_items`

CREATE TABLE `cart_items` (
  `id` bigint NOT NULL AUTO_INCREMENT,
  `cart_id` bigint NOT NULL,
  `product_id` int NOT NULL,
  `variation_id` int DEFAULT NULL,
  `product_name_snapshot` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
  `variation_name_snapshot` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `sku_snapshot` varchar(150) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `image_url_snapshot` varchar(500) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `quantity` decimal(18,3) NOT NULL DEFAULT '1.000',
  `regular_price_snapshot` decimal(18,2) NOT NULL DEFAULT '0.00',
  `sale_price_snapshot` decimal(18,2) DEFAULT NULL,
  `unit_price` decimal(18,2) NOT NULL DEFAULT '0.00',
  `line_subtotal` decimal(18,2) NOT NULL DEFAULT '0.00',
  `discount_amount` decimal(18,2) NOT NULL DEFAULT '0.00',
  `tax_amount` decimal(18,2) NOT NULL DEFAULT '0.00',
  `line_total` decimal(18,2) NOT NULL DEFAULT '0.00',
  `tax_class_snapshot` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `is_taxable_snapshot` tinyint(1) NOT NULL DEFAULT '0',
  `stock_track_snapshot` tinyint(1) NOT NULL DEFAULT '1',
  `item_status` varchar(30) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'active',
  `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `updated_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  `pricing_rule_id` int DEFAULT NULL,
  `pricing_rule_name_snapshot` varchar(150) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `pricing_scope_snapshot` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `quantity_basis_snapshot` decimal(18,3) DEFAULT NULL,
  `original_unit_price` decimal(18,2) DEFAULT NULL,
  `pricing_discount_amount` decimal(18,2) NOT NULL DEFAULT '0.00',
  `discount_source` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `applied_collection_id` int DEFAULT NULL,
  `applied_tier_id` int DEFAULT NULL,
  `grouped_product_id` bigint DEFAULT NULL,
  `grouped_product_title_snapshot` varchar(190) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `grouped_product_slug_snapshot` varchar(220) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `grouped_discount_type_snapshot` varchar(20) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `grouped_discount_value_snapshot` decimal(18,4) DEFAULT NULL,
  `grouped_base_quantity_snapshot` decimal(18,4) DEFAULT NULL,
  PRIMARY KEY (`id`),
  UNIQUE KEY `uq_cart_product_variation` (`cart_id`,`product_id`,`variation_id`),
  KEY `idx_cart_items_cart` (`cart_id`),
  KEY `idx_cart_items_product` (`product_id`),
  KEY `idx_cart_items_variation` (`variation_id`),
  KEY `idx_cart_items_pricing_rule` (`pricing_rule_id`),
  KEY `idx_cart_items_grouped_active` (`cart_id`,`grouped_product_id`,`item_status`)
) ENGINE=InnoDB AUTO_INCREMENT=97 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

INSERT INTO `cart_items` (`id`, `cart_id`, `product_id`, `variation_id`, `product_name_snapshot`, `variation_name_snapshot`, `sku_snapshot`, `image_url_snapshot`, `quantity`, `regular_price_snapshot`, `sale_price_snapshot`, `unit_price`, `line_subtotal`, `discount_amount`, `tax_amount`, `line_total`, `tax_class_snapshot`, `is_taxable_snapshot`, `stock_track_snapshot`, `item_status`, `pricing_rule_id`, `pricing_rule_name_snapshot`, `pricing_scope_snapshot`, `quantity_basis_snapshot`, `original_unit_price`, `pricing_discount_amount`, `discount_source`, `applied_collection_id`, `applied_tier_id`, `grouped_product_id`, `grouped_product_title_snapshot`, `grouped_product_slug_snapshot`, `grouped_discount_type_snapshot`, `grouped_discount_value_snapshot`, `grouped_base_quantity_snapshot`) VALUES
('1', '1', '629', NULL, 'Tooth Pick', NULL, 'sad', '/uploads/Tooth_Pick_1_1776893757894_24188.png', '5.000', '0.00', NULL, '0.00', '0.00', '0.00', '0.00', '0.00', 'standard_16', '1', '1', 'active', NULL, NULL, NULL, NULL, NULL, '0.00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('2', '2', '629', NULL, 'Tooth Pick', NULL, 'sad', '/uploads/Tooth_Pick_1_1776893757894_24188.png', '3.000', '0.00', NULL, '0.00', '0.00', '0.00', '0.00', '0.00', 'standard_16', '1', '1', 'active', NULL, NULL, NULL, NULL, NULL, '0.00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('3', '3', '629', NULL, 'Tooth Pick', NULL, 'sad', '/uploads/Tooth_Pick_1_1776893757894_24188.png', '1.000', '0.00', NULL, '0.00', '0.00', '0.00', '0.00', '0.00', 'standard_16', '1', '1', 'active', NULL, NULL, NULL, NULL, NULL, '0.00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('4', '4', '629', NULL, 'Tooth Pick', NULL, 'sad', '/uploads/Tooth_Pick_1_1776893757894_24188.png', '1.000', '0.00', NULL, '0.00', '0.00', '0.00', '0.00', '0.00', 'standard_16', '1', '1', 'active', NULL, NULL, NULL, NULL, NULL, '0.00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('5', '5', '629', NULL, 'Tooth Pick', NULL, 'sad', '/uploads/Tooth_Pick_1_1776893757894_24188.png', '1.000', '0.00', NULL, '0.00', '0.00', '0.00', '0.00', '0.00', 'standard_16', '1', '1', 'active', NULL, NULL, NULL, NULL, NULL, '0.00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('6', '6', '629', NULL, 'Tooth Pick', NULL, 'sad', '/uploads/Tooth_Pick_1_1776893757894_24188.png', '1.000', '0.00', NULL, '0.00', '0.00', '0.00', '0.00', '0.00', 'standard_16', '1', '1', 'active', NULL, NULL, NULL, NULL, NULL, '0.00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('7', '7', '629', NULL, 'Tooth Pick', NULL, 'sad', '/uploads/Tooth_Pick_1_1776893757894_24188.png', '1.000', '0.00', NULL, '0.00', '0.00', '0.00', '0.00', '0.00', 'standard_16', '1', '1', 'active', NULL, NULL, NULL, NULL, NULL, '0.00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('8', '8', '629', NULL, 'Tooth Pick', NULL, 'sad', '/uploads/Tooth_Pick_1_1776893757894_24188.png', '1.000', '0.00', NULL, '0.00', '0.00', '0.00', '0.00', '0.00', 'standard_16', '1', '1', 'removed', NULL, NULL, NULL, NULL, NULL, '0.00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('9', '8', '629', NULL, 'Tooth Pick', NULL, 'sad', '/uploads/Tooth_Pick_1_1776893757894_24188.png', '2.000', '0.00', NULL, '0.00', '0.00', '0.00', '0.00', '0.00', 'standard_16', '1', '1', 'active', NULL, NULL, NULL, NULL, NULL, '0.00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('10', '9', '629', NULL, 'Tooth Pick', NULL, 'sad', '/uploads/Tooth_Pick_1_1776893757894_24188.png', '1.000', '0.00', NULL, '0.00', '0.00', '0.00', '0.00', '0.00', 'standard_16', '1', '1', 'active', NULL, NULL, NULL, NULL, NULL, '0.00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('11', '10', '629', NULL, 'Tooth Pick', NULL, 'sad', '/uploads/Tooth_Pick_1_1776893757894_24188.png', '6.000', '0.00', NULL, '0.00', '0.00', '0.00', '0.00', '0.00', 'standard_16', '1', '1', 'removed', NULL, NULL, NULL, NULL, NULL, '0.00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('12', '10', '629', NULL, 'Tooth Pick', NULL, 'sad', '/uploads/Tooth_Pick_1_1776893757894_24188.png', '2.000', '0.00', NULL, '0.00', '0.00', '0.00', '0.00', '0.00', 'standard_16', '1', '1', 'removed', NULL, NULL, NULL, NULL, NULL, '0.00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('13', '10', '629', NULL, 'Tooth Pick', NULL, 'sad', '/uploads/Tooth_Pick_1_1776893757894_24188.png', '1.000', '0.00', NULL, '0.00', '0.00', '0.00', '0.00', '0.00', 'standard_16', '1', '1', 'removed', NULL, NULL, NULL, NULL, NULL, '0.00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('14', '10', '629', NULL, 'Tooth Pick', NULL, 'sad', '/uploads/Tooth_Pick_1_1776893757894_24188.png', '1.000', '0.00', NULL, '0.00', '0.00', '0.00', '0.00', '0.00', 'standard_16', '1', '1', 'active', NULL, NULL, NULL, NULL, NULL, '0.00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('15', '11', '629', NULL, 'Tooth Pick', NULL, 'sad', '/uploads/Tooth_Pick_1_1776893757894_24188.png', '2.000', '0.00', NULL, '0.00', '0.00', '0.00', '0.00', '0.00', 'standard_16', '1', '1', 'removed', NULL, NULL, NULL, NULL, NULL, '0.00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('16', '11', '629', NULL, 'Tooth Pick', NULL, 'sad', '/uploads/Tooth_Pick_1_1776893757894_24188.png', '1.000', '0.00', NULL, '0.00', '0.00', '0.00', '0.00', '0.00', 'standard_16', '1', '1', 'active', NULL, NULL, NULL, NULL, NULL, '0.00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('17', '12', '629', NULL, 'Tooth Pick', NULL, 'sad', '/uploads/Tooth_Pick_1_1776893757894_24188.png', '2.000', '0.00', NULL, '0.00', '0.00', '0.00', '0.00', '0.00', 'standard_16', '1', '1', 'removed', NULL, NULL, NULL, NULL, NULL, '0.00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('18', '12', '629', NULL, 'Tooth Pick', NULL, 'sad', '/uploads/Tooth_Pick_1_1776893757894_24188.png', '4.000', '2700.00', '2499.00', '2499.00', '9996.00', '0.00', '499.80', '10495.80', 'reduced_5', '1', '1', 'active', NULL, NULL, NULL, NULL, NULL, '0.00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('19', '13', '319', '23', 'Oversized Hoodie', 'Oversized Hoodie - Olive / XL', 'HD-OVR-SZN-OLI-XL', NULL, '1.000', '3499.00', NULL, '3499.00', '3499.00', '0.00', '0.00', '3499.00', NULL, '0', '1', 'active', NULL, NULL, NULL, NULL, NULL, '0.00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('20', '14', '629', NULL, 'Tooth Pick', NULL, 'sad', '/uploads/Tooth_Pick_1_1776893757894_24188.png', '1.000', '2700.00', '2499.00', '2499.00', '2499.00', '0.00', '399.84', '2898.84', 'standard_16', '1', '1', 'active', NULL, NULL, NULL, NULL, NULL, '0.00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('21', '15', '629', NULL, 'Tooth Pick', NULL, 'sad', '/uploads/Tooth_Pick_1_1776893757894_24188.png', '1.000', '2700.00', '2499.00', '2499.00', '2499.00', '0.00', '399.84', '2898.84', 'standard_16', '1', '1', 'active', NULL, NULL, NULL, NULL, NULL, '0.00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('22', '16', '629', NULL, 'Tooth Pick', NULL, 'sad', '/uploads/Tooth_Pick_1_1776893757894_24188.png', '2.000', '2700.00', '2499.00', '2499.00', '4998.00', '0.00', '799.68', '5797.68', 'standard_16', '1', '1', 'active', NULL, NULL, NULL, NULL, NULL, '0.00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('23', '17', '629', NULL, 'Tooth Pick', NULL, 'sad', '/uploads/Tooth_Pick_1_1776893757894_24188.png', '1.000', '2700.00', '2499.00', '2499.00', '2499.00', '0.00', '399.84', '2898.84', 'standard_16', '1', '1', 'active', NULL, NULL, NULL, NULL, NULL, '0.00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('24', '18', '627', NULL, 'Dove Conditioner', NULL, NULL, '/uploads/Dove_Conditioner_1_1776893754456_41955.png', '2.000', '0.00', NULL, '0.00', '0.00', '0.00', '0.00', '0.00', NULL, '0', '0', 'active', NULL, NULL, NULL, NULL, NULL, '0.00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('25', '18', '623', NULL, 'Head & Shoulders', NULL, NULL, '/uploads/Head_Shoulders_1_1776893751793_40658.png', '4.000', '0.00', NULL, '0.00', '0.00', '0.00', '0.00', '0.00', NULL, '0', '0', 'active', NULL, NULL, NULL, NULL, NULL, '0.00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('26', '18', '625', NULL, 'Insect Killer Spray', NULL, NULL, '/uploads/Insect_Killer_Spray_1_1776893753525_44380.png', '2.000', '0.00', NULL, '0.00', '0.00', '0.00', '0.00', '0.00', NULL, '0', '0', 'active', NULL, NULL, NULL, NULL, NULL, '0.00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('27', '18', '621', NULL, 'Tooth brush', NULL, NULL, '/uploads/Tooth_brush_1_1776893748633_60430.png', '2.000', '0.00', NULL, '0.00', '0.00', '0.00', '0.00', '0.00', NULL, '0', '0', 'active', NULL, NULL, NULL, NULL, NULL, '0.00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('28', '18', '620', NULL, 'Colgate Toothpaste', NULL, NULL, '/uploads/Colgate_Toothpaste_1_1776893747667_82258.png', '2.000', '0.00', NULL, '0.00', '0.00', '0.00', '0.00', '0.00', NULL, '0', '0', 'active', NULL, NULL, NULL, NULL, NULL, '0.00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('29', '18', '629', NULL, 'Tooth Pick', NULL, 'sad', '/uploads/Tooth_Pick_1_1776893757894_24188.png', '4.000', '2700.00', '2499.00', '2499.00', '9996.00', '0.00', '499.80', '10495.80', 'reduced_5', '1', '1', 'active', NULL, NULL, NULL, NULL, NULL, '0.00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('30', '18', '628', '88', 'Air Freshner', 'cotton', NULL, '/uploads/Air_Freshner_1_1776893755664_70211.png', '2.000', '1121.00', '234.00', '234.00', '468.00', '0.00', '0.00', '468.00', NULL, '0', '0', 'active', NULL, NULL, NULL, NULL, NULL, '0.00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('31', '18', '630', '89', 'mnb', 'Only Burger', NULL, '/uploads/Tooth_Pick_1_1776893757894_24188.png', '2.000', '500.00', NULL, '500.00', '1000.00', '0.00', '0.00', '1000.00', NULL, '0', '0', 'active', NULL, NULL, NULL, NULL, NULL, '0.00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('42', '19', '627', NULL, 'Dove Conditioner', NULL, NULL, '/uploads/Dove_Conditioner_1_1776893754456_41955.png', '1.000', '0.00', NULL, '0.00', '0.00', '0.00', '0.00', '0.00', NULL, '0', '0', 'removed', NULL, NULL, NULL, NULL, NULL, '0.00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('43', '19', '623', NULL, 'Head & Shoulders', NULL, NULL, '/uploads/Head_Shoulders_1_1776893751793_40658.png', '2.000', '0.00', NULL, '0.00', '0.00', '0.00', '0.00', '0.00', NULL, '0', '0', 'removed', NULL, NULL, NULL, NULL, NULL, '0.00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('44', '19', '625', NULL, 'Insect Killer Spray', NULL, NULL, '/uploads/Insect_Killer_Spray_1_1776893753525_44380.png', '1.000', '0.00', NULL, '0.00', '0.00', '0.00', '0.00', '0.00', NULL, '0', '0', 'removed', NULL, NULL, NULL, NULL, NULL, '0.00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('45', '19', '621', NULL, 'Tooth brush', NULL, NULL, '/uploads/Tooth_brush_1_1776893748633_60430.png', '1.000', '0.00', NULL, '0.00', '0.00', '0.00', '0.00', '0.00', NULL, '0', '0', 'removed', NULL, NULL, NULL, NULL, NULL, '0.00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('46', '19', '620', NULL, 'Colgate Toothpaste', NULL, NULL, '/uploads/Colgate_Toothpaste_1_1776893747667_82258.png', '1.000', '0.00', NULL, '0.00', '0.00', '0.00', '0.00', '0.00', NULL, '0', '0', 'removed', NULL, NULL, NULL, NULL, NULL, '0.00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('47', '19', '629', NULL, 'Tooth Pick', NULL, 'sad', '/uploads/Tooth_Pick_1_1776893757894_24188.png', '2.000', '2700.00', '2499.00', '2499.00', '4998.00', '0.00', '0.00', '4998.00', 'standard_16', '1', '1', 'removed', NULL, NULL, NULL, NULL, NULL, '0.00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('48', '19', '628', '88', 'Air Freshner', 'cotton', NULL, '/uploads/Air_Freshner_1_1776893755664_70211.png', '1.000', '1121.00', '234.00', '234.00', '234.00', '0.00', '0.00', '234.00', NULL, '0', '0', 'removed', NULL, NULL, NULL, NULL, NULL, '0.00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('49', '19', '630', '89', 'mnb', 'Only Burger', NULL, '/uploads/Tooth_Pick_1_1776893757894_24188.png', '1.000', '500.00', NULL, '500.00', '500.00', '0.00', '0.00', '500.00', NULL, '0', '0', 'removed', NULL, NULL, NULL, NULL, NULL, '0.00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('50', '19', '629', NULL, 'Tooth Pick', NULL, 'sad', '/uploads/Tooth_Pick_1_1776893757894_24188.png', '1.000', '2700.00', '2499.00', '2499.00', '2499.00', '0.00', '399.84', '2898.84', 'standard_16', '1', '1', 'active', NULL, NULL, NULL, NULL, NULL, '0.00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('51', '19', '627', NULL, 'Dove Conditioner', NULL, NULL, '/uploads/Dove_Conditioner_1_1776893754456_41955.png', '1.000', '0.00', NULL, '0.00', '0.00', '0.00', '0.00', '0.00', NULL, '0', '0', 'active', NULL, NULL, NULL, NULL, NULL, '0.00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('52', '20', '629', NULL, 'Tooth Pick', NULL, 'sad', '/uploads/Tooth_Pick_1_1776893757894_24188.png', '1.000', '2700.00', '2499.00', '2499.00', '2499.00', '0.00', '399.84', '2898.84', 'standard_16', '1', '1', 'removed', NULL, NULL, NULL, NULL, NULL, '0.00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('53', '20', '627', NULL, 'Dove Conditioner', NULL, NULL, '/uploads/Dove_Conditioner_1_1776893754456_41955.png', '1.000', '0.00', NULL, '0.00', '0.00', '0.00', '0.00', '0.00', NULL, '0', '0', 'removed', NULL, NULL, NULL, NULL, NULL, '0.00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('54', '20', '628', '88', 'Air Freshner', 'cotton', NULL, '/uploads/Air_Freshner_1_1776893755664_70211.png', '1.000', '1121.00', '234.00', '234.00', '234.00', '0.00', '0.00', '234.00', NULL, '0', '0', 'removed', NULL, NULL, NULL, NULL, NULL, '0.00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('55', '21', '629', NULL, 'Tooth Pick', NULL, 'sad', '/uploads/Tooth_Pick_1_1776893757894_24188.png', '1.000', '2700.00', '2499.00', '2499.00', '2499.00', '0.00', '124.95', '2623.95', 'reduced_5', '1', '1', 'active', NULL, NULL, NULL, NULL, NULL, '0.00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('56', '21', '625', NULL, 'Insect Killer Spray', NULL, NULL, '/uploads/Insect_Killer_Spray_1_1776893753525_44380.png', '1.000', '0.00', NULL, '0.00', '0.00', '0.00', '0.00', '0.00', NULL, '0', '0', 'active', NULL, NULL, NULL, NULL, NULL, '0.00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('57', '21', '626', NULL, 'Hair Brush', NULL, NULL, '/uploads/Hair_Brush_1_1776893753988_33792.png', '1.000', '0.00', NULL, '0.00', '0.00', '0.00', '0.00', '0.00', NULL, '0', '0', 'active', NULL, NULL, NULL, NULL, NULL, '0.00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('58', '22', '4', NULL, 'fdafsafdsa', NULL, NULL, '/uploads/1773783603046-874667549.png', '1.000', '0.00', NULL, '0.00', '0.00', '0.00', '0.00', '0.00', NULL, '0', '0', 'active', NULL, NULL, NULL, NULL, NULL, '0.00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('59', '20', '629', NULL, 'Tooth Pick', NULL, 'sad', '/uploads/Tooth_Pick_1_1776893757894_24188.png', '1.000', '2700.00', '2499.00', '2499.00', '2499.00', '0.00', '124.95', '2623.95', 'reduced_5', '1', '1', 'active', NULL, NULL, NULL, NULL, NULL, '0.00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('62', '23', '626', NULL, 'Hair Brush', NULL, NULL, '/uploads/Hair_Brush_1_1776893753988_33792.png', '1.000', '0.00', NULL, '0.00', '0.00', '0.00', '0.00', '0.00', NULL, '0', '1', 'active', NULL, NULL, NULL, NULL, NULL, '0.00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('63', '24', '626', NULL, 'Hair Brush', NULL, NULL, '/uploads/Hair_Brush_1_1776893753988_33792.png', '1.000', '0.00', NULL, '0.00', '0.00', '0.00', '0.00', '0.00', NULL, '0', '1', 'removed', NULL, NULL, NULL, NULL, NULL, '0.00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('64', '24', '629', NULL, 'Tooth Pick', NULL, 'sad', '/uploads/Tooth_Pick_1_1776893757894_24188.png', '1.000', '2700.00', '2499.00', '2499.00', '2499.00', '0.00', '124.95', '2623.95', 'reduced_5', '1', '1', 'active', NULL, NULL, NULL, NULL, NULL, '0.00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('65', '24', '626', NULL, 'Hair Brush', NULL, NULL, '/uploads/Hair_Brush_1_1776893753988_33792.png', '1.000', '0.00', NULL, '0.00', '0.00', '0.00', '0.00', '0.00', NULL, '0', '1', 'active', NULL, NULL, NULL, NULL, NULL, '0.00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('66', '25', '626', NULL, 'Hair Brush', NULL, NULL, '/uploads/Hair_Brush_1_1776893753988_33792.png', '1.000', '0.00', NULL, '0.00', '0.00', '0.00', '0.00', '0.00', NULL, '0', '1', 'active', NULL, NULL, NULL, NULL, NULL, '0.00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('67', '26', '630', '89', 'mnb', 'Only Burger', NULL, '/uploads/Tooth_Pick_1_1776893757894_24188.png', '2.000', '500.00', NULL, '500.00', '1000.00', '0.00', '0.00', '1000.00', NULL, '0', '0', 'active', NULL, NULL, NULL, NULL, NULL, '0.00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('68', '27', '626', NULL, 'Hair Brush', NULL, NULL, '/uploads/Hair_Brush_1_1776893753988_33792.png', '1.000', '0.00', NULL, '0.00', '0.00', '0.00', '0.00', '0.00', NULL, '0', '1', 'active', NULL, NULL, NULL, NULL, '0.00', '0.00', 'none', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('69', '28', '630', '89', 'mnb', 'Only Burger', NULL, '/uploads/Tooth_Pick_1_1776893757894_24188.png', '2.000', '500.00', NULL, '500.00', '1000.00', '0.00', '0.00', '1000.00', NULL, '0', '0', 'active', NULL, NULL, NULL, NULL, NULL, '0.00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('70', '29', '503', NULL, 'Batman Stuff Toy', NULL, NULL, '/uploads/Batman_Stuff_Toy_1_1776893682687_83207.jpg', '2.000', '0.00', NULL, '0.00', '0.00', '0.00', '0.00', '0.00', NULL, '0', '0', 'removed', NULL, NULL, NULL, NULL, NULL, '0.00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('71', '29', '630', '89', 'mnb', 'Only Burger', NULL, '/uploads/Tooth_Pick_1_1776893757894_24188.png', '8.000', '500.00', NULL, '500.00', '4000.00', '0.00', '0.00', '4000.00', NULL, '0', '0', 'removed', NULL, NULL, NULL, NULL, NULL, '0.00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('72', '29', '629', NULL, 'Tooth Pick', NULL, 'sad', '/uploads/Tooth_Pick_1_1776893757894_24188.png', '160.000', '2700.00', '2499.00', '2499.00', '399840.00', '0.00', '63974.40', '463814.40', 'standard_16', '1', '1', 'removed', NULL, NULL, NULL, NULL, '2499.00', '0.00', 'none', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('73', '29', '625', NULL, 'Insect Killer Spray', NULL, NULL, '/uploads/Insect_Killer_Spray_1_1776893753525_44380.png', '3.000', '0.00', NULL, '0.00', '0.00', '0.00', '0.00', '0.00', NULL, '0', '0', 'removed', NULL, NULL, NULL, NULL, '0.00', '0.00', 'none', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('74', '29', '629', NULL, 'Tooth Pick', NULL, 'sad', '/uploads/Tooth_Pick_1_1776893757894_24188.png', '20.000', '2700.00', '2499.00', '200.00', '49980.00', '45980.00', '640.00', '4640.00', 'standard_16', '1', '1', 'active', '2', 'Product 629 tier pricing', 'product', '20.000', '2499.00', '45980.00', 'wholesale_tier', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('75', '27', '629', NULL, 'Tooth Pick', NULL, 'sad', '/uploads/Tooth_Pick_1_1776893757894_24188.png', '10.000', '2700.00', '2499.00', '150.00', '1500.00', '0.00', '240.00', '1740.00', 'standard_16', '1', '1', 'active', '2', 'Product 629 tier pricing', 'product', '10.000', '2499.00', '23490.00', 'wholesale_tier', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('76', '27', '625', NULL, 'Insect Killer Spray', NULL, NULL, '/uploads/Insect_Killer_Spray_1_1776893753525_44380.png', '2.000', '0.00', NULL, '0.00', '0.00', '0.00', '0.00', '0.00', NULL, '0', '0', 'active', NULL, NULL, NULL, NULL, '0.00', '0.00', 'none', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('77', '27', '623', NULL, 'Head & Shoulders', NULL, NULL, '/uploads/Head_Shoulders_1_1776893751793_40658.png', '2.000', '0.00', NULL, '0.00', '0.00', '0.00', '0.00', '0.00', NULL, '0', '0', 'active', NULL, NULL, NULL, NULL, '0.00', '0.00', 'none', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('78', '30', '629', NULL, 'Tooth Pick', NULL, 'sad', '/uploads/Tooth_Pick_1_1776893757894_24188.png', '20.000', '2700.00', '2499.00', '200.00', '49980.00', '45980.00', '640.00', '4640.00', 'standard_16', '1', '1', 'active', '2', 'Product 629 tier pricing', 'product', '20.000', '2499.00', '45980.00', 'wholesale_tier', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('79', '29', '630', '91', 'mnb', 'Burger With Chicken Piece and Drink', NULL, '/uploads/Tooth_Pick_1_1776893757894_24188.png', '1.000', '0.00', NULL, '0.00', '0.00', '0.00', '0.00', '0.00', NULL, '0', '0', 'removed', NULL, NULL, NULL, NULL, '0.00', '0.00', 'none', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('80', '31', '628', '88', 'Air Freshner', 'cotton', NULL, '/uploads/Air_Freshner_1_1776893755664_70211.png', '16.000', '1121.00', '234.00', '0.00', '0.00', '0.00', '0.00', '0.00', 'standard_16', '1', '0', 'active', '5', 'Variation 88 tier pricing', 'variation', '16.000', '234.00', '3744.00', 'wholesale_tier', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('81', '32', '620', NULL, 'Colgate Toothpaste', NULL, NULL, '/uploads/Colgate_Toothpaste_1_1776893747667_82258.png', '1.000', '0.00', NULL, '0.00', '0.00', '0.00', '0.00', '0.00', NULL, '0', '0', 'active', NULL, NULL, NULL, NULL, '0.00', '0.00', 'none', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('82', '33', '629', NULL, 'Tooth Pick', NULL, 'sad', '/uploads/Tooth_Pick_1_1776893757894_24188.png', '20.000', '2700.00', '2499.00', '200.00', '4000.00', '0.00', '0.00', '4000.00', 'standard_16', '1', '1', 'active', '2', 'Product 629 tier pricing', 'product', '20.000', '2499.00', '45980.00', 'wholesale_tier', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('83', '34', '629', NULL, 'Tooth Pick', NULL, 'sad', '/uploads/Tooth_Pick_1_1776893757894_24188.png', '15.000', '2700.00', '2499.00', '200.00', '3000.00', '34485.00', '480.00', '-31005.00', 'standard_16', '1', '1', 'active', '2', 'Product 629 tier pricing', 'product', '15.000', '2499.00', '34485.00', 'wholesale_tier', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('84', '35', '629', NULL, 'Tooth Pick', NULL, 'sad', '/uploads/Tooth_Pick_1_1776893757894_24188.png', '5.000', '2700.00', '2499.00', '150.00', '750.00', '11745.00', '120.00', '870.00', 'standard_16', '1', '1', 'removed', '2', 'Product 629 tier pricing', 'product', '5.000', '2499.00', '11745.00', 'wholesale_tier', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('85', '35', '629', NULL, 'Tooth Pick', NULL, 'sad', '/uploads/Tooth_Pick_1_1776893757894_24188.png', '20.000', '2700.00', '2499.00', '200.00', '4000.00', '0.00', '0.00', '4000.00', 'standard_16', '1', '1', 'active', '2', 'Product 629 tier pricing', 'product', '20.000', '2499.00', '45980.00', 'wholesale_tier', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('86', '36', '641', NULL, 'asd', NULL, '1234', '/uploads/1780091010244-741151054.png', '1.000', '0.00', NULL, '0.00', '0.00', '0.00', '0.00', '0.00', NULL, '0', '0', 'removed', NULL, NULL, NULL, NULL, '0.00', '0.00', 'none', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('87', '37', '629', NULL, 'Tooth Pick', NULL, 'sad', '/uploads/Tooth_Pick_1_1776893757894_24188.png', '115.000', '2700.00', '2499.00', '2499.00', '287385.00', '0.00', '45981.60', '333366.60', 'standard_16', '1', '1', 'removed', NULL, NULL, NULL, NULL, '2499.00', '0.00', 'none', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('88', '37', '639', NULL, 'test', NULL, '1234', NULL, '6.000', '0.00', NULL, '0.00', '0.00', '0.00', '0.00', '0.00', NULL, '0', '0', 'removed', NULL, NULL, NULL, NULL, '0.00', '0.00', 'none', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('89', '37', '625', NULL, 'Insect Killer Spray', NULL, NULL, '/uploads/Insect_Killer_Spray_1_1776893753525_44380.png', '1200.000', '0.00', NULL, '0.00', '0.00', '0.00', '0.00', '0.00', NULL, '0', '0', 'removed', NULL, NULL, NULL, NULL, '0.00', '0.00', 'none', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('90', '37', '620', NULL, 'Colgate Toothpaste', NULL, NULL, '/uploads/Colgate_Toothpaste_1_1776893747667_82258.png', '6.000', '0.00', NULL, '0.00', '0.00', '0.00', '0.00', '0.00', NULL, '0', '0', 'removed', NULL, NULL, NULL, NULL, '0.00', '0.00', 'none', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('91', '37', '382', NULL, '3 Horses Malt (330ml)', NULL, NULL, '/uploads/3_Horses_Malt_330ml__1_1776893587408_7238.png', '120.000', '0.00', NULL, '0.00', '0.00', '0.00', '0.00', '0.00', NULL, '0', '0', 'removed', NULL, NULL, NULL, NULL, '0.00', '0.00', 'none', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('92', '37', '418', NULL, 'Colorful Mug Set-3', NULL, NULL, '/uploads/Colorful_Mug_Set-3_1_1776893619999_48102.jpg', '3.000', '0.00', NULL, '0.00', '0.00', '0.00', '0.00', '0.00', NULL, '0', '0', 'removed', NULL, NULL, NULL, NULL, '0.00', '0.00', 'none', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
('93', '37', '604', NULL, 'Chicken Patties', NULL, NULL, '/uploads/Chicken_Patties_1_1776893737852_73492.png', '1.000', '0.00', NULL, '0.00', '0.00', '0.00', '0.00', '0.00', NULL, '0', '0', 'removed', NULL, NULL, NULL, NULL, '0.00', '0.00', 'none', NULL, NULL, '4', 'dklsjaf', 'dklsjaf', 'percent', '2.0000', NULL),
('94', '37', '607', NULL, 'Chicken Sashlick', NULL, NULL, '/uploads/Chicken_Sashlick_1_1776893741448_19422.png', '1.000', '0.00', NULL, '0.00', '0.00', '0.00', '0.00', '0.00', NULL, '0', '0', 'removed', NULL, NULL, NULL, NULL, '0.00', '0.00', 'none', NULL, NULL, '4', 'dklsjaf', 'dklsjaf', 'percent', '3.0000', NULL),
('95', '37', '600', NULL, 'Tea Set', NULL, NULL, '/uploads/Tea_Set_1_1776893735700_98140.jpg', '1.000', '0.00', NULL, '0.00', '0.00', '0.00', '0.00', '0.00', NULL, '0', '0', 'removed', NULL, NULL, NULL, NULL, '0.00', '0.00', 'none', NULL, NULL, '4', 'dklsjaf', 'dklsjaf', 'percent', '3.0000', NULL),
('96', '37', '603', NULL, 'Cup Tray Set', NULL, NULL, '/uploads/Cup_Tray_Set_1_1776893737122_28710.jpg', '1.000', '0.00', NULL, '0.00', '0.00', '0.00', '0.00', '0.00', NULL, '0', '0', 'removed', NULL, NULL, NULL, NULL, '0.00', '0.00', 'none', NULL, NULL, '4', 'dklsjaf', 'dklsjaf', 'percent', '2.0000', NULL);

-- --------------------------------------------------------
-- Table structure for `carts`

CREATE TABLE `carts` (
  `id` bigint NOT NULL AUTO_INCREMENT,
  `cart_token` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL,
  `customer_id` bigint DEFAULT NULL,
  `session_id` varchar(150) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `cart_status` varchar(30) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'active',
  `currency_code` varchar(10) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'PKR',
  `subtotal_amount` decimal(18,2) NOT NULL DEFAULT '0.00',
  `discount_amount` decimal(18,2) NOT NULL DEFAULT '0.00',
  `tax_amount` decimal(18,2) NOT NULL DEFAULT '0.00',
  `shipping_amount` decimal(18,2) NOT NULL DEFAULT '0.00',
  `total_amount` decimal(18,2) NOT NULL DEFAULT '0.00',
  `expires_at` datetime DEFAULT NULL,
  `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `updated_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`),
  UNIQUE KEY `uq_carts_token` (`cart_token`),
  KEY `idx_carts_customer` (`customer_id`),
  KEY `idx_carts_status` (`cart_status`),
  KEY `idx_carts_expires` (`expires_at`),
  KEY `idx_carts_token` (`cart_token`)
) ENGINE=InnoDB AUTO_INCREMENT=38 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

INSERT INTO `carts` (`id`, `cart_token`, `customer_id`, `session_id`, `cart_status`, `currency_code`, `subtotal_amount`, `discount_amount`, `tax_amount`, `shipping_amount`, `total_amount`, `expires_at`) VALUES
('1', 'cart_0e8cde5738875bf277234c9eca42d94a3e16e1cad0db02cc', NULL, NULL, 'active', 'PKR', '0.00', '0.00', '0.00', '0.00', '0.00', '2026-06-08 06:49:08'),
('2', 'cart_5cf5e759e69d41688809c1575971cc502b4f232fe070fe3f', '2', NULL, 'ordered', 'PKR', '0.00', '0.00', '0.00', '100.00', '100.00', '2026-06-08 13:00:59'),
('3', 'cart_22079db72f6a7b5031b11e37f27dbc510d20c998a6537a1c', '3', NULL, 'ordered', 'PKR', '0.00', '0.00', '0.00', '100.00', '100.00', '2026-06-08 22:36:59'),
('4', 'cart_d581f33a8bd32b9fe1208ce1e1470c34bb9bc1c983014d38', '5', NULL, 'ordered', 'PKR', '0.00', '0.00', '0.00', '100.00', '100.00', '2026-06-08 23:05:31'),
('5', 'cart_eeccdcb84fb4e971c20fcf129d630aef73973da373e51cfb', '3', NULL, 'ordered', 'PKR', '0.00', '0.00', '0.00', '100.00', '100.00', '2026-06-08 23:11:36'),
('6', 'cart_261dbb2bceebe75e3ca691aeb1088c41fbc269952369efd0', '6', NULL, 'ordered', 'PKR', '0.00', '0.00', '0.00', '100.00', '100.00', '2026-06-08 23:26:41'),
('7', 'cart_0a3a401f6ea82b4976f7ce49714600fcb103bd542f76fa9d', '7', NULL, 'ordered', 'PKR', '0.00', '0.00', '0.00', '100.00', '100.00', '2026-06-09 00:39:55'),
('8', 'cart_242c3e92acf4f2c5387dfe24806d74ae81fa5e750fab1dd3', '9', NULL, 'ordered', 'PKR', '0.00', '0.00', '0.00', '0.00', '0.00', '2026-06-09 01:06:18'),
('9', 'cart_78fa0943bbc9244dbb92c848da9d6aa89f458979b2eab171', '8', NULL, 'ordered', 'PKR', '0.00', '0.00', '0.00', '0.00', '0.00', '2026-06-09 01:39:43'),
('10', 'cart_88d9b78a2edd1a530c4a0e0a572ddeef3cda735d25907ca8', '8', NULL, 'ordered', 'PKR', '0.00', '0.00', '0.00', '0.00', '0.00', '2026-06-09 02:12:16'),
('11', 'cart_07de13861d10b31bd593401743c41e686579d4f66fce276d', '8', NULL, 'ordered', 'PKR', '0.00', '0.00', '0.00', '0.00', '0.00', '2026-06-10 19:11:59'),
('12', 'cart_5a6d5c893adb5bd896b8ca39e9bf3b61df5f159e4c75448d', '8', NULL, 'ordered', 'PKR', '9996.00', '0.00', '499.80', '0.00', '10495.80', '2026-06-15 01:17:13'),
('13', 'cart_83e3ba8a8f377578581e3391aef1ce220b40ff2459afb42f', '8', NULL, 'ordered', 'PKR', '3499.00', '0.00', '0.00', '0.00', '3499.00', '2026-06-15 05:14:10'),
('14', 'cart_ef974bb6066b9f5b0ae9136f1d87ed822d6ef5a9a3b858ab', '8', NULL, 'ordered', 'PKR', '2499.00', '0.00', '399.84', '0.00', '2898.84', '2026-06-18 05:24:44'),
('15', 'cart_7cd45e2b0aa5e09263595b91622aacede7446d9c8a83afff', '8', NULL, 'ordered', 'PKR', '2499.00', '0.00', '399.84', '0.00', '2898.84', '2026-06-18 06:24:38'),
('16', 'cart_125f4cb9825894c8a3c44233a037b44cb8e1d0d7e61da3f9', '8', NULL, 'ordered', 'PKR', '4998.00', '0.00', '799.68', '0.00', '5797.68', '2026-06-21 22:46:31'),
('17', 'cart_285c59ef82665546d7f50b41aa5981fd166f59b6a75a1844', '10', NULL, 'ordered', 'PKR', '2499.00', '0.00', '399.84', '100.00', '2998.84', '2026-06-21 23:18:56'),
('18', 'cart_606b19e0ca92167ffc6fd50a9f0dd42083f752bb34118dfd', '10', NULL, 'ordered', 'PKR', '11464.00', '0.00', '499.80', '0.00', '11963.80', '2026-06-22 05:45:15'),
('19', 'cart_438b04b81449d46a1dd09b724d051d0c53966c3568051089', '10', NULL, 'ordered', 'PKR', '2499.00', '0.00', '399.84', '0.00', '2898.84', '2026-06-22 22:47:22'),
('20', 'cart_ab903930a52424b580e4cf189c8a8a4e54a159776433861d', '8', NULL, 'ordered', 'PKR', '2499.00', '0.00', '124.95', '0.00', '2623.95', '2026-06-22 23:13:12'),
('21', 'cart_72d18b3f8677df51c5ff18f127c162e0d42e69de09ef9a28', '11', NULL, 'ordered', 'PKR', '2499.00', '0.00', '124.95', '0.00', '2623.95', '2026-06-23 07:28:29'),
('22', 'pickup-test-1779706539040', NULL, NULL, 'active', 'PKR', '0.00', '0.00', '0.00', '0.00', '0.00', '2026-06-24 00:55:39'),
('23', 'cart_2bd1588885a06e70f2d3f3f299ce7ee738fd411404e71739', '8', NULL, 'ordered', 'PKR', '0.00', '0.00', '0.00', '0.00', '0.00', '2026-06-24 02:25:25'),
('24', 'cart_b52b629f848c4a2204df4c1605ab3ad538c18440f6efaaf3', '8', NULL, 'ordered', 'PKR', '2499.00', '0.00', '124.95', '0.00', '2623.95', '2026-06-24 02:26:12'),
('25', 'cart_b1eaa68b8a510676c99d9916be634c60f10591125a34373a', '8', NULL, 'ordered', 'PKR', '0.00', '0.00', '0.00', '0.00', '0.00', '2026-06-24 04:53:18'),
('26', 'cart_6e40e03bec29f25260646a926ca09785f812aeb43ec32c52', '11', NULL, 'ordered', 'PKR', '1000.00', '0.00', '0.00', '0.00', '1000.00', '2026-06-24 06:23:23'),
('27', 'cart_3028f3f0ab7cd0e284330fbc333c781403f1c703a17bca08', '8', NULL, 'ordered', 'PKR', '1500.00', '0.00', '240.00', '0.00', '1740.00', '2026-06-24 06:34:38'),
('28', 'cart_5bf49be907eecc90765b297b079f0ce29aea55eaa3cefc56', '11', NULL, 'ordered', 'PKR', '1000.00', '0.00', '0.00', '0.00', '1000.00', '2026-06-28 11:18:31'),
('29', 'cart_f5c964729579cff80ebefaebb4dc20e749c907e10d0403eb', '8', NULL, 'ordered', 'PKR', '49980.00', '45980.00', '640.00', '0.00', '4640.00', '2026-07-11 07:10:52'),
('30', 'cart_c6e330556390142d91c398e78e89c80485231b8548ec044e', '8', NULL, 'ordered', 'PKR', '49980.00', '45980.00', '640.00', '0.00', '4640.00', '2026-07-20 03:43:55'),
('31', 'cart_ce2afb7e2f83e8cdc0ecf11f5bd6896a7aabb6a9b0dada87', NULL, NULL, 'active', 'PKR', '0.00', '0.00', '0.00', '0.00', '0.00', '2026-07-22 04:29:44'),
('32', 'cart_2a512ac5e7129dce2511cf15866c7a0bc4d1018d19c95e20', NULL, NULL, 'active', 'PKR', '0.00', '0.00', '0.00', '0.00', '0.00', '2026-07-23 00:28:57'),
('33', 'cart_8efdf083c94c0161af18b1d808b6119b814bd689e67cdea6', NULL, NULL, 'active', 'PKR', '4000.00', '0.00', '0.00', '0.00', '4000.00', '2026-07-23 23:57:12'),
('34', 'cart_b2016beca635d6e45ae1e16bdc76542a817a0c50a1644d58', NULL, NULL, 'active', 'PKR', '3000.00', '34485.00', '480.00', '0.00', '-31005.00', '2026-07-25 23:43:18'),
('35', 'cart_d1074d2332a3f544007f9e4e0aa6e9535a643ea8969f6570', NULL, NULL, 'active', 'PKR', '4000.00', '0.00', '0.00', '0.00', '4000.00', '2026-08-09 17:51:11'),
('36', 'codex-mobile-smoke-47545742b9bf4763aca1a9980f6dcb73', NULL, NULL, 'active', 'PKR', '0.00', '0.00', '0.00', '100.00', '100.00', '2026-08-21 16:35:11'),
('37', 'cart_e3097436de0adb468e8949bac689fc3d1e11a7407167933e', NULL, NULL, 'active', 'PKR', '0.00', '0.00', '0.00', '0.00', '0.00', '2026-08-21 18:10:34');

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

CREATE TABLE `categories` (
  `id` int NOT NULL AUTO_INCREMENT,
  `cat_code` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL,
  `cat_name` varchar(150) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL,
  `cat_desc` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `image_media_id` int DEFAULT NULL,
  `parent_id` int DEFAULT NULL,
  `created_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
  `meta_title` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `meta_description` varchar(500) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `focus_keyword` varchar(150) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `seo_slug` varchar(250) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `site_text_enabled` tinyint(1) NOT NULL DEFAULT '0',
  `site_text_html` longtext COLLATE utf8mb4_unicode_ci,
  `site_text_bg_color` varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '#ffffff',
  `site_text_text_color` varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '#0f172a',
  `site_text_font_size` int NOT NULL DEFAULT '18',
  `site_text_font_style` varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'normal',
  `site_text_button_label` varchar(160) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `site_text_button_url` varchar(500) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `site_text_button_bg_color` varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '#2563eb',
  `site_text_button_text_color` varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '#ffffff',
  PRIMARY KEY (`id`),
  UNIQUE KEY `cat_code` (`cat_code`),
  KEY `fk_categories_media` (`image_media_id`),
  KEY `fk_categories_parent` (`parent_id`),
  CONSTRAINT `fk_categories_media` FOREIGN KEY (`image_media_id`) REFERENCES `media` (`id`) ON DELETE SET NULL,
  CONSTRAINT `fk_categories_parent` FOREIGN KEY (`parent_id`) REFERENCES `categories` (`id`) ON DELETE SET NULL
) ENGINE=InnoDB AUTO_INCREMENT=67 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

INSERT INTO `categories` (`id`, `cat_code`, `cat_name`, `cat_desc`, `image_media_id`, `parent_id`, `meta_title`, `meta_description`, `focus_keyword`, `seo_slug`, `site_text_enabled`, `site_text_html`, `site_text_bg_color`, `site_text_text_color`, `site_text_font_size`, `site_text_font_style`, `site_text_button_label`, `site_text_button_url`, `site_text_button_bg_color`, `site_text_button_text_color`) VALUES
('1', 'PARENT', 'Shop', '', '3', NULL, NULL, NULL, NULL, NULL, '0', NULL, '#ffffff', '#0f172a', '18', 'normal', NULL, NULL, '#2563eb', '#ffffff'),
('7', 'ELECTRONICS', 'Electronics', '', '10', '10', NULL, NULL, NULL, NULL, '0', NULL, '#ffffff', '#0f172a', '18', 'normal', NULL, NULL, '#2563eb', '#ffffff'),
('8', 'FROZEN12', 'Frozen Items', '', '9', '1', NULL, NULL, NULL, NULL, '0', NULL, '#ffffff', '#0f172a', '18', 'normal', NULL, NULL, '#2563eb', '#ffffff'),
('10', 'FROZENKABAB', 'Frozen Kabab', 'sda', NULL, '8', NULL, NULL, NULL, NULL, '0', NULL, '#ffffff', '#0f172a', '18', 'normal', NULL, NULL, '#2563eb', '#ffffff'),
('11', 'CART', 'Cart Category', '', '4', '1', NULL, NULL, NULL, NULL, '0', NULL, '#ffffff', '#0f172a', '18', 'normal', NULL, NULL, '#2563eb', '#ffffff'),
('12', 'CAT3', 'Cat 4', '', '6', '1', NULL, NULL, NULL, NULL, '0', NULL, '#ffffff', '#0f172a', '18', 'normal', NULL, NULL, '#2563eb', '#ffffff'),
('13', 'FOOD', 'Food', 'lsakjdflkjsa;fkja\nlsakjdflkjsa;fkja\n\nlsakjdflkjsa;fkjalsakjdflkjsa;fkjalsakjdflkjsa;fkja\nlsakjdflkjsa;fkjalsakjdflkjsa;fkja\nlsakjdflkjsa;fkjalsakjdflkjsa;fkja\nlsakjdflkjsa;fkjalsakjdflkjsa;fkjalsakjdflkjsa;fkja', '316', NULL, NULL, NULL, NULL, NULL, '0', NULL, '#ffffff', '#0f172a', '18', 'normal', NULL, NULL, '#2563eb', '#ffffff'),
('14', 'PIZZAS', 'Pizzas', NULL, NULL, '13', NULL, NULL, NULL, NULL, '0', NULL, '#ffffff', '#0f172a', '18', 'normal', NULL, NULL, '#2563eb', '#ffffff'),
('15', 'BURGER', 'Burger', NULL, NULL, '13', NULL, NULL, NULL, NULL, '0', NULL, '#ffffff', '#0f172a', '18', 'normal', NULL, NULL, '#2563eb', '#ffffff'),
('16', 'KIDS_MEAL', 'Kids Meal', NULL, NULL, '13', NULL, NULL, NULL, NULL, '0', NULL, '#ffffff', '#0f172a', '18', 'normal', NULL, NULL, '#2563eb', '#ffffff'),
('17', 'FAMILY_FUN', 'Family Fun', NULL, NULL, '13', NULL, NULL, NULL, NULL, '0', NULL, '#ffffff', '#0f172a', '18', 'normal', NULL, NULL, '#2563eb', '#ffffff'),
('18', 'REFRESHMENTS', 'Refreshments', NULL, NULL, NULL, NULL, NULL, NULL, NULL, '0', NULL, '#ffffff', '#0f172a', '18', 'normal', NULL, NULL, '#2563eb', '#ffffff'),
('19', 'GOOL_GAPPAY', 'Gool Gappay', NULL, NULL, '18', NULL, NULL, NULL, NULL, '0', NULL, '#ffffff', '#0f172a', '18', 'normal', NULL, NULL, '#2563eb', '#ffffff'),
('20', 'DAHI_BALLAY', 'Dahi Ballay', NULL, NULL, '18', NULL, NULL, NULL, NULL, '0', NULL, '#ffffff', '#0f172a', '18', 'normal', NULL, NULL, '#2563eb', '#ffffff'),
('21', 'COMBOS', 'Combos', NULL, NULL, '13', NULL, NULL, NULL, NULL, '0', NULL, '#ffffff', '#0f172a', '18', 'normal', NULL, NULL, '#2563eb', '#ffffff'),
('22', 'ROLLS', 'Rolls', NULL, NULL, '13', NULL, NULL, NULL, NULL, '0', NULL, '#ffffff', '#0f172a', '18', 'normal', NULL, NULL, '#2563eb', '#ffffff'),
('23', 'FRIED_CHICKEN', 'Fried Chicken', NULL, NULL, '13', NULL, NULL, NULL, NULL, '0', NULL, '#ffffff', '#0f172a', '18', 'normal', NULL, NULL, '#2563eb', '#ffffff'),
('24', 'KULFI', 'Kulfi', NULL, NULL, '18', NULL, NULL, NULL, NULL, '0', NULL, '#ffffff', '#0f172a', '18', 'normal', NULL, NULL, '#2563eb', '#ffffff'),
('25', 'FRESH_SALAD', 'Fresh Salad', '', '317', NULL, NULL, NULL, NULL, NULL, '0', NULL, '#ffffff', '#0f172a', '18', 'normal', NULL, NULL, '#2563eb', '#ffffff'),
('26', 'MART', 'Mart', NULL, NULL, NULL, NULL, NULL, NULL, NULL, '0', NULL, '#ffffff', '#0f172a', '18', 'normal', NULL, NULL, '#2563eb', '#ffffff'),
('27', 'ACCESSORIES', 'Accessories', '', '296', '14', NULL, NULL, NULL, NULL, '0', NULL, '#ffffff', '#0f172a', '18', 'normal', NULL, NULL, '#2563eb', '#ffffff'),
('28', 'CAPS', 'Caps', NULL, NULL, '27', NULL, NULL, NULL, NULL, '0', NULL, '#ffffff', '#0f172a', '18', 'normal', NULL, NULL, '#2563eb', '#ffffff'),
('29', 'BELTS', 'Belts', NULL, NULL, '27', NULL, NULL, NULL, NULL, '0', NULL, '#ffffff', '#0f172a', '18', 'normal', NULL, NULL, '#2563eb', '#ffffff'),
('30', 'SCARVES', 'Scarves', NULL, NULL, '27', NULL, NULL, NULL, NULL, '0', NULL, '#ffffff', '#0f172a', '18', 'normal', NULL, NULL, '#2563eb', '#ffffff'),
('31', 'SOCKS', 'Socks', NULL, NULL, '27', NULL, NULL, NULL, NULL, '0', NULL, '#ffffff', '#0f172a', '18', 'normal', NULL, NULL, '#2563eb', '#ffffff'),
('32', 'MEN', 'Men', '', '290', NULL, NULL, NULL, NULL, NULL, '0', NULL, '#ffffff', '#0f172a', '18', 'normal', NULL, NULL, '#2563eb', '#ffffff'),
('33', 'T_SHIRTS', 'T-Shirts', NULL, NULL, '32', NULL, NULL, NULL, NULL, '0', NULL, '#ffffff', '#0f172a', '18', 'normal', NULL, NULL, '#2563eb', '#ffffff'),
('34', 'UNISEX', 'Unisex', NULL, NULL, NULL, NULL, NULL, NULL, NULL, '0', NULL, '#ffffff', '#0f172a', '18', 'normal', NULL, NULL, '#2563eb', '#ffffff'),
('35', 'HOODIES', 'Hoodies', NULL, NULL, '34', NULL, NULL, NULL, NULL, '0', NULL, '#ffffff', '#0f172a', '18', 'normal', NULL, NULL, '#2563eb', '#ffffff'),
('36', 'BOTTOMS', 'Bottoms', NULL, NULL, '32', NULL, NULL, NULL, NULL, '0', NULL, '#ffffff', '#0f172a', '18', 'normal', NULL, NULL, '#2563eb', '#ffffff'),
('37', 'JEANS', 'Jeans', NULL, NULL, '36', NULL, NULL, NULL, NULL, '0', NULL, '#ffffff', '#0f172a', '18', 'normal', NULL, NULL, '#2563eb', '#ffffff'),
('38', 'WOMEN', 'Women', NULL, NULL, NULL, NULL, NULL, NULL, NULL, '0', NULL, '#ffffff', '#0f172a', '18', 'normal', NULL, NULL, '#2563eb', '#ffffff'),
('39', 'ABAYAS', 'Abayas', '', '11', '38', NULL, NULL, NULL, NULL, '0', NULL, '#ffffff', '#0f172a', '18', 'normal', NULL, NULL, '#2563eb', '#ffffff'),
('40', 'POLOS', 'Polos', '', '318', '32', NULL, NULL, NULL, NULL, '0', NULL, '#ffffff', '#0f172a', '18', 'normal', NULL, NULL, '#2563eb', '#ffffff');

-- --------------------------------------------------------
-- Table structure for `checkout_idempotency_keys`

CREATE TABLE `checkout_idempotency_keys` (
  `id` bigint NOT NULL AUTO_INCREMENT,
  `idempotency_key` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL,
  `cart_id` bigint NOT NULL,
  `order_id` bigint DEFAULT NULL,
  `status` varchar(30) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'processing',
  `response_json` json DEFAULT NULL,
  `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `updated_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`),
  UNIQUE KEY `uq_checkout_idempotency_key` (`idempotency_key`),
  KEY `idx_checkout_idempotency_cart` (`cart_id`),
  KEY `idx_checkout_idempotency_status` (`status`,`created_at`),
  KEY `fk_checkout_idempotency_order` (`order_id`),
  CONSTRAINT `fk_checkout_idempotency_cart` FOREIGN KEY (`cart_id`) REFERENCES `carts` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
  CONSTRAINT `fk_checkout_idempotency_order` FOREIGN KEY (`order_id`) REFERENCES `orders` (`id`) ON DELETE SET NULL ON UPDATE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=25 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;


-- Runtime data for `checkout_idempotency_keys` was intentionally omitted from the cPanel import; the table schema is kept.
CREATE TABLE `coupon_targets` (
  `id` bigint NOT NULL AUTO_INCREMENT,
  `coupon_id` int NOT NULL,
  `target_type` enum('product','category','brand','department') COLLATE utf8mb4_unicode_ci NOT NULL,
  `target_id` int NOT NULL,
  `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`),
  UNIQUE KEY `uq_coupon_target` (`coupon_id`,`target_type`,`target_id`),
  KEY `idx_coupon_targets_lookup` (`target_type`,`target_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- No data for `coupon_targets`

-- --------------------------------------------------------
-- Table structure for `coupon_usage`

CREATE TABLE `coupon_usage` (
  `id` bigint NOT NULL AUTO_INCREMENT,
  `coupon_id` int NOT NULL,
  `customer_id` int DEFAULT NULL,
  `order_id` int NOT NULL,
  `coupon_code` varchar(80) COLLATE utf8mb4_unicode_ci NOT NULL,
  `discount_amount` decimal(18,2) NOT NULL DEFAULT '0.00',
  `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`),
  UNIQUE KEY `uq_coupon_usage_order` (`coupon_id`,`order_id`),
  KEY `idx_coupon_usage_customer` (`coupon_id`,`customer_id`),
  KEY `idx_coupon_usage_code` (`coupon_code`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- No data for `coupon_usage`

-- --------------------------------------------------------
-- Table structure for `coupons`

CREATE TABLE `coupons` (
  `id` int NOT NULL AUTO_INCREMENT,
  `code` varchar(80) COLLATE utf8mb4_unicode_ci NOT NULL,
  `name` varchar(160) COLLATE utf8mb4_unicode_ci NOT NULL,
  `discount_type` enum('percent','amount') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'percent',
  `discount_value` decimal(18,2) NOT NULL DEFAULT '0.00',
  `starts_at` datetime DEFAULT NULL,
  `ends_at` datetime DEFAULT NULL,
  `usage_limit` int DEFAULT NULL,
  `per_customer_limit` int DEFAULT NULL,
  `used_count` int NOT NULL DEFAULT '0',
  `min_order_amount` decimal(18,2) NOT NULL DEFAULT '0.00',
  `is_active` tinyint(1) NOT NULL DEFAULT '1',
  `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `updated_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`),
  UNIQUE KEY `uq_coupons_code` (`code`),
  KEY `idx_coupons_active_dates` (`is_active`,`starts_at`,`ends_at`)
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

INSERT INTO `coupons` (`id`, `code`, `name`, `discount_type`, `discount_value`, `starts_at`, `ends_at`, `usage_limit`, `per_customer_limit`, `used_count`, `min_order_amount`, `is_active`) VALUES
('1', '123', 'First Order', 'amount', '120.00', NULL, NULL, '2', '2', '0', '5000.00', '1');

-- --------------------------------------------------------
-- Table structure for `courier_branch_map`

CREATE TABLE `courier_branch_map` (
  `id` bigint NOT NULL AUTO_INCREMENT,
  `courier_id` bigint NOT NULL,
  `branch_id` int NOT NULL,
  `is_active` tinyint(1) NOT NULL DEFAULT '1',
  `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `updated_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`),
  UNIQUE KEY `uq_courier_branch` (`courier_id`,`branch_id`),
  KEY `idx_courier_branch_active` (`branch_id`,`is_active`),
  CONSTRAINT `fk_cbm_branch` FOREIGN KEY (`branch_id`) REFERENCES `branches` (`id`) ON DELETE CASCADE,
  CONSTRAINT `fk_cbm_courier` FOREIGN KEY (`courier_id`) REFERENCES `courier_companies` (`id`) ON DELETE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

INSERT INTO `courier_branch_map` (`id`, `courier_id`, `branch_id`, `is_active`) VALUES
('1', '1', '2', '1'),
('3', '2', '1', '1');

-- --------------------------------------------------------
-- Table structure for `courier_companies`

CREATE TABLE `courier_companies` (
  `id` bigint NOT NULL AUTO_INCREMENT,
  `courier_code` varchar(80) NOT NULL,
  `courier_name` varchar(180) NOT NULL,
  `contact_phone` varchar(80) DEFAULT NULL,
  `contact_email` varchar(160) DEFAULT NULL,
  `tracking_url_template` varchar(500) DEFAULT NULL,
  `packaging_slip_rules_json` json DEFAULT NULL,
  `is_active` tinyint(1) NOT NULL DEFAULT '1',
  `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `updated_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`),
  UNIQUE KEY `uq_courier_code` (`courier_code`),
  KEY `idx_courier_active_name` (`is_active`,`courier_name`)
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

INSERT INTO `courier_companies` (`id`, `courier_code`, `courier_name`, `contact_phone`, `contact_email`, `tracking_url_template`, `packaging_slip_rules_json`, `is_active`) VALUES
('1', '1324', 'TCS', '1324', '846muhammadyousaf@gmail.com', '', '{}', '1'),
('2', '6878698', 'Leopard', '89908798', '846muhammadyousaf@gmail.com', '', '{}', '1');

-- --------------------------------------------------------
-- Table structure for `customer_addresses`

CREATE TABLE `customer_addresses` (
  `id` bigint NOT NULL AUTO_INCREMENT,
  `customer_id` bigint DEFAULT NULL,
  `address_type` varchar(30) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'shipping',
  `full_name` varchar(200) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `phone` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `email` varchar(150) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `country` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'Pakistan',
  `province` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `city` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `area` varchar(150) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `address_line_1` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `address_line_2` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `postal_code` varchar(30) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `landmark` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `is_default` tinyint(1) NOT NULL DEFAULT '0',
  `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `updated_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`),
  KEY `idx_customer_addresses_customer` (`customer_id`),
  KEY `idx_customer_addresses_location` (`country`,`province`,`city`,`area`),
  KEY `idx_customer_addresses_default` (`customer_id`,`is_default`),
  KEY `idx_customer_addresses_type_default` (`customer_id`,`address_type`,`is_default`)
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

INSERT INTO `customer_addresses` (`id`, `customer_id`, `address_type`, `full_name`, `phone`, `email`, `country`, `province`, `city`, `area`, `address_line_1`, `address_line_2`, `postal_code`, `landmark`, `is_default`) VALUES
('1', '8', 'shipping', 'dafm', 'adf', 'asdf@dsf.com', 'Pakistan', 'asf', 'adf', 'adf', 'sadf', 'sdf', NULL, NULL, '1');

-- --------------------------------------------------------
-- Table structure for `customer_credit_invoices`

CREATE TABLE `customer_credit_invoices` (
  `id` bigint NOT NULL AUTO_INCREMENT,
  `invoice_no` varchar(60) NOT NULL,
  `customer_id` bigint NOT NULL,
  `source_type` varchar(40) NOT NULL DEFAULT 'pending_balance',
  `amount` decimal(18,4) NOT NULL DEFAULT '0.0000',
  `paid_amount` decimal(18,4) NOT NULL DEFAULT '0.0000',
  `remaining_amount` decimal(18,4) NOT NULL DEFAULT '0.0000',
  `status` varchar(30) NOT NULL DEFAULT 'pending',
  `notes` text,
  `created_by_user_id` bigint DEFAULT NULL,
  `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `updated_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`),
  UNIQUE KEY `uq_customer_credit_invoice_no` (`invoice_no`),
  KEY `idx_customer_credit_invoices_customer` (`customer_id`),
  KEY `idx_customer_credit_invoices_status` (`status`)
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

INSERT INTO `customer_credit_invoices` (`id`, `invoice_no`, `customer_id`, `source_type`, `amount`, `paid_amount`, `remaining_amount`, `status`, `notes`, `created_by_user_id`) VALUES
('1', 'CR20260626020407J9QLN', '12', 'custom', '2500.0000', '1500.0000', '1000.0000', 'partial', 'ORD 22432', '1');

-- --------------------------------------------------------
-- Table structure for `customer_credit_ledger`

CREATE TABLE `customer_credit_ledger` (
  `id` bigint NOT NULL AUTO_INCREMENT,
  `customer_id` bigint NOT NULL,
  `order_id` bigint DEFAULT NULL,
  `credit_invoice_id` bigint DEFAULT NULL,
  `entry_type` varchar(40) NOT NULL,
  `amount` decimal(18,4) NOT NULL DEFAULT '0.0000',
  `paid_amount` decimal(18,4) NOT NULL DEFAULT '0.0000',
  `remaining_amount` decimal(18,4) NOT NULL DEFAULT '0.0000',
  `description` varchar(500) DEFAULT NULL,
  `status` varchar(30) NOT NULL DEFAULT 'open',
  `created_by_user_id` bigint DEFAULT NULL,
  `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`),
  KEY `idx_customer_credit_ledger_customer` (`customer_id`),
  KEY `idx_customer_credit_ledger_order` (`order_id`),
  KEY `idx_customer_credit_ledger_invoice` (`credit_invoice_id`),
  KEY `idx_customer_credit_ledger_type` (`entry_type`)
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

INSERT INTO `customer_credit_ledger` (`id`, `customer_id`, `order_id`, `credit_invoice_id`, `entry_type`, `amount`, `paid_amount`, `remaining_amount`, `description`, `status`, `created_by_user_id`) VALUES
('1', '12', NULL, '1', 'credit_invoice', '2500.0000', '1500.0000', '1000.0000', 'ORD 22432', 'partial', '1'),
('2', '12', NULL, '1', 'payment', '-1500.0000', '1500.0000', '0.0000', 'Payment against CR20260626020407J9QLN', 'closed', '1');

-- --------------------------------------------------------
-- Table structure for `customer_email_login_tokens`

CREATE TABLE `customer_email_login_tokens` (
  `id` bigint NOT NULL AUTO_INCREMENT,
  `customer_id` bigint NOT NULL,
  `token_hash` varchar(128) NOT NULL,
  `purpose` varchar(80) NOT NULL DEFAULT 'email_login',
  `redirect_path` varchar(500) DEFAULT NULL,
  `expires_at` datetime NOT NULL,
  `used_at` datetime DEFAULT NULL,
  `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`),
  UNIQUE KEY `token_hash` (`token_hash`),
  KEY `idx_customer_email_login_customer` (`customer_id`,`used_at`,`expires_at`)
) ENGINE=InnoDB AUTO_INCREMENT=19 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

INSERT INTO `customer_email_login_tokens` (`id`, `customer_id`, `token_hash`, `purpose`, `redirect_path`, `expires_at`, `used_at`) VALUES
('1', '8', '6bc246589b586c596dd3be6ad4c9aee49003d20ffca3dc81b64c8bb4d02093ad', 'email_login', '/order-success/36?token=d03b8f9e0f3451b1208a65b2809d1a9b2e0c07a0d16f9249c7289b537265bef1', '2026-07-13 20:43:56', NULL),
('2', '8', 'f501327be55d7c2d3de001c6815fd37df5e5c8b850092865891010e5ccf08ade', 'email_login', '/order-success/36?token=d03b8f9e0f3451b1208a65b2809d1a9b2e0c07a0d16f9249c7289b537265bef1', '2026-07-13 20:44:06', NULL),
('3', '8', '951c954ada3aed3e75fdee29e25df907c2cc9104c9ad6d081b194e9c184a8fec', 'email_login', '/order-success/36?token=d03b8f9e0f3451b1208a65b2809d1a9b2e0c07a0d16f9249c7289b537265bef1', '2026-07-13 20:50:14', NULL),
('4', '8', 'fdfcd9d1f23b946a996a04477430116d242210e2ca484ef25835f717c8e0c769', 'email_login', '/order-success/36?token=d03b8f9e0f3451b1208a65b2809d1a9b2e0c07a0d16f9249c7289b537265bef1', '2026-07-13 20:50:14', NULL),
('5', '8', '0379d40ceb599dc5ed37e5dbd7aa0ed134256e0870068550201d43368760b60b', 'email_login', '/order-success/35?token=e28389e378f3de919c55bc5f790787e7cff3bb4086771ae06d5dbc91a7b00f87', '2026-07-13 20:50:20', NULL),
('6', '8', '9e2f74524bc2df324f27701900dabf02c202b2af5829a3eefa66b46f1e36cd6c', 'email_login', '/order-success/35?token=e28389e378f3de919c55bc5f790787e7cff3bb4086771ae06d5dbc91a7b00f87', '2026-07-13 20:50:20', NULL),
('7', '11', 'd4560800e2662f0495dded5047f9c0bbc6d2460a71f64e8796593c2c39dc099d', 'email_login', '/order-success/33?token=7886748bc750825adbffe7e0e080ac10159019ad8ff58960c98a720a4efd92df', '2026-07-13 20:50:21', NULL),
('8', '11', 'bdeac71e7e24cc84b675657fbad9b402bdd58e9f1973d58222742d8cad5352bc', 'email_login', '/order-success/33?token=7886748bc750825adbffe7e0e080ac10159019ad8ff58960c98a720a4efd92df', '2026-07-13 20:50:21', NULL),
('9', '11', '5a76023729a1bdadf17a93ac4ee7681bedd348915e9f821b59a970fbe66b604a', 'email_login', '/order-success/30?token=ff85981b8d79397115f50eb92e66647862d8f6de068770f92dfdb53348f52a92', '2026-07-13 20:50:22', NULL),
('10', '11', '5114a44f147925869e4f4546015773c343a5240c16e28791301d4b5dec8a4e78', 'email_login', '/order-success/30?token=ff85981b8d79397115f50eb92e66647862d8f6de068770f92dfdb53348f52a92', '2026-07-13 20:50:22', NULL),
('11', '8', 'f84d8b89e20c1ff5cd6980056b8988c68352c57df7e0102bb2d0abb3f74e85f9', 'email_login', '/order-success/29?token=a1132b0ce6201e90f37b19eb37d60f56f26db4c1a6d7e026aaeca619874e40d8', '2026-07-13 20:50:23', NULL),
('12', '8', '2672363a3de3a3ac927d97a7b8ad0959d950f6bc5b51f088a22c78c7e496dddf', 'email_login', '/order-success/29?token=a1132b0ce6201e90f37b19eb37d60f56f26db4c1a6d7e026aaeca619874e40d8', '2026-07-13 20:50:23', NULL),
('13', '8', 'f5bd27932a2fd1a20af7527ed9ac77842cf612788870b58dd5b14586ac359c4e', 'email_login', '/order-success/28?token=01ad621123537b4bffd80f85ed62ace48a5d2ad4def13c284bf1a875136d7028', '2026-07-13 20:50:23', NULL),
('14', '8', 'f913c724b7ed21c7fec980116543b9b509bc3d3d57eded3ab892b3146480c37c', 'email_login', '/order-success/28?token=01ad621123537b4bffd80f85ed62ace48a5d2ad4def13c284bf1a875136d7028', '2026-07-13 20:50:23', NULL),
('15', '8', '3b85c815d355ea9c1f16c3ead26661bbf4d0ddc0049bf7b51d2f5418e67172f3', 'email_login', '/order-success/21?token=cd6b9a937dffd3d02528503509f430e899ec9fcc848741f0947c6995738d3502', '2026-07-13 20:50:24', NULL),
('16', '8', 'b33d51a2d47d113242c589123f14c7d56a865c225e3e2669afcdaaa02f10bac3', 'email_login', '/order-success/21?token=cd6b9a937dffd3d02528503509f430e899ec9fcc848741f0947c6995738d3502', '2026-07-13 20:50:24', NULL),
('17', '10', '6550519ac83d2b052d6d19a054f2065541235fbf148290b053b24c9639bda3aa', 'email_login', '/order-success/19?token=dffe6a705447c4f3a5d4eb5a827a2acda72533c202e1477b2a4754823c2efb56', '2026-07-14 13:50:16', NULL),
('18', '10', '1098187eba293d04a7cc94957be3889d7b4530cf0b8ec4d6f9fcaed97ae2f7d5', 'email_login', '/order-success/19?token=dffe6a705447c4f3a5d4eb5a827a2acda72533c202e1477b2a4754823c2efb56', '2026-07-14 13:50:16', NULL);

-- --------------------------------------------------------
-- Table structure for `customer_password_reset_tokens`

CREATE TABLE `customer_password_reset_tokens` (
  `id` bigint NOT NULL AUTO_INCREMENT,
  `customer_id` int unsigned NOT NULL,
  `token_hash` varchar(128) NOT NULL,
  `expires_at` datetime NOT NULL,
  `used_at` datetime DEFAULT NULL,
  `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`),
  KEY `idx_cprt_customer` (`customer_id`),
  KEY `idx_cprt_token` (`token_hash`),
  KEY `idx_cprt_expires` (`expires_at`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- No data for `customer_password_reset_tokens`

-- --------------------------------------------------------
-- Table structure for `customers`

CREATE TABLE `customers` (
  `id` bigint NOT NULL AUTO_INCREMENT,
  `customer_code` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `first_name` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `last_name` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `display_name` varchar(200) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `business_name` varchar(200) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `email` varchar(150) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `phone` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `whatsapp_no` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `password_hash` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `customer_type` varchar(30) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'guest',
  `status` enum('pending','active','suspended','blocked','rejected') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'active',
  `is_verified` tinyint(1) NOT NULL DEFAULT '0',
  `accepts_marketing` tinyint(1) NOT NULL DEFAULT '0',
  `last_login_at` datetime DEFAULT NULL,
  `notes` text COLLATE utf8mb4_unicode_ci,
  `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `updated_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  `profile_media_id` int DEFAULT NULL,
  `credit_limit` decimal(18,2) DEFAULT NULL,
  `checkout_hold_enabled` tinyint(1) NOT NULL DEFAULT '0',
  `checkout_hold_reason` varchar(500) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `checkout_hold_updated_at` datetime DEFAULT NULL,
  PRIMARY KEY (`id`),
  UNIQUE KEY `uq_customers_code` (`customer_code`),
  KEY `idx_customers_email` (`email`),
  KEY `idx_customers_phone` (`phone`),
  KEY `idx_customers_status` (`status`),
  KEY `idx_customers_created` (`created_at`)
) ENGINE=InnoDB AUTO_INCREMENT=14 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

INSERT INTO `customers` (`id`, `customer_code`, `first_name`, `last_name`, `display_name`, `business_name`, `email`, `phone`, `whatsapp_no`, `password_hash`, `customer_type`, `status`, `is_verified`, `accepts_marketing`, `last_login_at`, `notes`, `profile_media_id`, `credit_limit`, `checkout_hold_enabled`, `checkout_hold_reason`, `checkout_hold_updated_at`) VALUES
('2', NULL, 'ADFA', '', 'ADFA', NULL, 'ASDFA@SDAD', 'ADFFAS', 'ASDASD', NULL, 'guest', 'active', '0', '0', NULL, NULL, NULL, NULL, '0', NULL, NULL),
('3', NULL, 'DSFA', '', 'DSFA', NULL, 'SFDA@DSF.COM', 'SADF', 'DSAFA', NULL, 'guest', 'active', '0', '0', NULL, NULL, NULL, NULL, '0', NULL, NULL),
('5', NULL, 'DSAF', '', 'DSAF', NULL, 'ASDF', 'ASDF', 'ASDF', NULL, 'guest', 'active', '0', '0', NULL, NULL, NULL, NULL, '0', NULL, NULL),
('6', NULL, 'asd', '', 'asd', NULL, 'a@a.com', 'ggff', NULL, NULL, 'guest', 'active', '0', '0', NULL, NULL, NULL, NULL, '0', NULL, NULL),
('7', NULL, 'dsaf', '', 'dsaf', NULL, 'adf', 'afd', NULL, NULL, 'guest', 'active', '0', '0', NULL, NULL, NULL, NULL, '0', NULL, NULL),
('8', 'CUST17784111635861252', 'Muhammad', 'Yousaf', 'Muhammad Yousaf', NULL, 'yousafapple008@gmail.com', '03090231298', '03090231298', '$2b$10$qYBKQENj8/dLvAvwsb5twO8WLvf/WjihEMR3dXntMG4ShNQ6Kthvq', 'registered', 'active', '0', '0', '2026-07-22 14:35:11', NULL, NULL, NULL, '1', NULL, '2026-07-10 18:19:50'),
('9', NULL, 'erqw', '', 'erqw', NULL, 'qwer', 'qwer', NULL, NULL, 'guest', 'active', '0', '0', NULL, NULL, NULL, NULL, '0', NULL, NULL),
('10', 'CUST17795309863753833', 'Yousaf', 'Muhammad', 'Yousaf Muhammad', NULL, 'admin@12313.com', '03159247909', '03159247909', '$2b$10$I9JfT5ybkGJDRJouT7LhL.rDbsT5SyjPsgb9lk5gETKuuh5bf4VHy', 'registered', 'active', '0', '0', '2026-05-23 00:09:46', NULL, NULL, NULL, '0', NULL, NULL),
('11', 'CUST17797027763984200', 'Muhammad', 'Ali', 'Muhammad Ali', NULL, 'admin@hggj.com', '03138544077', NULL, '$2b$10$wXI1YOmXRSDNFgxEXS23SOBMeLKXdAGBEs6ilZjL4.ByVgDVG6s7u', 'registered', 'active', '0', '0', '2026-06-14 00:50:33', NULL, NULL, NULL, '0', NULL, NULL),
('12', 'CUST17814345695334649', 'Muhammad', 'owais', 'Muhammad owais', NULL, 'abcd@efgh.com', '123123123', NULL, '$2b$10$E5GFA2W5pbW5Zyuil836cu5JNZb9fews3MwvFIng1Q6.4OVW6xJQq', 'registered', 'active', '0', '0', '2026-06-14 00:56:09', NULL, NULL, NULL, '0', NULL, '2026-07-15 15:55:31'),
('13', 'CUST17814346245575854', 'abc', 'efg', 'abc efg', NULL, 'ccc@bbb.com', '12341234', NULL, '$2b$10$fYcrs1mLOtxcyV1S0PvN2.JDgyzUI8yVN8bK/9MNxN7ZKuvdfimTe', 'registered', 'pending', '0', '0', '2026-06-14 00:57:04', NULL, NULL, NULL, '0', NULL, '2026-07-15 13:22:46');

-- --------------------------------------------------------
-- Table structure for `departments`

CREATE TABLE `departments` (
  `id` int NOT NULL AUTO_INCREMENT,
  `dept_name` varchar(150) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL,
  `dept_desc` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `dept_code` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL,
  `image_media_id` int DEFAULT NULL,
  `created_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
  `site_text_enabled` tinyint(1) NOT NULL DEFAULT '0',
  `site_text_html` longtext COLLATE utf8mb4_unicode_ci,
  `site_text_bg_color` varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '#ffffff',
  `site_text_text_color` varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '#0f172a',
  `site_text_font_size` int NOT NULL DEFAULT '18',
  `site_text_font_style` varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'normal',
  `site_text_button_label` varchar(160) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `site_text_button_url` varchar(500) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `site_text_button_bg_color` varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '#2563eb',
  `site_text_button_text_color` varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '#ffffff',
  PRIMARY KEY (`id`),
  UNIQUE KEY `dept_code` (`dept_code`),
  KEY `fk_dept_media` (`image_media_id`),
  CONSTRAINT `fk_dept_media` FOREIGN KEY (`image_media_id`) REFERENCES `media` (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=12 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

INSERT INTO `departments` (`id`, `dept_name`, `dept_desc`, `dept_code`, `image_media_id`, `site_text_enabled`, `site_text_html`, `site_text_bg_color`, `site_text_text_color`, `site_text_font_size`, `site_text_font_style`, `site_text_button_label`, `site_text_button_url`, `site_text_button_bg_color`, `site_text_button_text_color`) VALUES
('5', 'Pakistan', 'pakkk', 'PAK', '2', '0', NULL, '#ffffff', '#0f172a', '18', 'normal', NULL, NULL, '#2563eb', '#ffffff'),
('6', 'Dept2', '', 'ABC1212', '1', '0', NULL, '#ffffff', '#0f172a', '18', 'normal', NULL, NULL, '#2563eb', '#ffffff'),
('7', 'Dept31', '', 'ABC12121', '4', '0', NULL, '#ffffff', '#0f172a', '18', 'normal', NULL, NULL, '#2563eb', '#ffffff'),
('8', 'Dept412312', '', 'ABC1212221', '5', '0', NULL, '#ffffff', '#0f172a', '18', 'normal', NULL, NULL, '#2563eb', '#ffffff'),
('9', 'Bashir', '', '234234', '6', '0', NULL, '#ffffff', '#0f172a', '18', 'normal', NULL, NULL, '#2563eb', '#ffffff'),
('11', 'asfd', '', 'DEPARTMENT1', '296', '0', NULL, '#ffffff', '#0f172a', '18', 'normal', NULL, NULL, '#2563eb', '#ffffff');

-- --------------------------------------------------------
-- Table structure for `edit_locks`

CREATE TABLE `edit_locks` (
  `id` bigint NOT NULL AUTO_INCREMENT,
  `resource_type` varchar(80) COLLATE utf8mb4_unicode_ci NOT NULL,
  `resource_id` varchar(120) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '',
  `user_id` int NOT NULL,
  `username` varchar(120) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `role_level` int NOT NULL DEFAULT '0',
  `locked_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `expires_at` datetime NOT NULL,
  `updated_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`),
  UNIQUE KEY `uq_edit_lock_resource` (`resource_type`,`resource_id`),
  KEY `idx_edit_locks_user` (`user_id`),
  KEY `idx_edit_locks_expires` (`expires_at`)
) ENGINE=InnoDB AUTO_INCREMENT=21 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- No data for `edit_locks`

-- --------------------------------------------------------
-- Table structure for `email_logs`

CREATE TABLE `email_logs` (
  `id` bigint NOT NULL AUTO_INCREMENT,
  `queue_id` bigint DEFAULT NULL,
  `template_key` varchar(120) DEFAULT NULL,
  `recipient_email` varchar(255) NOT NULL,
  `subject` varchar(255) NOT NULL,
  `provider_message_id` varchar(255) DEFAULT NULL,
  `status` enum('sent','failed','skipped') NOT NULL,
  `error_message` text,
  `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`),
  KEY `idx_email_logs_queue` (`queue_id`),
  KEY `idx_email_logs_created` (`created_at`),
  KEY `idx_email_logs_recipient` (`recipient_email`)
) ENGINE=InnoDB AUTO_INCREMENT=36 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;


-- Runtime data for `email_logs` was intentionally omitted from the cPanel import; the table schema is kept.
CREATE TABLE `email_queue` (
  `id` bigint NOT NULL AUTO_INCREMENT,
  `template_key` varchar(120) DEFAULT NULL,
  `recipient_email` varchar(255) NOT NULL,
  `subject` varchar(255) NOT NULL,
  `body_html` mediumtext,
  `body_text` mediumtext,
  `status` enum('pending','sending','sent','failed','cancelled','skipped') NOT NULL DEFAULT 'pending',
  `attempts` int NOT NULL DEFAULT '0',
  `last_error` text,
  `send_after` datetime DEFAULT NULL,
  `sent_at` datetime DEFAULT NULL,
  `attachments_json` mediumtext,
  `variables_json` mediumtext,
  `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `updated_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`),
  KEY `idx_email_queue_status` (`status`,`send_after`,`id`),
  KEY `idx_email_queue_recipient` (`recipient_email`)
) ENGINE=InnoDB AUTO_INCREMENT=36 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;


-- Runtime data for `email_queue` was intentionally omitted from the cPanel import; the table schema is kept.
CREATE TABLE `email_settings` (
  `id` int NOT NULL DEFAULT '1',
  `is_enabled` tinyint(1) NOT NULL DEFAULT '0',
  `smtp_host` varchar(255) DEFAULT NULL,
  `smtp_port` int NOT NULL DEFAULT '587',
  `smtp_secure` tinyint(1) NOT NULL DEFAULT '0',
  `smtp_user` varchar(255) DEFAULT NULL,
  `smtp_pass` varchar(500) DEFAULT NULL,
  `from_name` varchar(255) DEFAULT NULL,
  `from_email` varchar(255) DEFAULT NULL,
  `reply_to` varchar(255) DEFAULT NULL,
  `admin_order_notification_recipients` text,
  `logo_media_id` int DEFAULT NULL,
  `theme_code` varchar(32) NOT NULL DEFAULT 'modern',
  `layout_code` varchar(32) NOT NULL DEFAULT 'centered',
  `primary_color` varchar(32) NOT NULL DEFAULT '#2563eb',
  `accent_color` varchar(32) NOT NULL DEFAULT '#f97316',
  `footer_text` text,
  `triggers_json` json DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`),
  KEY `fk_email_settings_logo` (`logo_media_id`),
  CONSTRAINT `fk_email_settings_logo` FOREIGN KEY (`logo_media_id`) REFERENCES `media` (`id`) ON DELETE SET NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

INSERT INTO `email_settings` (`id`, `is_enabled`, `smtp_host`, `smtp_port`, `smtp_secure`, `smtp_user`, `smtp_pass`, `from_name`, `from_email`, `reply_to`, `admin_order_notification_recipients`, `logo_media_id`, `theme_code`, `layout_code`, `primary_color`, `accent_color`, `footer_text`, `triggers_json`) VALUES
('1', '0', NULL, '587', '0', NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'classic', 'centered', '#990000', '#f97316', 'System Developed By IPOS', '{}');

-- --------------------------------------------------------
-- Table structure for `email_templates`

CREATE TABLE `email_templates` (
  `id` int NOT NULL AUTO_INCREMENT,
  `template_key` varchar(120) NOT NULL,
  `template_name` varchar(160) NOT NULL,
  `subject` varchar(255) NOT NULL,
  `body_html` mediumtext,
  `body_text` mediumtext,
  `subject_template` varchar(255) DEFAULT NULL,
  `html_template` mediumtext,
  `text_template` mediumtext,
  `variables_json` mediumtext,
  `is_active` tinyint(1) NOT NULL DEFAULT '1',
  `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `updated_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`),
  UNIQUE KEY `template_key` (`template_key`)
) ENGINE=InnoDB AUTO_INCREMENT=153 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

INSERT INTO `email_templates` (`id`, `template_key`, `template_name`, `subject`, `body_html`, `body_text`, `subject_template`, `html_template`, `text_template`, `variables_json`, `is_active`) VALUES
('1', 'test_email', 'Test email', 'Test email — {{store.store_name}}', '<p style="margin:0 0 16px;">This is a live test from <strong>{{store.store_name}}</strong>.</p>\n<p style="margin:0;color:#64748b;">If you received this, SMTP and the email queue are working correctly.</p>', 'Test email from {{store.store_name}}. Your email configuration is working.', 'Test email — {{store.store_name}}', '<p style="margin:0 0 16px;">This is a live test from <strong>{{store.store_name}}</strong>.</p>\n<p style="margin:0;color:#64748b;">If you received this, SMTP and the email queue are working correctly.</p>', 'Test email from {{store.store_name}}. Your email configuration is working.', NULL, '1'),
('2', 'customer_welcome', 'Customer welcome', 'Welcome to {{store.store_name}}', '<p style="margin:0 0 16px;">Hi {{customer.display_name}},</p>\n<p style="margin:0 0 16px;">Your account is ready. You can track orders, save addresses, and check out faster next time.</p>\n<table role="presentation" width="100%" cellspacing="0" cellpadding="0" style="margin:16px 0;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;">\n  <tr><td style="padding:14px 16px;font-size:14px;color:#475569;">Account email</td><td style="padding:14px 16px;font-size:14px;font-weight:700;text-align:right;">{{customer.email}}</td></tr>\n</table>', 'Welcome to {{store.store_name}}. Your account {{customer.email}} is ready.', 'Welcome to {{store.store_name}}', '<p style="margin:0 0 16px;">Hi {{customer.display_name}},</p>\n<p style="margin:0 0 16px;">Your account is ready. You can track orders, save addresses, and check out faster next time.</p>\n<table role="presentation" width="100%" cellspacing="0" cellpadding="0" style="margin:16px 0;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;">\n  <tr><td style="padding:14px 16px;font-size:14px;color:#475569;">Account email</td><td style="padding:14px 16px;font-size:14px;font-weight:700;text-align:right;">{{customer.email}}</td></tr>\n</table>', 'Welcome to {{store.store_name}}. Your account {{customer.email}} is ready.', NULL, '1'),
('3', 'order_confirmation', 'Order confirmation', 'Order confirmed — {{order.order_no}}', '<p style="margin:0 0 16px;">Thank you for your order. We have received it and will keep you updated.</p>\n<table role="presentation" width="100%" cellspacing="0" cellpadding="0" style="margin:16px 0;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;">\n  <tr><td style="padding:14px 16px;font-size:14px;color:#475569;">Order number</td><td style="padding:14px 16px;font-size:14px;font-weight:800;text-align:right;">{{order.order_no}}</td></tr>\n  <tr><td style="padding:14px 16px;font-size:14px;color:#475569;border-top:1px solid #e2e8f0;">Status</td><td style="padding:14px 16px;font-size:14px;font-weight:700;text-align:right;text-transform:capitalize;">{{order.order_status}}</td></tr>\n  <tr><td style="padding:14px 16px;font-size:14px;color:#475569;border-top:1px solid #e2e8f0;">Total</td><td style="padding:14px 16px;font-size:16px;font-weight:900;text-align:right;">{{order.currency_code}} {{order.grand_total}}</td></tr>\n</table>\n<p style="margin:0;color:#64748b;font-size:13px;">Payment status: {{order.payment_status}}</p>', 'Order {{order.order_no}} confirmed. Total: {{order.currency_code}} {{order.grand_total}}.', 'Order confirmed — {{order.order_no}}', '<p style="margin:0 0 16px;">Thank you for your order. We have received it and will keep you updated.</p>\n<table role="presentation" width="100%" cellspacing="0" cellpadding="0" style="margin:16px 0;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;">\n  <tr><td style="padding:14px 16px;font-size:14px;color:#475569;">Order number</td><td style="padding:14px 16px;font-size:14px;font-weight:800;text-align:right;">{{order.order_no}}</td></tr>\n  <tr><td style="padding:14px 16px;font-size:14px;color:#475569;border-top:1px solid #e2e8f0;">Status</td><td style="padding:14px 16px;font-size:14px;font-weight:700;text-align:right;text-transform:capitalize;">{{order.order_status}}</td></tr>\n  <tr><td style="padding:14px 16px;font-size:14px;color:#475569;border-top:1px solid #e2e8f0;">Total</td><td style="padding:14px 16px;font-size:16px;font-weight:900;text-align:right;">{{order.currency_code}} {{order.grand_total}}</td></tr>\n</table>\n<p style="margin:0;color:#64748b;font-size:13px;">Payment status: {{order.payment_status}}</p>', 'Order {{order.order_no}} confirmed. Total: {{order.currency_code}} {{order.grand_total}}.', NULL, '1'),
('4', 'invoice_email', 'Invoice email', 'Invoice {{invoice.invoice_no}} — Order {{order.order_no}}', '<p style="margin:0 0 16px;">Your invoice is ready for order <strong>{{order.order_no}}</strong>.</p>\n<table role="presentation" width="100%" cellspacing="0" cellpadding="0" style="margin:16px 0;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;">\n  <tr><td style="padding:14px 16px;font-size:14px;color:#475569;">Invoice number</td><td style="padding:14px 16px;font-size:14px;font-weight:800;text-align:right;">{{invoice.invoice_no}}</td></tr>\n  <tr><td style="padding:14px 16px;font-size:14px;color:#475569;border-top:1px solid #e2e8f0;">Amount due</td><td style="padding:14px 16px;font-size:16px;font-weight:900;text-align:right;">{{invoice.currency_code}} {{invoice.grand_total}}</td></tr>\n</table>\n<p style="margin:0;color:#64748b;font-size:13px;">Use the button below to view or print your invoice.</p>', 'Invoice {{invoice.invoice_no}} for order {{order.order_no}}. Total: {{invoice.currency_code}} {{invoice.grand_total}}.', 'Invoice {{invoice.invoice_no}} — Order {{order.order_no}}', '<p style="margin:0 0 16px;">Your invoice is ready for order <strong>{{order.order_no}}</strong>.</p>\n<table role="presentation" width="100%" cellspacing="0" cellpadding="0" style="margin:16px 0;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;">\n  <tr><td style="padding:14px 16px;font-size:14px;color:#475569;">Invoice number</td><td style="padding:14px 16px;font-size:14px;font-weight:800;text-align:right;">{{invoice.invoice_no}}</td></tr>\n  <tr><td style="padding:14px 16px;font-size:14px;color:#475569;border-top:1px solid #e2e8f0;">Amount due</td><td style="padding:14px 16px;font-size:16px;font-weight:900;text-align:right;">{{invoice.currency_code}} {{invoice.grand_total}}</td></tr>\n</table>\n<p style="margin:0;color:#64748b;font-size:13px;">Use the button below to view or print your invoice.</p>', 'Invoice {{invoice.invoice_no}} for order {{order.order_no}}. Total: {{invoice.currency_code}} {{invoice.grand_total}}.', NULL, '1'),
('5', 'password_reset', 'Password reset (legacy key)', 'Reset your password — {{store.store_name}}', '<p style="margin:0 0 16px;">Hi {{customer.display_name}},</p>\n<p style="margin:0 0 16px;">Use the secure link below to reset your password. This link expires in 2 hours.</p>', 'Reset your password: {{reset_url}}', 'Reset your password — {{store.store_name}}', '<p style="margin:0 0 16px;">Hi {{customer.display_name}},</p>\n<p style="margin:0 0 16px;">Use the secure link below to reset your password. This link expires in 2 hours.</p>', 'Reset your password: {{reset_url}}', NULL, '1'),
('6', 'order_status_update', 'Order status update', 'Order {{order.order_no}} — status update', '<p style="margin:0 0 16px;">Your order status has been updated.</p>\n<table role="presentation" width="100%" cellspacing="0" cellpadding="0" style="margin:16px 0;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;">\n  <tr><td style="padding:14px 16px;font-size:14px;color:#475569;">Order</td><td style="padding:14px 16px;font-size:14px;font-weight:800;text-align:right;">{{order.order_no}}</td></tr>\n  <tr><td style="padding:14px 16px;font-size:14px;color:#475569;border-top:1px solid #e2e8f0;">Previous status</td><td style="padding:14px 16px;font-size:14px;font-weight:700;text-align:right;text-transform:capitalize;">{{old_status}}</td></tr>\n  <tr><td style="padding:14px 16px;font-size:14px;color:#475569;border-top:1px solid #e2e8f0;">Current status</td><td style="padding:14px 16px;font-size:14px;font-weight:900;text-align:right;text-transform:capitalize;color:#2563eb;">{{new_status}}</td></tr>\n</table>', 'Order {{order.order_no}} changed from {{old_status}} to {{new_status}}.', 'Order {{order.order_no}} — status update', '<p style="margin:0 0 16px;">Your order status has been updated.</p>\n<table role="presentation" width="100%" cellspacing="0" cellpadding="0" style="margin:16px 0;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;">\n  <tr><td style="padding:14px 16px;font-size:14px;color:#475569;">Order</td><td style="padding:14px 16px;font-size:14px;font-weight:800;text-align:right;">{{order.order_no}}</td></tr>\n  <tr><td style="padding:14px 16px;font-size:14px;color:#475569;border-top:1px solid #e2e8f0;">Previous status</td><td style="padding:14px 16px;font-size:14px;font-weight:700;text-align:right;text-transform:capitalize;">{{old_status}}</td></tr>\n  <tr><td style="padding:14px 16px;font-size:14px;color:#475569;border-top:1px solid #e2e8f0;">Current status</td><td style="padding:14px 16px;font-size:14px;font-weight:900;text-align:right;text-transform:capitalize;color:#2563eb;">{{new_status}}</td></tr>\n</table>', 'Order {{order.order_no}} changed from {{old_status}} to {{new_status}}.', NULL, '1'),
('7', 'password_reset_request', 'Password reset request', 'Reset your password — {{store.store_name}}', '<p style="margin:0 0 16px;">Hi {{customer.display_name}},</p>\n<p style="margin:0 0 16px;">We received a request to reset your password. This secure link expires in 2 hours.</p>\n<p style="margin:0;color:#64748b;font-size:13px;">If you did not request this, you can safely ignore this email.</p>', 'Reset your password: {{reset_url}}', 'Reset your password — {{store.store_name}}', '<p style="margin:0 0 16px;">Hi {{customer.display_name}},</p>\n<p style="margin:0 0 16px;">We received a request to reset your password. This secure link expires in 2 hours.</p>\n<p style="margin:0;color:#64748b;font-size:13px;">If you did not request this, you can safely ignore this email.</p>', 'Reset your password: {{reset_url}}', NULL, '1'),
('8', 'password_reset_admin', 'Admin password reset', 'Your password was reset — {{store.store_name}}', '<p style="margin:0 0 16px;">Hi {{customer.display_name}},</p>\n<p style="margin:0 0 16px;">An administrator reset your storefront account password.</p>\n<table role="presentation" width="100%" cellspacing="0" cellpadding="0" style="margin:16px 0;background:#fff7ed;border:1px solid #fed7aa;border-radius:12px;">\n  <tr><td style="padding:14px 16px;font-size:14px;color:#9a3412;">Temporary password</td><td style="padding:14px 16px;font-size:14px;font-weight:900;text-align:right;font-family:monospace;">{{temporary_password}}</td></tr>\n</table>\n<p style="margin:0;color:#64748b;font-size:13px;">Sign in and change your password from your account profile immediately.</p>', 'Your password was reset. Temporary password: {{temporary_password}}', 'Your password was reset — {{store.store_name}}', '<p style="margin:0 0 16px;">Hi {{customer.display_name}},</p>\n<p style="margin:0 0 16px;">An administrator reset your storefront account password.</p>\n<table role="presentation" width="100%" cellspacing="0" cellpadding="0" style="margin:16px 0;background:#fff7ed;border:1px solid #fed7aa;border-radius:12px;">\n  <tr><td style="padding:14px 16px;font-size:14px;color:#9a3412;">Temporary password</td><td style="padding:14px 16px;font-size:14px;font-weight:900;text-align:right;font-family:monospace;">{{temporary_password}}</td></tr>\n</table>\n<p style="margin:0;color:#64748b;font-size:13px;">Sign in and change your password from your account profile immediately.</p>', 'Your password was reset. Temporary password: {{temporary_password}}', NULL, '1'),
('10', 'order_status_changed', 'Order status changed (alias)', 'Order {{order.order_no}} — status update', '<p style="margin:0 0 16px;">Your order status has been updated.</p>\n<table role="presentation" width="100%" cellspacing="0" cellpadding="0" style="margin:16px 0;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;">\n  <tr><td style="padding:14px 16px;font-size:14px;color:#475569;">Order</td><td style="padding:14px 16px;font-size:14px;font-weight:800;text-align:right;">{{order.order_no}}</td></tr>\n  <tr><td style="padding:14px 16px;font-size:14px;color:#475569;border-top:1px solid #e2e8f0;">Previous status</td><td style="padding:14px 16px;font-size:14px;font-weight:700;text-align:right;text-transform:capitalize;">{{old_status}}</td></tr>\n  <tr><td style="padding:14px 16px;font-size:14px;color:#475569;border-top:1px solid #e2e8f0;">Current status</td><td style="padding:14px 16px;font-size:14px;font-weight:900;text-align:right;text-transform:capitalize;color:#2563eb;">{{new_status}}</td></tr>\n</table>', 'Order {{order.order_no}} changed from {{old_status}} to {{new_status}}.', 'Order {{order.order_no}} — status update', '<p style="margin:0 0 16px;">Your order status has been updated.</p>\n<table role="presentation" width="100%" cellspacing="0" cellpadding="0" style="margin:16px 0;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;">\n  <tr><td style="padding:14px 16px;font-size:14px;color:#475569;">Order</td><td style="padding:14px 16px;font-size:14px;font-weight:800;text-align:right;">{{order.order_no}}</td></tr>\n  <tr><td style="padding:14px 16px;font-size:14px;color:#475569;border-top:1px solid #e2e8f0;">Previous status</td><td style="padding:14px 16px;font-size:14px;font-weight:700;text-align:right;text-transform:capitalize;">{{old_status}}</td></tr>\n  <tr><td style="padding:14px 16px;font-size:14px;color:#475569;border-top:1px solid #e2e8f0;">Current status</td><td style="padding:14px 16px;font-size:14px;font-weight:900;text-align:right;text-transform:capitalize;color:#2563eb;">{{new_status}}</td></tr>\n</table>', 'Order {{order.order_no}} changed from {{old_status}} to {{new_status}}.', NULL, '1'),
('13', 'payment_received', 'Payment received', 'Payment received — {{order.order_no}}', '<p style="margin:0 0 16px;">We have received your payment. Thank you!</p>\n<table role="presentation" width="100%" cellspacing="0" cellpadding="0" style="margin:16px 0;background:#ecfdf5;border:1px solid #86efac;border-radius:12px;">\n  <tr><td style="padding:14px 16px;font-size:14px;color:#166534;">Order</td><td style="padding:14px 16px;font-size:14px;font-weight:800;text-align:right;color:#166534;">{{order.order_no}}</td></tr>\n  <tr><td style="padding:14px 16px;font-size:14px;color:#166534;border-top:1px solid #bbf7d0;">Amount paid</td><td style="padding:14px 16px;font-size:16px;font-weight:900;text-align:right;color:#166534;">{{order.currency_code}} {{order.grand_total}}</td></tr>\n  <tr><td style="padding:14px 16px;font-size:14px;color:#166534;border-top:1px solid #bbf7d0;">Payment status</td><td style="padding:14px 16px;font-size:14px;font-weight:700;text-align:right;color:#166534;">Paid</td></tr>\n</table>', 'Payment received for order {{order.order_no}}. Amount: {{order.currency_code}} {{order.grand_total}}.', 'Payment received — {{order.order_no}}', '<p style="margin:0 0 16px;">We have received your payment. Thank you!</p>\n<table role="presentation" width="100%" cellspacing="0" cellpadding="0" style="margin:16px 0;background:#ecfdf5;border:1px solid #86efac;border-radius:12px;">\n  <tr><td style="padding:14px 16px;font-size:14px;color:#166534;">Order</td><td style="padding:14px 16px;font-size:14px;font-weight:800;text-align:right;color:#166534;">{{order.order_no}}</td></tr>\n  <tr><td style="padding:14px 16px;font-size:14px;color:#166534;border-top:1px solid #bbf7d0;">Amount paid</td><td style="padding:14px 16px;font-size:16px;font-weight:900;text-align:right;color:#166534;">{{order.currency_code}} {{order.grand_total}}</td></tr>\n  <tr><td style="padding:14px 16px;font-size:14px;color:#166534;border-top:1px solid #bbf7d0;">Payment status</td><td style="padding:14px 16px;font-size:14px;font-weight:700;text-align:right;color:#166534;">Paid</td></tr>\n</table>', 'Payment received for order {{order.order_no}}. Amount: {{order.currency_code}} {{order.grand_total}}.', NULL, '1'),
('16', 'membership_points_earned', 'Membership points earned', 'You earned {{points.points_earned}} points!', '<p style="margin:0 0 16px;">Great news — you earned loyalty points on your recent order.</p>\n<table role="presentation" width="100%" cellspacing="0" cellpadding="0" style="margin:16px 0;background:#eff6ff;border:1px solid #bfdbfe;border-radius:12px;">\n  <tr><td style="padding:14px 16px;font-size:14px;color:#1e40af;">Order</td><td style="padding:14px 16px;font-size:14px;font-weight:800;text-align:right;">{{order.order_no}}</td></tr>\n  <tr><td style="padding:14px 16px;font-size:14px;color:#1e40af;border-top:1px solid #dbeafe;">Points earned</td><td style="padding:14px 16px;font-size:18px;font-weight:900;text-align:right;color:#1d4ed8;">+{{points.points_earned}}</td></tr>\n</table>', 'You earned {{points.points_earned}} points from order {{order.order_no}}.', 'You earned {{points.points_earned}} points!', '<p style="margin:0 0 16px;">Great news — you earned loyalty points on your recent order.</p>\n<table role="presentation" width="100%" cellspacing="0" cellpadding="0" style="margin:16px 0;background:#eff6ff;border:1px solid #bfdbfe;border-radius:12px;">\n  <tr><td style="padding:14px 16px;font-size:14px;color:#1e40af;">Order</td><td style="padding:14px 16px;font-size:14px;font-weight:800;text-align:right;">{{order.order_no}}</td></tr>\n  <tr><td style="padding:14px 16px;font-size:14px;color:#1e40af;border-top:1px solid #dbeafe;">Points earned</td><td style="padding:14px 16px;font-size:18px;font-weight:900;text-align:right;color:#1d4ed8;">+{{points.points_earned}}</td></tr>\n</table>', 'You earned {{points.points_earned}} points from order {{order.order_no}}.', NULL, '1'),
('17', 'admin_new_order_notification', 'Admin new order notification', 'New order — {{order.order_no}}', '<p style="margin:0 0 16px;">A new order was placed on your store.</p>\n<table role="presentation" width="100%" cellspacing="0" cellpadding="0" style="margin:16px 0;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;">\n  <tr><td style="padding:14px 16px;font-size:14px;color:#475569;">Order</td><td style="padding:14px 16px;font-size:14px;font-weight:800;text-align:right;">{{order.order_no}}</td></tr>\n  <tr><td style="padding:14px 16px;font-size:14px;color:#475569;border-top:1px solid #e2e8f0;">Customer</td><td style="padding:14px 16px;font-size:14px;font-weight:700;text-align:right;">{{order.customer_name}}</td></tr>\n  <tr><td style="padding:14px 16px;font-size:14px;color:#475569;border-top:1px solid #e2e8f0;">Total</td><td style="padding:14px 16px;font-size:16px;font-weight:900;text-align:right;">{{order.currency_code}} {{order.grand_total}}</td></tr>\n  <tr><td style="padding:14px 16px;font-size:14px;color:#475569;border-top:1px solid #e2e8f0;">Payment</td><td style="padding:14px 16px;font-size:14px;font-weight:700;text-align:right;text-transform:capitalize;">{{order.payment_status}}</td></tr>\n</table>', 'New order {{order.order_no}} — {{order.currency_code}} {{order.grand_total}}.', 'New order — {{order.order_no}}', '<p style="margin:0 0 16px;">A new order was placed on your store.</p>\n<table role="presentation" width="100%" cellspacing="0" cellpadding="0" style="margin:16px 0;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;">\n  <tr><td style="padding:14px 16px;font-size:14px;color:#475569;">Order</td><td style="padding:14px 16px;font-size:14px;font-weight:800;text-align:right;">{{order.order_no}}</td></tr>\n  <tr><td style="padding:14px 16px;font-size:14px;color:#475569;border-top:1px solid #e2e8f0;">Customer</td><td style="padding:14px 16px;font-size:14px;font-weight:700;text-align:right;">{{order.customer_name}}</td></tr>\n  <tr><td style="padding:14px 16px;font-size:14px;color:#475569;border-top:1px solid #e2e8f0;">Total</td><td style="padding:14px 16px;font-size:16px;font-weight:900;text-align:right;">{{order.currency_code}} {{order.grand_total}}</td></tr>\n  <tr><td style="padding:14px 16px;font-size:14px;color:#475569;border-top:1px solid #e2e8f0;">Payment</td><td style="padding:14px 16px;font-size:14px;font-weight:700;text-align:right;text-transform:capitalize;">{{order.payment_status}}</td></tr>\n</table>', 'New order {{order.order_no}} — {{order.currency_code}} {{order.grand_total}}.', NULL, '1'),
('28', 'password_changed', 'Password changed confirmation', 'Password updated — {{store.store_name}}', '<p style="margin:0 0 16px;">Hi {{customer.display_name}},</p>\n<p style="margin:0 0 16px;">Your account password was changed successfully.</p>\n<p style="margin:0;color:#64748b;font-size:13px;">If you did not make this change, contact us immediately at {{store.contact_email}}.</p>', 'Your password for {{store.store_name}} was updated successfully.', 'Password updated — {{store.store_name}}', '<p style="margin:0 0 16px;">Hi {{customer.display_name}},</p>\n<p style="margin:0 0 16px;">Your account password was changed successfully.</p>\n<p style="margin:0;color:#64748b;font-size:13px;">If you did not make this change, contact us immediately at {{store.contact_email}}.</p>', 'Your password for {{store.store_name}} was updated successfully.', NULL, '1'),
('75', 'owner_order_confirmation', 'Owner order confirmation', 'New order received - {{order.order_no}}', '<p>A new order <strong>{{order.order_no}}</strong> was placed.</p><p>Total: {{order.currency_code}} {{order.grand_total}}</p>', 'New order {{order.order_no}} received. Total: {{order.currency_code}} {{order.grand_total}}.', 'New order received - {{order.order_no}}', '<p>A new order <strong>{{order.order_no}}</strong> was placed.</p><p>Total: {{order.currency_code}} {{order.grand_total}}</p>', 'New order {{order.order_no}} received. Total: {{order.currency_code}} {{order.grand_total}}.', NULL, '0'),
('76', 'owner_weekly_tracking', 'Owner weekly tracking summary', 'Weekly store tracking summary', '<p>Your weekly store tracking summary is ready.</p><p>Orders: {{summary.orders_count}}</p><p>Sales: {{summary.sales_total}}</p>', 'Weekly store tracking summary. Orders: {{summary.orders_count}}. Sales: {{summary.sales_total}}.', 'Weekly store tracking summary', '<p>Your weekly store tracking summary is ready.</p><p>Orders: {{summary.orders_count}}</p><p>Sales: {{summary.sales_total}}</p>', 'Weekly store tracking summary. Orders: {{summary.orders_count}}. Sales: {{summary.sales_total}}.', NULL, '0'),
('77', 'return_request_received', 'Return request received', 'Return request received - {{order.order_no}}', '<p>We received your return request for order <strong>{{order.order_no}}</strong>.</p><p>Our team will review the selected item(s).</p>', 'Return request received for order {{order.order_no}}.', 'Return request received - {{order.order_no}}', '<p>We received your return request for order <strong>{{order.order_no}}</strong>.</p><p>Our team will review the selected item(s).</p>', 'Return request received for order {{order.order_no}}.', NULL, '0'),
('78', 'return_status_update', 'Return status update', 'Return update - {{order.order_no}}', '<p>Your return request for order <strong>{{order.order_no}}</strong> is now <strong>{{return.status}}</strong>.</p>', 'Return request for order {{order.order_no}} is now {{return.status}}.', 'Return update - {{order.order_no}}', '<p>Your return request for order <strong>{{order.order_no}}</strong> is now <strong>{{return.status}}</strong>.</p>', 'Return request for order {{order.order_no}} is now {{return.status}}.', NULL, '0'),
('131', 'customer_account_approved', 'Customer account approved', 'Your account has been approved', '<p style="margin:0 0 16px;">Hi {{customer.display_name}},</p>\n<p style="margin:0 0 16px;">Good news - your account has been approved. You can now sign in, manage your profile, save addresses, and place orders.</p>\n<table role="presentation" width="100%" cellspacing="0" cellpadding="0" style="margin:16px 0;background:#ecfdf5;border:1px solid #86efac;border-radius:12px;">\n  <tr><td style="padding:14px 16px;font-size:14px;color:#166534;">Account status</td><td style="padding:14px 16px;font-size:14px;font-weight:900;text-align:right;color:#166534;">Approved</td></tr>\n</table>', 'Your account has been approved. You can now sign in and place orders.', 'Your account has been approved', '<p style="margin:0 0 16px;">Hi {{customer.display_name}},</p>\n<p style="margin:0 0 16px;">Good news - your account has been approved. You can now sign in, manage your profile, save addresses, and place orders.</p>\n<table role="presentation" width="100%" cellspacing="0" cellpadding="0" style="margin:16px 0;background:#ecfdf5;border:1px solid #86efac;border-radius:12px;">\n  <tr><td style="padding:14px 16px;font-size:14px;color:#166534;">Account status</td><td style="padding:14px 16px;font-size:14px;font-weight:900;text-align:right;color:#166534;">Approved</td></tr>\n</table>', 'Your account has been approved. You can now sign in and place orders.', NULL, '1');

-- --------------------------------------------------------
-- Table structure for `grouped_product_items`

CREATE TABLE `grouped_product_items` (
  `id` int NOT NULL AUTO_INCREMENT,
  `group_product_id` int DEFAULT NULL,
  `child_product_id` int DEFAULT NULL,
  `sort_order` int NOT NULL DEFAULT '0',
  `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `group_id` bigint DEFAULT NULL,
  `product_id` int DEFAULT NULL,
  `quantity` decimal(18,4) NOT NULL DEFAULT '1.0000',
  `discount_type` varchar(20) NOT NULL DEFAULT 'percent',
  `discount_value` decimal(18,4) NOT NULL DEFAULT '0.0000',
  `updated_at` timestamp NULL DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`),
  UNIQUE KEY `uq_group_child` (`group_product_id`,`child_product_id`),
  KEY `idx_group_parent` (`group_product_id`),
  KEY `idx_group_child` (`child_product_id`),
  KEY `idx_grouped_items_group_sort` (`group_id`,`sort_order`,`id`),
  KEY `idx_grouped_items_product` (`product_id`,`group_id`),
  CONSTRAINT `fk_grouped_child` FOREIGN KEY (`child_product_id`) REFERENCES `products` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
  CONSTRAINT `fk_grouped_parent` FOREIGN KEY (`group_product_id`) REFERENCES `products` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=29 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

INSERT INTO `grouped_product_items` (`id`, `group_product_id`, `child_product_id`, `sort_order`, `group_id`, `product_id`, `quantity`, `discount_type`, `discount_value`, `updated_at`) VALUES
('21', NULL, NULL, '0', '4', '604', '1.0000', 'percent', '2.0000', NULL),
('22', NULL, NULL, '1', '4', '607', '1.0000', 'percent', '3.0000', NULL),
('23', NULL, NULL, '2', '4', '600', '1.0000', 'percent', '3.0000', NULL),
('24', NULL, NULL, '3', '4', '603', '1.0000', 'percent', '2.0000', NULL),
('25', NULL, NULL, '0', '3', '629', '1.0000', 'percent', '5.0000', NULL),
('26', NULL, NULL, '1', '3', '628', '1.0000', 'percent', '4.0000', NULL),
('27', NULL, NULL, '2', '3', '627', '1.0000', 'percent', '5.0000', NULL),
('28', NULL, NULL, '3', '3', '605', '1.0000', 'percent', '0.0000', NULL);

-- --------------------------------------------------------
-- Table structure for `grouped_products`

CREATE TABLE `grouped_products` (
  `id` bigint NOT NULL AUTO_INCREMENT,
  `group_title` varchar(190) NOT NULL,
  `group_slug` varchar(220) NOT NULL,
  `group_subtitle` varchar(220) DEFAULT NULL,
  `group_desc` text,
  `badge_text` varchar(80) DEFAULT NULL,
  `image_media_id` int DEFAULT NULL,
  `hero_media_id` int DEFAULT NULL,
  `is_featured` tinyint(1) NOT NULL DEFAULT '0',
  `is_active` tinyint(1) NOT NULL DEFAULT '1',
  `sort_order` int NOT NULL DEFAULT '0',
  `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `updated_at` timestamp NULL DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`),
  UNIQUE KEY `uq_grouped_products_slug` (`group_slug`),
  KEY `idx_grouped_products_active` (`is_active`,`is_featured`,`sort_order`),
  KEY `idx_grouped_products_storefront` (`is_active`,`is_featured`,`sort_order`,`id`),
  KEY `idx_grouped_products_slug_active` (`group_slug`,`is_active`)
) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

INSERT INTO `grouped_products` (`id`, `group_title`, `group_slug`, `group_subtitle`, `group_desc`, `badge_text`, `image_media_id`, `hero_media_id`, `is_featured`, `is_active`, `sort_order`, `updated_at`) VALUES
('3', 'Personal Kit', 'personal-kit', NULL, NULL, 'Bundle', '332', '333', '0', '1', '0', '2026-07-22 22:13:55'),
('4', 'dklsjaf', 'dklsjaf', 'asfd', NULL, 'Bundle', '328', '329', '0', '1', '0', '2026-07-22 22:10:18');

-- --------------------------------------------------------
-- Table structure for `homepage_configs`

CREATE TABLE `homepage_configs` (
  `id` int NOT NULL AUTO_INCREMENT,
  `name` varchar(150) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL,
  `slug` varchar(150) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL,
  `page_key` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL,
  `is_active` tinyint(1) NOT NULL DEFAULT '1',
  `global_settings_json` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
  `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `updated_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`),
  UNIQUE KEY `uq_homepage_configs_page_key` (`page_key`),
  UNIQUE KEY `uq_homepage_configs_slug` (`slug`)
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

INSERT INTO `homepage_configs` (`id`, `name`, `slug`, `page_key`, `is_active`, `global_settings_json`) VALUES
('1', 'Default Home Page', 'default-home-page', 'home', '1', '{"pageTitle":"Home","maxWidth":"2000","sectionGap":24,"backgroundColor":"#ededed","showActiveBanner":true,"bannerLayoutMode":"full","bannerBorderRadius":"20","bannerMarginTop":0,"bannerMarginBottom":"20","homepageTheme":"material","advertisement":{"sideAdWidthPercent":"100","sideAdPlacement":"beside","innerPageFullWidth":true,"hideSideAdsOnMobile":true,"hideSideAdsOnTablet":true,"stickySideAds":false,"widgetGap":16,"leftWidgets":[{"id":"748051d0-bc09-446e-a2d1-57acaf912383","enabled":true,"label":"Left Advertisement","openInNewTab":false,"link":"/shop","title":"Left Advertisement","subtitle":"","description":"Promotion description goes here.","imageMediaId":147,"imageUrl":"/uploads/Lays_-_Classic_1_1776893633058_12993.png","mobileImageUrl":"","overlayEnabled":true,"overlayColor":"#000000","overlayOpacity":0.35,"textAlign":"left","contentPosition":"center-left","titleStyle":{"color":"#ffffff","align":"left","fontSize":22,"fontWeight":800,"italic":false,"underline":false,"uppercase":false,"letterSpacing":0,"lineHeight":1.4,"textShadow":"none"},"subtitleStyle":{"color":"#ffffff","align":"left","fontSize":14,"fontWeight":600,"italic":false,"underline":false,"uppercase":false,"letterSpacing":0,"lineHeight":1.4,"textShadow":"none"},"descriptionStyle":{"color":"#f8fafc","align":"left","fontSize":14,"fontWeight":500,"italic":false,"underline":false,"uppercase":false,"letterSpacing":0,"lineHeight":1.5,"textShadow":"none"},"button":{"enabled":true,"text":"Shop Now","link":"/shop","newTab":false,"style":"solid","bgColor":"#2563eb","textColor":"#ffffff","borderColor":"#2563eb","borderRadius":12,"paddingX":18,"paddingY":12,"fontSize":14,"fontWeight":800,"shadow":"none"},"slideRadius":22,"minHeightDesktop":"800","minHeightTablet":420,"minHeightMobile":420,"backgroundColor":"#0f172a"},{"id":"480050b5-4aaf-4f1e-b1ff-dc08f6325633","enabled":true,"label":"Left Advertisement Banners 3","openInNewTab":false,"link":"","title":"Advertisement Title","subtitle":"Short subtitle","description":"Promotion description goes here.","imageMediaId":214,"imageUrl":"/uploads/Pringles_Black_Pepper_1_1776893688694_91200.jpg","mobileImageUrl":"","overlayEnabled":true,"overlayColor":"#000000","overlayOpacity":0.35,"textAlign":"left","contentPosition":"center-left","titleStyle":{"color":"#ffffff","align":"left","fontSize":34,"fontWeight":900,"italic":false,"underline":false,"uppercase":false,"letterSpacing":0,"lineHeight":1.4,"textShadow":"none"},"subtitleStyle":{"color":"#ffffff","align":"left","fontSize":18,"fontWeight":700,"italic":false,"underline":false,"uppercase":false,"letterSpacing":0,"lineHeight":1.4,"textShadow":"none"},"descriptionStyle":{"color":"#f8fafc","align":"left","fontSize":14,"fontWeight":500,"italic":false,"underline":false,"uppercase":false,"letterSpacing":0,"lineHeight":1.5,"textShadow":"none"},"button":{"enabled":true,"text":"Shop Now","link":"/shop","newTab":false,"style":"solid","bgColor":"#2563eb","textColor":"#ffffff","borderColor":"#2563eb","borderRadius":12,"paddingX":18,"paddingY":12,"fontSize":14,"fontWeight":800,"shadow":"none"},"slideRadius":22,"minHeightDesktop":380,"minHeightTablet":320,"minHeightMobile":220,"backgroundColor":"#0f172a"}],"rightWidgets":[{"id":"ace38fc1-81e7-4a70-9a59-09101ec73751","enabled":true,"label":"Right Advertisement","openInNewTab":false,"link":"/shop","title":"Right Advertisement","subtitle":"","description":"Promotion description goes here.","imageMediaId":162,"imageUrl":"/uploads/Wall_s_Cornetto_Duble_Chocolate_1_1776893644868_55444.png","mobileImageUrl":"","overlayEnabled":true,"overlayColor":"#000000","overlayOpacity":0.35,"textAlign":"left","contentPosition":"center-left","titleStyle":{"color":"#ffffff","align":"left","fontSize":22,"fontWeight":800,"italic":false,"underline":false,"uppercase":false,"letterSpacing":0,"lineHeight":1.4,"textShadow":"none"},"subtitleStyle":{"color":"#ffffff","align":"left","fontSize":14,"fontWeight":600,"italic":false,"underline":false,"uppercase":false,"letterSpacing":0,"lineHeight":1.4,"textShadow":"none"},"descriptionStyle":{"color":"#f8fafc","align":"left","fontSize":14,"fontWeight":500,"italic":false,"underline":false,"uppercase":false,"letterSpacing":0,"lineHeight":1.5,"textShadow":"none"},"button":{"enabled":true,"text":"Shop Now","link":"/shop","newTab":false,"style":"solid","bgColor":"#2563eb","textColor":"#ffffff","borderColor":"#2563eb","borderRadius":12,"paddingX":18,"paddingY":12,"fontSize":14,"fontWeight":800,"shadow":"none"},"slideRadius":22,"minHeightDesktop":"800","minHeightTablet":420,"minHeightMobile":420,"backgroundColor":"#0f172a"},{"id":"509482a5-c904-4653-a22a-37bbabceebc1","enabled":true,"label":"Right Advertisement Banners 2","openInNewTab":false,"link":"","title":"Advertisement Title","subtitle":"Short subtitle","description":"Promotion description goes here.","imageMediaId":314,"imageUrl":"/uploads/1780091010244-741151054.png","mobileImageUrl":"","overlayEnabled":true,"overlayColor":"#000000","overlayOpacity":0.35,"textAlign":"left","contentPosition":"center-left","titleStyle":{"color":"#ffffff","align":"left","fontSize":34,"fontWeight":900,"italic":false,"underline":false,"uppercase":false,"letterSpacing":0,"lineHeight":1.4,"textShadow":"none"},"subtitleStyle":{"color":"#ffffff","align":"left","fontSize":18,"fontWeight":700,"italic":false,"underline":false,"uppercase":false,"letterSpacing":0,"lineHeight":1.4,"textShadow":"none"},"descriptionStyle":{"color":"#f8fafc","align":"left","fontSize":14,"fontWeight":500,"italic":false,"underline":false,"uppercase":false,"letterSpacing":0,"lineHeight":1.5,"textShadow":"none"},"button":{"enabled":true,"text":"Shop Now","link":"/shop","newTab":false,"style":"solid","bgColor":"#2563eb","textColor":"#ffffff","borderColor":"#2563eb","borderRadius":12,"paddingX":18,"paddingY":12,"fontSize":14,"fontWeight":800,"shadow":"none"},"slideRadius":22,"minHeightDesktop":380,"minHeightTablet":320,"minHeightMobile":220,"backgroundColor":"#0f172a"}],"leftAd":{"enabled":true,"title":"Left Advertisement","subtitle":"","imageUrl":"","mobileImageUrl":"","link":"/shop","openInNewTab":false,"backgroundColor":"#0f172a","textColor":"#ffffff","minHeight":420,"sticky":true},"rightAd":{"enabled":true,"title":"Right Advertisement","subtitle":"","imageUrl":"","mobileImageUrl":"","link":"/shop","openInNewTab":false,"backgroundColor":"#0f172a","textColor":"#ffffff","minHeight":420,"sticky":true}}}');

-- --------------------------------------------------------
