-- ******************************************************************
-- 表 kku_task_costs 的创建SQL
-- 对应的Model: App\Module\Task\Models\TaskCost
-- 警告: 此文件由系统自动生成，禁止手动修改！
-- ******************************************************************

DROP TABLE IF EXISTS `kku_task_costs`;
CREATE TABLE `kku_task_costs` (
  `id` int NOT NULL AUTO_INCREMENT COMMENT '主键',
  `task_id` int NOT NULL COMMENT '任务ID，外键关联task_tasks表',
  `cost_type` varchar(50) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '消耗类型（currency, item, energy, ticket等）',
  `cost_param1` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '消耗参数1（如货币类型、物品类型等）',
  `cost_param2` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '消耗参数2（如货币ID、物品ID等）',
  `quantity` int NOT NULL DEFAULT '1' COMMENT '消耗数量',
  `extra_data` json DEFAULT NULL COMMENT '额外数据（JSON格式）',
  `sort_order` int NOT NULL DEFAULT '0' COMMENT '排序权重（数值越大越靠前）',
  `created_at` timestamp NULL DEFAULT NULL COMMENT '创建时间',
  `updated_at` timestamp NULL DEFAULT NULL COMMENT '更新时间',
  PRIMARY KEY (`id`),
  KEY `idx_task_id` (`task_id`),
  KEY `idx_cost_type` (`cost_type`),
  KEY `idx_cost_params` (`cost_param1`,`cost_param2`),
  KEY `idx_sort` (`sort_order`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='任务接取消耗表';
