--
-- Host: localhost    Database: stc_clan
-- ------------------------------------------------------


--
-- Table structure for table `announcement_likes`
--

CREATE TABLE `announcement_likes` (
  `id` int NOT NULL AUTO_INCREMENT,
  `announcement_id` int NOT NULL,
  `user_id` int NOT NULL,
  `created_at` datetime DEFAULT CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`),
  UNIQUE KEY `unique_like` (`announcement_id`,`user_id`),
  KEY `user_id` (`user_id`),
  CONSTRAINT `announcement_likes_ibfk_1` FOREIGN KEY (`announcement_id`) REFERENCES `announcements` (`id`) ON DELETE CASCADE,
  CONSTRAINT `announcement_likes_ibfk_2` FOREIGN KEY (`user_id`) REFERENCES `members` (`id`) ON DELETE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

--
-- Dumping data for table `announcement_likes`
--

INSERT INTO `announcement_likes` VALUES (1,5,12,'2026-02-07 01:17:00');

--
-- Table structure for table `announcement_reads`
--

CREATE TABLE `announcement_reads` (
  `id` int NOT NULL AUTO_INCREMENT,
  `announcement_id` int NOT NULL,
  `user_id` int NOT NULL,
  `created_at` datetime DEFAULT CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`),
  UNIQUE KEY `unique_read` (`announcement_id`,`user_id`),
  KEY `user_id` (`user_id`),
  CONSTRAINT `announcement_reads_ibfk_1` FOREIGN KEY (`announcement_id`) REFERENCES `announcements` (`id`) ON DELETE CASCADE,
  CONSTRAINT `announcement_reads_ibfk_2` FOREIGN KEY (`user_id`) REFERENCES `members` (`id`) ON DELETE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

--
-- Dumping data for table `announcement_reads`
--

INSERT INTO `announcement_reads` VALUES (1,5,12,'2026-02-07 01:17:02');

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

CREATE TABLE `announcements` (
  `id` int NOT NULL AUTO_INCREMENT,
  `title` varchar(200) NOT NULL,
  `content` text NOT NULL,
  `author_id` int NOT NULL,
  `views` int DEFAULT '0',
  `likes` int DEFAULT '0',
  `created_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`),
  KEY `author_id` (`author_id`),
  CONSTRAINT `announcements_ibfk_1` FOREIGN KEY (`author_id`) REFERENCES `members` (`id`) ON DELETE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=13 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

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

INSERT INTO `announcements` VALUES (5,'포인트 획득 & 사용 가이드','■ 포인트 획득 방법\n\n▶ 게임센터 (게임 메뉴)\n• 슬롯머신: 100~1,000P 배팅\n  - 핵 3개 일치: x50 당첨\n  - 캐리어 3개: x15 / 탱크 3개: x8\n  - 마린 3개: x5 / 가스 3개: x4 / 미네랄 3개: x3\n  - 아무거나 2개 일치: x1.5\n• 핵 발사 (Nuclear Launch): 100~2,000P 배팅\n  - 9칸 중 안전지대 선택 시 x1.5 배당\n\n▶ 관리자 지급\n• 이벤트, 클랜전 참여, 활동 보상 등으로 관리자가 포인트를 지급합니다.\n\n■ 포인트 사용처\n\n▶ 아이템 상점 (상점 메뉴)\n스타크래프트 유닛 아이콘을 구매하여 프로필 이미지로 설정!\n• 100P: 미네랄, 가스\n• 300P: SCV, 프로브, 드론\n• 500P: 마린, 질럿, 저글링\n• 800P: 메딕, 히드라, 드라군, 파이어뱃\n• 1,500P: 하이템플러, 뮤탈리스크, 시즈탱크\n• 2,000P: 다크템플러, 디파일러\n• 3,000P: 커맨드센터, 넥서스, 해처리\n• 5,000P: 캐리어, 울트라리스크, 배틀크루저\n\n많이 활동하고 게임도 즐기면서 포인트를 모아 멋진 아이콘을 수집해보세요!',12,8,1,'2026-02-06 16:13:01'),(8,'2026 시즌1 래더 시작!','새로운 시즌이 시작되었습니다. 모든 클랜원 래더 참가 부탁드립니다.\n\n목표: 클랜원 전원 B tier 이상!\n래더 포인트 보상도 준비되어 있으니 많은 참여 바랍니다.',12,157,0,'2026-02-07 01:00:00'),(9,'STC vs DIC 클랜전 일정 안내','2월 15일 토요일 저녁 8시\n상대: DIC 클랜\n참가 신청은 채팅방에서 받겠습니다.\n\n최소 7명 필요합니다!',12,99,0,'2026-02-06 09:00:00'),(10,'홈페이지 기능 업데이트 안내','클랜 기록실, 갤러리, 게임센터가 추가되었습니다.\n많이 이용해주세요!\n\n버그 발견 시 관리자에게 알려주세요.',12,73,0,'2026-02-05 05:00:00'),(11,'신규 가입자 환영 이벤트','이번 달 가입자 전원 5000P 지급!\n추천인에게도 3000P 추가 지급됩니다.\n\n가입문의: 카카오톡 오픈채팅',12,46,0,'2026-02-04 00:00:00'),(12,'클랜 규칙 및 매너 안내','1. 상대방 존중\n2. 래더 주 3회 이상 참가\n3. 클랜전 적극 참여\n4. 장기 미접속 시 사전 고지\n\n위반 시 경고 후 제명될 수 있습니다.',12,210,0,'2026-02-03 03:00:00');

