import { MigrationInterface, QueryRunner } from "typeorm";

export class Migrations1743580737505 implements MigrationInterface {
    name = 'Migrations1743580737505'

    public async up(queryRunner: QueryRunner): Promise<void> {
        await queryRunner.query(`ALTER TABLE "social_media_posts" ADD "is_uploaded_on_s3" boolean NOT NULL DEFAULT false`);
        await queryRunner.query(`ALTER TABLE "youtube_channels" ALTER COLUMN "engagement_rate" SET DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "instagram_profiles" ALTER COLUMN "engagement_rate" SET DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "tiktok_profiles" ALTER COLUMN "engagement_rate" SET DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "xiaohongshu_profiles" ALTER COLUMN "engagement_rate" TYPE numeric(8,4)`);
    }

    public async down(queryRunner: QueryRunner): Promise<void> {
        await queryRunner.query(`ALTER TABLE "xiaohongshu_profiles" ALTER COLUMN "engagement_rate" TYPE numeric(8,2)`);
        await queryRunner.query(`ALTER TABLE "tiktok_profiles" ALTER COLUMN "engagement_rate" SET DEFAULT 0.0000`);
        await queryRunner.query(`ALTER TABLE "instagram_profiles" ALTER COLUMN "engagement_rate" SET DEFAULT 0.0000`);
        await queryRunner.query(`ALTER TABLE "youtube_channels" ALTER COLUMN "engagement_rate" SET DEFAULT 0.0000`);
        await queryRunner.query(`ALTER TABLE "social_media_posts" DROP COLUMN "is_uploaded_on_s3"`);
    }

}
