CREATE TABLE `game_sugar_spin` (
  `gid` bigint NOT NULL AUTO_INCREMENT COMMENT '一次spin的唯一标识符。连续的free_spin算一次spin',
  `score` decimal(10,2) NOT NULL DEFAULT 0.00 COMMENT '总得分',
  `count` int NOT NULL DEFAULT '0' COMMENT 'step总数',
  `feature` varchar(20) NOT NULL DEFAULT 'normal' COMMENT 'normal:普通spin free:购买的免费旋转 super_free:购买的超级免费旋转',
  `extra_free` int NOT NULL DEFAULT '0' COMMENT '本次spin中额外触发的免费spin数量',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '记录创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '记录更新时间',
  PRIMARY KEY (`gid`),
  KEY `idx_feature` (`feature`),
  KEY `idx_score` (`score`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='糖果游戏spin表';


CREATE TABLE `game_sugar_step_info` (
  `id` bigint NOT NULL AUTO_INCREMENT COMMENT '唯一自增id',
  `gid` bigint NOT NULL COMMENT '所属的spin id',
  `free_spin_id` int NOT NULL COMMENT '所属的free spin id',
  `aes` int NOT NULL COMMENT 'step在本次spin中的step序号',
  `multipler` varchar(512) DEFAULT '' COMMENT '开始前的倍数状态，偶数个，一对的前面是一维坐标，后面是倍数',
  `grid` varchar(128) DEFAULT '' COMMENT '开始前的网格状态',
  `symbol_links` varchar(1024) DEFAULT '' COMMENT '符号消除的集群信息，JSON格式',
  `score` decimal(10,2) NOT NULL DEFAULT 0.00 COMMENT '本次step的总倍数。基础倍数 * 级联翻倍',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '记录创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '记录更新时间',
  PRIMARY KEY (`id`),
  UNIQUE KEY `uk_gid_aes` (`gid`, `aes`) COMMENT 'gid+aes: 唯一标识一次step',
  KEY `idx_gid` (`gid`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='糖果游戏旋转步骤详情表';

CREATE TABLE `game_sugar_spin_free` (
  `gid` bigint NOT NULL AUTO_INCREMENT COMMENT '一次spin的唯一标识符。连续的free_spin算一次spin',
  `score` decimal(10,2) NOT NULL DEFAULT 0.00 COMMENT '总得分',
  `count` int NOT NULL DEFAULT '0' COMMENT 'step总数',
  `feature` varchar(20) NOT NULL DEFAULT 'normal' COMMENT 'normal:普通spin free:购买的免费旋转 super_free:购买的超级免费旋转',
  `extra_free` int NOT NULL DEFAULT '0' COMMENT '本次spin中额外触发的免费spin数量',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '记录创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '记录更新时间',
  PRIMARY KEY (`gid`),
  KEY `idx_feature` (`feature`),
  KEY `idx_score` (`score`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='糖果游戏spin表';


CREATE TABLE `game_sugar_step_info_free` (
  `id` bigint NOT NULL AUTO_INCREMENT COMMENT '唯一自增id',
  `gid` bigint NOT NULL COMMENT '所属的spin id',
  `free_spin_id` int NOT NULL COMMENT '所属的free spin id',
  `aes` int NOT NULL COMMENT 'step在本次spin中的step序号',
  `multipler` varchar(512) DEFAULT '' COMMENT '开始前的倍数状态，偶数个，一对的前面是一维坐标，后面是倍数',
  `grid` varchar(128) DEFAULT '' COMMENT '开始前的网格状态',
  `symbol_links` varchar(1024) DEFAULT '' COMMENT '符号消除的集群信息，JSON格式',
  `score` decimal(10,2) NOT NULL DEFAULT 0.00 COMMENT '本次step的总倍数。基础倍数 * 级联翻倍',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '记录创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '记录更新时间',
  PRIMARY KEY (`id`),
  UNIQUE KEY `uk_gid_aes` (`gid`, `aes`) COMMENT 'gid+aes: 唯一标识一次step',
  KEY `idx_gid` (`gid`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='糖果游戏旋转步骤详情表';

CREATE TABLE `game_sugar_spin_super` (
  `gid` bigint NOT NULL AUTO_INCREMENT COMMENT '一次spin的唯一标识符。连续的free_spin算一次spin',
  `score` decimal(10,2) NOT NULL DEFAULT 0.00 COMMENT '总得分',
  `count` int NOT NULL DEFAULT '0' COMMENT 'step总数',
  `feature` varchar(20) NOT NULL DEFAULT 'normal' COMMENT 'normal:普通spin free:购买的免费旋转 super_free:购买的超级免费旋转',
  `extra_free` int NOT NULL DEFAULT '0' COMMENT '本次spin中额外触发的免费spin数量',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '记录创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '记录更新时间',
  PRIMARY KEY (`gid`),
  KEY `idx_feature` (`feature`),
  KEY `idx_score` (`score`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='糖果游戏spin表';


CREATE TABLE `game_sugar_step_info_super` (
  `id` bigint NOT NULL AUTO_INCREMENT COMMENT '唯一自增id',
  `gid` bigint NOT NULL COMMENT '所属的spin id',
  `free_spin_id` int NOT NULL COMMENT '所属的free spin id',
  `aes` int NOT NULL COMMENT 'step在本次spin中的step序号',
  `multipler` varchar(512) DEFAULT '' COMMENT '开始前的倍数状态，偶数个，一对的前面是一维坐标，后面是倍数',
  `grid` varchar(128) DEFAULT '' COMMENT '开始前的网格状态',
  `symbol_links` varchar(1024) DEFAULT '' COMMENT '符号消除的集群信息，JSON格式',
  `score` decimal(10,2) NOT NULL DEFAULT 0.00 COMMENT '本次step的总倍数。基础倍数 * 级联翻倍',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '记录创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '记录更新时间',
  PRIMARY KEY (`id`),
  UNIQUE KEY `uk_gid_aes` (`gid`, `aes`) COMMENT 'gid+aes: 唯一标识一次step',
  KEY `idx_gid` (`gid`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='糖果游戏旋转步骤详情表';

CREATE TABLE `game_sugar_user` (
  `id` bigint NOT NULL AUTO_INCREMENT COMMENT 'id',
  `user_id` bigint NOT NULL COMMENT 'user表的id',
  `total_bet` decimal(10,2) NOT NULL DEFAULT '0.00' COMMENT '用户总下注额',
  `total_win` decimal(10,2) NOT NULL DEFAULT '0.00' COMMENT '用户总赢得金额',
  `count` int NOT NULL DEFAULT '0' COMMENT '总spin次数',
  `free_count` int NOT NULL DEFAULT '0' COMMENT '总购买free spin次数',
  `super_free_count` int NOT NULL DEFAULT '0' COMMENT '总购买super_free spin次数',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '记录创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '记录更新时间',
  PRIMARY KEY (`id`),
  UNIQUE KEY `idx_user_id` (`user_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='糖果游戏用户表';

CREATE TABLE `game_sugar_win` (
  `id` bigint NOT NULL AUTO_INCREMENT COMMENT 'id',
  `date` datetime NOT NULL COMMENT '日期',
  `init_bet` decimal(10,2) NOT NULL COMMENT '系统初始下注额',
  `total_bet` decimal(10,2) NOT NULL DEFAULT '0.00' COMMENT '用户总下注额',
  `total_win` decimal(10,2) NOT NULL DEFAULT '0.00' COMMENT '用户总赢得金额',
  `count` int NOT NULL DEFAULT '0' COMMENT '总spin次数',
  `free_count` int NOT NULL DEFAULT '0' COMMENT '总购买free spin次数',
  `super_free_count` int NOT NULL DEFAULT '0' COMMENT '总购买super_free spin次数',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '记录创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '记录更新时间',
  PRIMARY KEY (`id`),
  UNIQUE KEY `idx_date` (`date`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='糖果游戏每日统计表';

CREATE TABLE `game_sugar_record` (
  `id` bigint NOT NULL AUTO_INCREMENT COMMENT 'id',
  `user_id` bigint NOT NULL COMMENT 'user表的id',
  `bet` decimal(10,2) NOT NULL DEFAULT '0.00' COMMENT '用户下注额',
  `win` decimal(10,2) NOT NULL DEFAULT '0.00' COMMENT '用户赢得金额',
  `multiplier` decimal(10,2) NOT NULL DEFAULT '0.00' COMMENT '倍率',
  `kind` varchar(12) NOT NULL DEFAULT '' COMMENT '游戏模式',
  `status` int NOT NULL DEFAULT 0 COMMENT '状态.0:进行中,1:完成',
  `extra_free` int NOT NULL DEFAULT '0' COMMENT '本次spin中额外触发的免费spin数量',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '记录创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '记录更新时间',
  PRIMARY KEY (`id`),
  KEY `idx_user_id` (`user_id`),
  KEY `idx_create_time` (`create_time`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='糖果游戏用户记录表';