--
-- Table structure for table `attendance`
--

CREATE TABLE `attendance` (
  `id` int NOT NULL AUTO_INCREMENT,
  `user_id` int NOT NULL,
  `check_date` date NOT NULL,
  `created_at` datetime DEFAULT CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`),
  UNIQUE KEY `uq_user_date` (`user_id`,`check_date`),
  KEY `idx_date` (`check_date`)
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

--
-- Dumping data for table `attendance`
--

INSERT INTO `attendance` VALUES (1,12,'2026-02-08','2026-02-08 09:14:18'),(2,16,'2026-02-08','2026-02-08 09:15:25');

--
-- Table structure for table `board_categories`
--

CREATE TABLE `board_categories` (
  `id` int NOT NULL AUTO_INCREMENT,
  `slug` varchar(50) NOT NULL,
  `name` varchar(100) NOT NULL,
  `description` varchar(255) DEFAULT NULL,
  `icon` varchar(10) DEFAULT NULL,
  `sort_order` int DEFAULT '0',
  PRIMARY KEY (`id`),
  UNIQUE KEY `slug` (`slug`)
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

--
-- Dumping data for table `board_categories`
--

INSERT INTO `board_categories` VALUES (1,'free','자유게시판','자유롭게 이야기를 나눠보세요','💬',1),(2,'strategy','전략/전술','스타크래프트 전략과 전술 공유','🎯',2),(3,'clanwar','클랜전','클랜전 관련 게시글','⚔️',3),(4,'suggest','건의사항','클랜 및 홈페이지 건의사항','💡',4),(5,'humor','유머게시판','재미있는 이야기와 짤','😂',5);

--
-- Table structure for table `board_posts`
--

CREATE TABLE `board_posts` (
  `id` int NOT NULL AUTO_INCREMENT,
  `title` varchar(200) NOT NULL,
  `content` text NOT NULL,
  `author_id` int NOT NULL,
  `views` int DEFAULT '0',
  `created_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
  `updated_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  `likes` int DEFAULT '0',
  `dislikes` int DEFAULT '0',
  `category` varchar(50) DEFAULT 'free',
  `is_notice` tinyint(1) DEFAULT '0',
  PRIMARY KEY (`id`),
  KEY `author_id` (`author_id`),
  KEY `idx_created` (`created_at`),
  CONSTRAINT `board_posts_ibfk_1` FOREIGN KEY (`author_id`) REFERENCES `members` (`id`) ON DELETE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=22 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

--
-- Dumping data for table `board_posts`
--

INSERT INTO `board_posts` VALUES (6,'테란 빌드 추천좀','요즘 테란으로 프로토스 상대 빌드가 안먹혀요\n팩토리 먼저 가야할까요 아님 바로 메딕 러시?',13,88,'2026-02-07 00:30:00','2026-02-07 23:59:07',12,0,'strategy',0),(7,'어제 래더 S tier 달성했습니다!','드디어 S tier 찍었어요 ㅠㅠ\n6시간 연속 래더 돌린 보람이 있네요\n\n다들 화이팅!',14,236,'2026-02-06 23:00:00','2026-02-07 15:26:45',45,0,'free',0),(8,'저그 뮤탈 운영 팁','뮤탈 12기 모이면 바로 멀티 견제 들어가세요\n절대 정면 싸움 하지 마시고\n해처리 앞에 스커지 항상 준비',15,156,'2026-02-06 16:00:00','2026-02-07 11:27:32',28,0,'strategy',0),(10,'클랜전 연습 같이 해요','이번주 DIC 클랜전 대비해서 연습 상대 구합니다\n저녁 8시 이후 가능하신 분 댓글!',12,89,'2026-02-06 11:00:00','2026-02-07 11:27:32',15,0,'clanwar',0),(11,'프로토스 캐리어 빌드 정리','1. 포지 퍼스트\n2. 넥서스 2개 확보\n3. 스타게이트 2개\n4. 캐리어 6기 + 하이템플러\n\n상세 타이밍은 본문 참고',45,198,'2026-02-06 07:00:00','2026-02-07 11:27:32',33,0,'strategy',0),(12,'슬롯머신 대박남 ㅎㅎ','5만 포인트 잭팟!! 🎰\n인생은 도박이다',30,145,'2026-02-06 05:00:00','2026-02-07 11:27:32',22,0,'free',0),(13,'홈페이지 건의사항','1v1 대전 신청 기능이 있으면 좋겠어요\n상대 찾기가 좀 힘들어서..',31,56,'2026-02-06 02:00:00','2026-02-07 11:27:32',8,0,'suggest',0),(14,'STC vs ABC 클랜전 후기','어제 클랜전 5:3으로 이겼습니다!\nAce형 에이스 결정전 레전드였음\n\n다음 상대는 DIC!',13,267,'2026-02-05 14:00:00','2026-02-07 11:27:32',54,0,'clanwar',0),(15,'래더 팁: 스카웃 타이밍','9 서플 → 스카웃\n상대 가스 타이밍 보고 빌드 판단\n\n가스 빠르면 테크, 느리면 물량',42,134,'2026-02-05 11:00:00','2026-02-07 11:27:32',19,0,'strategy',0),(16,'저그로 테란 잡는법 알려주세요','매번 시즈탱크에 막히네요 ㅠ\n럴커가 답인가요?',33,178,'2026-02-05 06:00:00','2026-02-07 11:27:32',24,0,'strategy',0),(17,'이번 시즌 목표!','다들 이번 시즌 목표가 뭔가요?\n저는 A tier 목표입니다',34,92,'2026-02-05 01:00:00','2026-02-07 11:27:32',11,0,'free',0),(18,'웃긴 리플레이 공유','상대가 배럭을 제 본진에 지음 ㅋㅋㅋ\n프록시 배럭인데 제 본진 안에 지은건 처음봄',36,292,'2026-02-04 13:00:00','2026-02-08 00:15:02',58,0,'humor',0),(19,'SPL 1주차 MVP는 누구?','제 생각엔 Ace형이 MVP\n3전 3승 미쳤음',37,167,'2026-02-04 09:00:00','2026-02-07 11:27:32',31,0,'free',0),(20,'클랜 가입 인사드립니다','안녕하세요! 새로 가입한 minimap입니다\n저그 유저이고 래더 C tier입니다\n잘 부탁드려요!',47,124,'2026-02-04 03:00:00','2026-02-07 11:27:32',20,0,'free',0),(21,'TEST','TEST',16,3,'2026-02-07 23:59:17','2026-02-07 23:59:52',0,0,'free',0);

--
-- Table structure for table `chat_messages`
--

CREATE TABLE `chat_messages` (
  `id` int NOT NULL AUTO_INCREMENT,
  `user_id` int NOT NULL,
  `message` text NOT NULL,
  `created_at` datetime DEFAULT CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`),
  KEY `idx_created` (`created_at`),
  KEY `user_id` (`user_id`),
  CONSTRAINT `chat_messages_ibfk_1` FOREIGN KEY (`user_id`) REFERENCES `members` (`id`) ON DELETE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

