import sqlite3

db_name = 'finsight.db'

def init_db():
    conn = sqlite3.connect(db_name)
    cursor = conn.cursor()
    
    cursor.execute('''
    CREATE TABLE IF NOT EXISTS users (
        id INTEGER PRIMARY KEY AUTOINCREMENT,
        google_id TEXT UNIQUE,
        email TEXT UNIQUE,
        name TEXT,
        first_name TEXT,
        verified_email TEXT,
        created_time DATETIME,
        last_login_time DATETIME,
        login_count INT INTEGER DEFAULT 1,
        access_token TEXT,
        picture_url TEXT
    );          
    ''')

    # Create table for tasks
    cursor.execute('''
    CREATE TABLE IF NOT EXISTS tasks (
        id INTEGER PRIMARY KEY AUTOINCREMENT,
        email TEXT NOT NULL,
        task_name TEXT NOT NULL,
        priority TEXT NOT NULL,
        assignee TEXT NOT NULL,
        description TEXT NOT NULL,
        task_start_date DATETIME NOT NULL,
        task_end_date DATETIME NOT NULL,
        updated_date DATETIME,
        updated_count INTEGER DEFAULT 0
    )
    ''')

    conn.commit()
    conn.close()
    
    return db_name

if __name__ == "__main__":
    init_db()
