-- 追走テーブル作成SQL
-- 各返信回数に対して複数の追走メッセージを設定可能にする

CREATE TABLE IF NOT EXISTS follow_ups (
    id INT PRIMARY KEY AUTO_INCREMENT,
    program_id_link INT NOT NULL COMMENT 'program_idsテーブルのID',
    turn_number INT NOT NULL COMMENT '返信回数（1,2,3...）',
    follow_up_order INT NOT NULL COMMENT '追走順序（1,2,3...）',
    delay_hours INT NOT NULL DEFAULT 0 COMMENT '予約時間（時）',
    delay_minutes INT NOT NULL DEFAULT 0 COMMENT '予約分数（分）',
    prompt_text TEXT COMMENT 'AIプロンプト',
    photonum INT DEFAULT NULL COMMENT '写真番号',
    is_operator_mode BOOLEAN DEFAULT FALSE COMMENT 'オペレーターモード',
    is_multi_ai_mode BOOLEAN DEFAULT FALSE COMMENT '複数AI返信モード',
    multi_send_count INT DEFAULT NULL COMMENT '連続送信数(1-999)',
    operator_message TEXT COMMENT 'オペレーターメッセージ',
    billing VARCHAR(10) DEFAULT NULL COMMENT '課金情報（未指定/ナシ/アリ）',
    point_min INT DEFAULT NULL COMMENT 'ポイント最小値',
    point_max INT DEFAULT NULL COMMENT 'ポイント最大値',
    created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
    updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
    FOREIGN KEY (program_id_link) REFERENCES program_ids(id) ON DELETE CASCADE,
    UNIQUE KEY unique_follow_up (program_id_link, turn_number, follow_up_order),
    INDEX idx_turn_follow (program_id_link, turn_number)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;