--
-- Dumping data for table `chat_messages`
--

INSERT INTO `chat_messages` VALUES (2,12,'두번째 테스트\\!','2026-02-07 01:03:31');

--
-- Table structure for table `clan_match_results`
--

CREATE TABLE `clan_match_results` (
  `id` int NOT NULL AUTO_INCREMENT,
  `record_id` int NOT NULL,
  `set_number` int DEFAULT '1',
  `player_name` varchar(100) NOT NULL,
  `player_race` enum('T','P','Z','R') DEFAULT NULL,
  `opponent_name` varchar(100) NOT NULL,
  `opponent_race` enum('T','P','Z','R') DEFAULT NULL,
  `result` enum('win','loss') NOT NULL,
  `map_name` varchar(100) DEFAULT NULL,
  PRIMARY KEY (`id`),
  KEY `idx_record` (`record_id`),
  KEY `idx_player` (`player_name`),
  KEY `idx_board_player` (`record_id`,`player_name`),
  CONSTRAINT `clan_match_results_ibfk_1` FOREIGN KEY (`record_id`) REFERENCES `clan_records` (`id`) ON DELETE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

--
-- Dumping data for table `clan_match_results`
--

INSERT INTO `clan_match_results` VALUES (1,4,1,'[S.Tc]Ace','T','DIC_Hero','P','win','Lost Temple'),(2,4,2,'[S.Tc]Pro','Z','DIC_Flash','T','loss','Fighting Spirit'),(3,4,3,'[S.Tc]Ace','T','DIC_Rain','P','win','Benzene'),(4,4,4,'[S.Tc]King','P','DIC_Mind','T','win','Python');

--
-- Table structure for table `clan_record_comments`
--

CREATE TABLE `clan_record_comments` (
  `id` int NOT NULL AUTO_INCREMENT,
  `record_id` int NOT NULL,
  `author_id` int NOT NULL,
  `content` text NOT NULL,
  `created_at` datetime DEFAULT CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`),
  KEY `record_id` (`record_id`),
  KEY `author_id` (`author_id`),
  CONSTRAINT `clan_record_comments_ibfk_1` FOREIGN KEY (`record_id`) REFERENCES `clan_records` (`id`) ON DELETE CASCADE,
  CONSTRAINT `clan_record_comments_ibfk_2` FOREIGN KEY (`author_id`) REFERENCES `members` (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

--
-- Dumping data for table `clan_record_comments`
--


--
-- Table structure for table `clan_records`
--

CREATE TABLE `clan_records` (
  `id` int NOT NULL AUTO_INCREMENT,
  `board_type` enum('external_war','internal_spl','internal_stpl','individual_league','endgame','other_tournament') NOT NULL,
  `title` varchar(255) NOT NULL,
  `content` text,
  `match_date` date DEFAULT NULL,
  `result_summary` varchar(200) DEFAULT NULL,
  `author_id` int NOT NULL,
  `views` int DEFAULT '0',
  `created_at` datetime DEFAULT CURRENT_TIMESTAMP,
  `updated_at` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`),
  KEY `author_id` (`author_id`),
  KEY `idx_board_type` (`board_type`),
  KEY `idx_created` (`created_at`),
  CONSTRAINT `clan_records_ibfk_1` FOREIGN KEY (`author_id`) REFERENCES `members` (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

--
-- Dumping data for table `clan_records`
--

INSERT INTO `clan_records` VALUES (4,'external_war','STC vs DIC 클랜전','STC vs DIC 클랜전 결과','2026-02-07','3승 1패 승리',12,8,'2026-02-07 17:00:44','2026-02-08 00:28:16');

--
-- Table structure for table `comments`
--

CREATE TABLE `comments` (
  `id` int NOT NULL AUTO_INCREMENT,
  `post_id` int NOT NULL,
  `post_type` enum('announcement','event','board','gallery') NOT NULL,
  `author_id` int NOT NULL,
  `content` text NOT NULL,
  `created_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`),
  KEY `author_id` (`author_id`),
  CONSTRAINT `comments_ibfk_1` FOREIGN KEY (`author_id`) REFERENCES `members` (`id`) ON DELETE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=42 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

--
-- Dumping data for table `comments`
--

INSERT INTO `comments` VALUES (2,2,'board',12,'축하합니다! 역시 에이스!','2026-02-07 00:00:00'),(3,2,'board',15,'ㅋㅋ 대단하네 S티어 ㄷㄷ','2026-02-07 00:15:00'),(5,3,'board',14,'S tier 축하!! 나도 올라가야하는데','2026-02-06 23:30:00'),(6,3,'board',12,'ㅋㅋ 역시 프로님','2026-02-07 00:00:00'),(7,4,'board',33,'뮤탈 팁 감사합니다','2026-02-06 17:00:00'),(8,4,'board',34,'오 이거 유용하네요','2026-02-06 18:00:00'),(9,5,'board',12,'ㅋㅋㅋㅋ 리플 봤는데 레전드','2026-02-06 13:30:00'),(10,5,'board',14,'어떻게 이기냐 ㅋㅋ','2026-02-06 14:00:00'),(11,5,'board',15,'프로브 러시 ㅋㅋㅋ 레전드','2026-02-06 14:30:00'),(12,5,'board',30,'이게 말이 되나 ㅋㅋ','2026-02-06 15:00:00'),(13,6,'board',14,'저도 같이 하고 싶습니다!','2026-02-06 11:30:00'),(14,6,'board',15,'8시 가능합니다','2026-02-06 12:00:00'),(15,7,'board',12,'캐리어 빌드 정리 감사합니다','2026-02-06 07:30:00'),(16,10,'board',15,'수고하셨습니다! 다음도 이기자','2026-02-05 15:00:00'),(17,10,'board',30,'Ace형 레전드!','2026-02-05 16:00:00'),(18,16,'board',12,'환영합니다! 같이 래더 돌아요','2026-02-04 04:00:00'),(19,16,'board',13,'반갑습니다~','2026-02-04 05:00:00'),(20,16,'board',14,'환영해요! 저그면 연습상대 해드릴게요','2026-02-04 06:00:00'),(21,1,'gallery',13,'마린 러쉬 타이밍 완벽하네요 ㄷㄷ','2026-02-07 10:02:40'),(22,1,'gallery',14,'이거 빌드오더 좀 알려주세요!','2026-02-07 11:02:40'),(23,1,'gallery',17,'메딕 합류 타이밍이 핵심이죠','2026-02-07 11:12:40'),(24,1,'gallery',30,'역시 테란은 마린이지','2026-02-07 11:32:40'),(25,2,'gallery',15,'캐리어 빌드 진짜 예술이다','2026-02-07 09:02:40'),(26,2,'gallery',20,'인터셉터 업그레이드 필수죠','2026-02-07 10:02:40'),(27,2,'gallery',12,'이거 몇분 타이밍인가요?','2026-02-07 10:32:40'),(28,2,'gallery',22,'프로토스 최종병기 ㅋㅋ','2026-02-07 11:02:40'),(29,3,'gallery',19,'뮤탈 컨트롤 미쳤다 진짜','2026-02-07 08:02:40'),(30,3,'gallery',13,'저그 상대할때 제일 무서운 유닛','2026-02-07 09:02:40'),(31,3,'gallery',23,'스커지 타이밍 잡기가 핵심','2026-02-07 10:02:40'),(32,4,'gallery',12,'로템 진짜 명맵이지 ㅋㅋ','2026-02-07 07:02:40'),(33,4,'gallery',15,'아 이거 그때 경기 맞죠? 소름돋았는데','2026-02-07 08:02:40'),(34,4,'gallery',21,'다시 봐도 감동적이네요','2026-02-07 09:02:40'),(35,4,'gallery',29,'로템에서 테란 진짜 강하죠','2026-02-07 10:02:40'),(36,5,'gallery',12,'우리팀 화이팅!! 연승가자','2026-02-07 06:02:40'),(37,5,'gallery',17,'GG 수고하셨습니다','2026-02-07 07:02:40'),(38,5,'gallery',20,'다음 클랜전도 기대됩니다','2026-02-07 08:02:40'),(39,6,'gallery',14,'S티어 축하드립니다!! 대단해요','2026-02-07 05:02:40'),(40,6,'gallery',13,'래더 몇판 찍으신건가요?','2026-02-07 06:02:40');

--
-- Table structure for table `events`
--

CREATE TABLE `events` (
  `id` int NOT NULL AUTO_INCREMENT,
  `title` varchar(200) NOT NULL,
  `description` text,
  `event_date` date NOT NULL,
  `start_time` time DEFAULT NULL,
  `end_time` time DEFAULT NULL,
  `status` enum('upcoming','ongoing','completed') DEFAULT 'upcoming',
  `created_by` int NOT NULL,
  `created_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`),
  KEY `created_by` (`created_by`),
  CONSTRAINT `events_ibfk_1` FOREIGN KEY (`created_by`) REFERENCES `members` (`id`) ON DELETE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

--
-- Dumping data for table `events`
--


--
-- Table structure for table `gallery`
--

CREATE TABLE `gallery` (
  `id` int NOT NULL AUTO_INCREMENT,
  `title` varchar(255) NOT NULL,
  `description` text,
  `image_path` varchar(500) NOT NULL,
  `author_id` int NOT NULL,
  `views` int DEFAULT '0',
  `likes` int DEFAULT '0',
  `created_at` datetime DEFAULT CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`),
  KEY `author_id` (`author_id`),
  KEY `idx_created` (`created_at`),
  CONSTRAINT `gallery_ibfk_1` FOREIGN KEY (`author_id`) REFERENCES `members` (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

--
-- Dumping data for table `gallery`
--

INSERT INTO `gallery` VALUES (1,'Terran Marine Rush','OP -72 채널 리플레이 - 마린 러시 명장면','images/gallery/sample1.svg',12,47,8,'2026-02-07 20:18:34'),(2,'Protoss Carrier Build','STC 내부 리그 결승전 캐리어 빌드','images/gallery/sample2.svg',12,35,12,'2026-02-07 20:18:34'),(3,'Zerg Mutalisk Harass','STC vs DIC 클랜전 3세트 뮤탈 운영','images/gallery/sample3.svg',12,28,5,'2026-02-07 20:18:34'),(4,'Lost Temple 명장면','STC 내부리그 결승 Lost Temple에서 터렛 러시 성공','images/gallery/sample1.svg',13,67,15,'2026-02-06 20:00:00'),(5,'클랜전 승리 기념','STC vs ABC 클랜전 5:3 승리! 단체 스크린샷','images/gallery/sample2.svg',14,89,23,'2026-02-05 22:00:00'),(6,'래더 S tier 인증','S tier 달성 인증 스크린샷입니다','images/gallery/sample3.svg',15,112,34,'2026-02-07 08:30:00');

--
-- Table structure for table `game_log`
--

CREATE TABLE `game_log` (
  `id` int NOT NULL AUTO_INCREMENT,
  `user_id` int NOT NULL,
  `game_type` varchar(30) NOT NULL,
  `bet_amount` int DEFAULT '0',
  `result_amount` int DEFAULT '0',
  `result_detail` varchar(255) DEFAULT NULL,
  `created_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`),
  KEY `idx_user_game` (`user_id`,`game_type`),
  CONSTRAINT `game_log_ibfk_1` FOREIGN KEY (`user_id`) REFERENCES `members` (`id`) ON DELETE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=31 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

--
-- Dumping data for table `game_log`
--

INSERT INTO `game_log` VALUES (12,12,'slot',100,200,'💎💎💎 x3','2026-02-07 02:12:00'),(13,12,'lottery',200,-200,'Pick[1,5,9] Draw[2,3,4] 0match','2026-02-07 02:12:07'),(14,12,'rps',100,100,'✊vs✌️ WIN','2026-02-07 02:12:08'),(18,13,'slot',500,2500,NULL,'2026-02-07 10:27:32'),(19,14,'slot',1000,5000,NULL,'2026-02-07 09:27:32'),(20,15,'mine',300,900,NULL,'2026-02-07 10:57:32'),(22,30,'lottery',200,6000,NULL,'2026-02-07 08:27:32'),(23,33,'slot',500,1500,NULL,'2026-02-07 07:27:32'),(24,34,'mine',500,2000,NULL,'2026-02-07 06:27:32'),(25,14,'rps',1000,2000,NULL,'2026-02-07 11:12:32'),(26,12,'slot',500,3000,NULL,'2026-02-07 11:17:32'),(27,16,'lottery',200,-200,'Pick[1,4,9] Draw[3,6,8] 0match','2026-02-07 15:02:27'),(28,16,'lottery',200,-200,'Pick[3,6,8] Draw[1,2,7] 0match','2026-02-07 15:02:31'),(29,16,'lottery',200,-200,'Pick[5,6,9] Draw[1,3,8] 0match','2026-02-07 15:02:34'),(30,16,'lottery',200,0,'Pick[2,5,6] Draw[1,2,8] 1match','2026-02-07 15:02:39');

--
-- Table structure for table `post_likes`
--

CREATE TABLE `post_likes` (
  `id` int NOT NULL AUTO_INCREMENT,
  `post_id` int NOT NULL,
  `post_type` enum('board','announcement') DEFAULT 'board',
  `user_id` int NOT NULL,
  `like_type` enum('like','dislike') NOT NULL,
  `created_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`),
  UNIQUE KEY `unique_like` (`post_id`,`post_type`,`user_id`),
  KEY `user_id` (`user_id`),
  CONSTRAINT `post_likes_ibfk_1` FOREIGN KEY (`user_id`) REFERENCES `members` (`id`) ON DELETE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

--
-- Dumping data for table `post_likes`
--


--
-- Table structure for table `shop_items`
--

CREATE TABLE `shop_items` (
  `id` int NOT NULL AUTO_INCREMENT,
  `name` varchar(100) NOT NULL,
  `description` varchar(255) DEFAULT NULL,
  `icon_file` varchar(255) NOT NULL,
  `price` int NOT NULL DEFAULT '0',
  `category` varchar(50) DEFAULT 'icon',
  `race` varchar(20) DEFAULT NULL,
  `sort_order` int DEFAULT '0',
  `is_active` tinyint(1) DEFAULT '1',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=24 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

--
-- Dumping data for table `shop_items`
--

INSERT INTO `shop_items` VALUES (1,'Marine','테란 기본 보병','marine.svg',500,'icon','terran',1,1),(2,'Medic','테란 의무병','medic.svg',800,'icon','terran',2,1),(3,'Firebat','테란 화염방사병','firebat.svg',800,'icon','terran',3,1),(4,'Siege Tank','테란 시즈탱크','siege_tank.svg',1500,'icon','terran',4,1),(5,'Battlecruiser','테란 최종병기','battlecruiser.svg',5000,'icon','terran',5,1),(6,'SCV','테란 일꾼','scv.svg',300,'icon','terran',0,1),(7,'Zealot','프로토스 광전사','zealot.svg',500,'icon','protoss',1,1),(8,'Dragoon','프로토스 용기병','dragoon.svg',800,'icon','protoss',2,1),(9,'High Templar','프로토스 고위기사','high_templar.svg',1500,'icon','protoss',3,1),(10,'Dark Templar','프로토스 암흑기사','dark_templar.svg',2000,'icon','protoss',4,1),(11,'Carrier','프로토스 최종병기','carrier.svg',5000,'icon','protoss',5,1),(12,'Probe','프로토스 일꾼','probe.svg',300,'icon','protoss',0,1),(13,'Zergling','저그 저글링','zergling.svg',500,'icon','zerg',1,1),(14,'Hydralisk','저그 히드라리스크','hydralisk.svg',800,'icon','zerg',2,1),(15,'Mutalisk','저그 뮤탈리스크','mutalisk.svg',1500,'icon','zerg',3,1),(16,'Defiler','저그 디파일러','defiler.svg',2000,'icon','zerg',4,1),(17,'Ultralisk','저그 최종병기','ultralisk.svg',5000,'icon','zerg',5,1),(18,'Drone','저그 일꾼','drone.svg',300,'icon','zerg',0,1),(19,'Mineral','미네랄','mineral.svg',100,'icon',NULL,10,1),(20,'Vespene Gas','베스핀 가스','vespene.svg',100,'icon',NULL,11,1),(21,'Command Center','테란 커맨드센터','command_center.svg',3000,'icon','terran',6,1),(22,'Nexus','프로토스 넥서스','nexus.svg',3000,'icon','protoss',6,1),(23,'Hatchery','저그 해처리','hatchery.svg',3000,'icon','zerg',6,1);

--
-- Table structure for table `site_settings`
--

CREATE TABLE `site_settings` (
  `setting_key` varchar(50) NOT NULL,
  `setting_value` text,
  `updated_at` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  PRIMARY KEY (`setting_key`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

--
-- Dumping data for table `site_settings`
--

INSERT INTO `site_settings` VALUES ('last_crawl','2026-02-08 00:00:27','2026-02-08 00:00:27');

--
-- Table structure for table `user_items`
--

CREATE TABLE `user_items` (
  `id` int NOT NULL AUTO_INCREMENT,
  `user_id` int NOT NULL,
  `item_id` int NOT NULL,
  `purchased_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
  `is_equipped` tinyint(1) DEFAULT '0',
  PRIMARY KEY (`id`),
  UNIQUE KEY `unique_user_item` (`user_id`,`item_id`),
  KEY `item_id` (`item_id`),
  CONSTRAINT `user_items_ibfk_1` FOREIGN KEY (`user_id`) REFERENCES `members` (`id`) ON DELETE CASCADE,
  CONSTRAINT `user_items_ibfk_2` FOREIGN KEY (`item_id`) REFERENCES `shop_items` (`id`) ON DELETE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

--
-- Dumping data for table `user_items`
--

INSERT INTO `user_items` VALUES (2,16,13,'2026-02-07 23:59:38',1);

--
-- Table structure for table `user_permissions`
--

CREATE TABLE `user_permissions` (
  `id` int NOT NULL AUTO_INCREMENT,
  `user_id` int NOT NULL,
  `permission` varchar(50) NOT NULL,
  `granted_by` int NOT NULL,
  `created_at` datetime DEFAULT CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`),
  UNIQUE KEY `uq_user_perm` (`user_id`,`permission`),
  KEY `idx_user` (`user_id`)
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

--
-- Dumping data for table `user_permissions`
--

INSERT INTO `user_permissions` VALUES (1,7,'manage_posts',16,'2026-02-08 00:27:53'),(2,7,'manage_comments',16,'2026-02-08 00:27:54'),(3,7,'manage_gallery',16,'2026-02-08 00:27:54'),(4,7,'manage_announcements',16,'2026-02-08 00:27:55'),(5,7,'manage_clan_records',16,'2026-02-08 00:27:55');


