import { MigrationInterface, QueryRunner } from "typeorm";

export class Migrations1735219572882 implements MigrationInterface {
    name = 'Migrations1735219572882'

    public async up(queryRunner: QueryRunner): Promise<void> {
        await queryRunner.query(`ALTER TABLE "facebook_posts" DROP COLUMN "like_counts"`);
        await queryRunner.query(`ALTER TABLE "facebook_posts" ADD "like_counts" bigint NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "facebook_posts" DROP COLUMN "comment_count"`);
        await queryRunner.query(`ALTER TABLE "facebook_posts" ADD "comment_count" bigint NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "facebook_pages" DROP COLUMN "fan_count"`);
        await queryRunner.query(`ALTER TABLE "facebook_pages" ADD "fan_count" bigint NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "facebook_pages" DROP COLUMN "followers_count"`);
        await queryRunner.query(`ALTER TABLE "facebook_pages" ADD "followers_count" bigint NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "facebook_pages" DROP COLUMN "engagement_count"`);
        await queryRunner.query(`ALTER TABLE "facebook_pages" ADD "engagement_count" bigint NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "facebook_pages" DROP COLUMN "post_count"`);
        await queryRunner.query(`ALTER TABLE "facebook_pages" ADD "post_count" bigint NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "facebook_pages" DROP COLUMN "total_views"`);
        await queryRunner.query(`ALTER TABLE "facebook_pages" ADD "total_views" bigint NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "instagram_medias" DROP COLUMN "comments_count"`);
        await queryRunner.query(`ALTER TABLE "instagram_medias" ADD "comments_count" bigint NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "instagram_medias" DROP COLUMN "like_count"`);
        await queryRunner.query(`ALTER TABLE "instagram_medias" ADD "like_count" bigint NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "instagram_profiles" DROP COLUMN "follows_count"`);
        await queryRunner.query(`ALTER TABLE "instagram_profiles" ADD "follows_count" bigint NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "instagram_profiles" DROP COLUMN "media_count"`);
        await queryRunner.query(`ALTER TABLE "instagram_profiles" ADD "media_count" bigint NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "instagram_profiles" DROP COLUMN "followers_count"`);
        await queryRunner.query(`ALTER TABLE "instagram_profiles" ADD "followers_count" bigint NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "instagram_profiles" DROP COLUMN "engagement_count"`);
        await queryRunner.query(`ALTER TABLE "instagram_profiles" ADD "engagement_count" bigint NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "instagram_profiles" DROP COLUMN "total_views"`);
        await queryRunner.query(`ALTER TABLE "instagram_profiles" ADD "total_views" bigint NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "tiktok_videos" DROP COLUMN "height"`);
        await queryRunner.query(`ALTER TABLE "tiktok_videos" ADD "height" bigint NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "tiktok_videos" DROP COLUMN "width"`);
        await queryRunner.query(`ALTER TABLE "tiktok_videos" ADD "width" bigint NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "tiktok_videos" DROP COLUMN "like_count"`);
        await queryRunner.query(`ALTER TABLE "tiktok_videos" ADD "like_count" bigint NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "tiktok_videos" DROP COLUMN "share_count"`);
        await queryRunner.query(`ALTER TABLE "tiktok_videos" ADD "share_count" bigint NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "tiktok_videos" DROP COLUMN "comment_count"`);
        await queryRunner.query(`ALTER TABLE "tiktok_videos" ADD "comment_count" bigint NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "tiktok_videos" DROP COLUMN "duration"`);
        await queryRunner.query(`ALTER TABLE "tiktok_videos" ADD "duration" bigint NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "tiktok_videos" DROP COLUMN "view_count"`);
        await queryRunner.query(`ALTER TABLE "tiktok_videos" ADD "view_count" bigint NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "xiaohongshu_profiles" DROP COLUMN "follower_count"`);
        await queryRunner.query(`ALTER TABLE "xiaohongshu_profiles" ADD "follower_count" bigint NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "xiaohongshu_profiles" DROP COLUMN "following_count"`);
        await queryRunner.query(`ALTER TABLE "xiaohongshu_profiles" ADD "following_count" bigint NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "xiaohongshu_profiles" DROP COLUMN "engagement_count"`);
        await queryRunner.query(`ALTER TABLE "xiaohongshu_profiles" ADD "engagement_count" bigint NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "xiaohongshu_profiles" DROP COLUMN "post_count"`);
        await queryRunner.query(`ALTER TABLE "xiaohongshu_profiles" ADD "post_count" bigint NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "xiaohongshu_profiles" DROP COLUMN "total_views"`);
        await queryRunner.query(`ALTER TABLE "xiaohongshu_profiles" ADD "total_views" bigint NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "social_media_posts" DROP COLUMN "like_count"`);
        await queryRunner.query(`ALTER TABLE "social_media_posts" ADD "like_count" bigint NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "social_media_posts" DROP COLUMN "comment_count"`);
        await queryRunner.query(`ALTER TABLE "social_media_posts" ADD "comment_count" bigint NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "social_medias" DROP COLUMN "follower_count"`);
        await queryRunner.query(`ALTER TABLE "social_medias" ADD "follower_count" bigint NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "social_medias" DROP COLUMN "following_count"`);
        await queryRunner.query(`ALTER TABLE "social_medias" ADD "following_count" bigint NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "social_medias" DROP COLUMN "post_count"`);
        await queryRunner.query(`ALTER TABLE "social_medias" ADD "post_count" bigint NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "social_medias" DROP COLUMN "engagement_count"`);
        await queryRunner.query(`ALTER TABLE "social_medias" ADD "engagement_count" bigint NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "youtube_videos" DROP COLUMN "view_counts"`);
        await queryRunner.query(`ALTER TABLE "youtube_videos" ADD "view_counts" bigint NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "youtube_videos" DROP COLUMN "like_counts"`);
        await queryRunner.query(`ALTER TABLE "youtube_videos" ADD "like_counts" bigint NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "youtube_videos" DROP COLUMN "comment_count"`);
        await queryRunner.query(`ALTER TABLE "youtube_videos" ADD "comment_count" bigint NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "youtube_videos" DROP COLUMN "fevorite_count"`);
        await queryRunner.query(`ALTER TABLE "youtube_videos" ADD "fevorite_count" bigint NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "youtube_channels" DROP COLUMN "view_counts"`);
        await queryRunner.query(`ALTER TABLE "youtube_channels" ADD "view_counts" bigint NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "youtube_channels" DROP COLUMN "subscriber_count"`);
        await queryRunner.query(`ALTER TABLE "youtube_channels" ADD "subscriber_count" bigint NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "youtube_channels" DROP COLUMN "video_count"`);
        await queryRunner.query(`ALTER TABLE "youtube_channels" ADD "video_count" bigint NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "youtube_channels" DROP COLUMN "engagement_count"`);
        await queryRunner.query(`ALTER TABLE "youtube_channels" ADD "engagement_count" bigint NOT NULL DEFAULT '0'`);
    }

    public async down(queryRunner: QueryRunner): Promise<void> {
        await queryRunner.query(`ALTER TABLE "youtube_channels" DROP COLUMN "engagement_count"`);
        await queryRunner.query(`ALTER TABLE "youtube_channels" ADD "engagement_count" integer NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "youtube_channels" DROP COLUMN "video_count"`);
        await queryRunner.query(`ALTER TABLE "youtube_channels" ADD "video_count" integer NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "youtube_channels" DROP COLUMN "subscriber_count"`);
        await queryRunner.query(`ALTER TABLE "youtube_channels" ADD "subscriber_count" integer NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "youtube_channels" DROP COLUMN "view_counts"`);
        await queryRunner.query(`ALTER TABLE "youtube_channels" ADD "view_counts" integer NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "youtube_videos" DROP COLUMN "fevorite_count"`);
        await queryRunner.query(`ALTER TABLE "youtube_videos" ADD "fevorite_count" integer NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "youtube_videos" DROP COLUMN "comment_count"`);
        await queryRunner.query(`ALTER TABLE "youtube_videos" ADD "comment_count" integer NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "youtube_videos" DROP COLUMN "like_counts"`);
        await queryRunner.query(`ALTER TABLE "youtube_videos" ADD "like_counts" integer NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "youtube_videos" DROP COLUMN "view_counts"`);
        await queryRunner.query(`ALTER TABLE "youtube_videos" ADD "view_counts" integer NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "social_medias" DROP COLUMN "engagement_count"`);
        await queryRunner.query(`ALTER TABLE "social_medias" ADD "engagement_count" integer NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "social_medias" DROP COLUMN "post_count"`);
        await queryRunner.query(`ALTER TABLE "social_medias" ADD "post_count" integer NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "social_medias" DROP COLUMN "following_count"`);
        await queryRunner.query(`ALTER TABLE "social_medias" ADD "following_count" integer NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "social_medias" DROP COLUMN "follower_count"`);
        await queryRunner.query(`ALTER TABLE "social_medias" ADD "follower_count" integer NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "social_media_posts" DROP COLUMN "comment_count"`);
        await queryRunner.query(`ALTER TABLE "social_media_posts" ADD "comment_count" character varying NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "social_media_posts" DROP COLUMN "like_count"`);
        await queryRunner.query(`ALTER TABLE "social_media_posts" ADD "like_count" character varying NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "xiaohongshu_profiles" DROP COLUMN "total_views"`);
        await queryRunner.query(`ALTER TABLE "xiaohongshu_profiles" ADD "total_views" integer NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "xiaohongshu_profiles" DROP COLUMN "post_count"`);
        await queryRunner.query(`ALTER TABLE "xiaohongshu_profiles" ADD "post_count" integer NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "xiaohongshu_profiles" DROP COLUMN "engagement_count"`);
        await queryRunner.query(`ALTER TABLE "xiaohongshu_profiles" ADD "engagement_count" integer NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "xiaohongshu_profiles" DROP COLUMN "following_count"`);
        await queryRunner.query(`ALTER TABLE "xiaohongshu_profiles" ADD "following_count" integer NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "xiaohongshu_profiles" DROP COLUMN "follower_count"`);
        await queryRunner.query(`ALTER TABLE "xiaohongshu_profiles" ADD "follower_count" integer NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "tiktok_videos" DROP COLUMN "view_count"`);
        await queryRunner.query(`ALTER TABLE "tiktok_videos" ADD "view_count" integer NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "tiktok_videos" DROP COLUMN "duration"`);
        await queryRunner.query(`ALTER TABLE "tiktok_videos" ADD "duration" integer NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "tiktok_videos" DROP COLUMN "comment_count"`);
        await queryRunner.query(`ALTER TABLE "tiktok_videos" ADD "comment_count" integer NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "tiktok_videos" DROP COLUMN "share_count"`);
        await queryRunner.query(`ALTER TABLE "tiktok_videos" ADD "share_count" integer NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "tiktok_videos" DROP COLUMN "like_count"`);
        await queryRunner.query(`ALTER TABLE "tiktok_videos" ADD "like_count" integer NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "tiktok_videos" DROP COLUMN "width"`);
        await queryRunner.query(`ALTER TABLE "tiktok_videos" ADD "width" integer NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "tiktok_videos" DROP COLUMN "height"`);
        await queryRunner.query(`ALTER TABLE "tiktok_videos" ADD "height" integer NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "instagram_profiles" DROP COLUMN "total_views"`);
        await queryRunner.query(`ALTER TABLE "instagram_profiles" ADD "total_views" integer NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "instagram_profiles" DROP COLUMN "engagement_count"`);
        await queryRunner.query(`ALTER TABLE "instagram_profiles" ADD "engagement_count" integer NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "instagram_profiles" DROP COLUMN "followers_count"`);
        await queryRunner.query(`ALTER TABLE "instagram_profiles" ADD "followers_count" integer NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "instagram_profiles" DROP COLUMN "media_count"`);
        await queryRunner.query(`ALTER TABLE "instagram_profiles" ADD "media_count" integer NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "instagram_profiles" DROP COLUMN "follows_count"`);
        await queryRunner.query(`ALTER TABLE "instagram_profiles" ADD "follows_count" integer NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "instagram_medias" DROP COLUMN "like_count"`);
        await queryRunner.query(`ALTER TABLE "instagram_medias" ADD "like_count" integer NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "instagram_medias" DROP COLUMN "comments_count"`);
        await queryRunner.query(`ALTER TABLE "instagram_medias" ADD "comments_count" integer NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "facebook_pages" DROP COLUMN "total_views"`);
        await queryRunner.query(`ALTER TABLE "facebook_pages" ADD "total_views" integer NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "facebook_pages" DROP COLUMN "post_count"`);
        await queryRunner.query(`ALTER TABLE "facebook_pages" ADD "post_count" integer NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "facebook_pages" DROP COLUMN "engagement_count"`);
        await queryRunner.query(`ALTER TABLE "facebook_pages" ADD "engagement_count" integer NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "facebook_pages" DROP COLUMN "followers_count"`);
        await queryRunner.query(`ALTER TABLE "facebook_pages" ADD "followers_count" integer NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "facebook_pages" DROP COLUMN "fan_count"`);
        await queryRunner.query(`ALTER TABLE "facebook_pages" ADD "fan_count" integer NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "facebook_posts" DROP COLUMN "comment_count"`);
        await queryRunner.query(`ALTER TABLE "facebook_posts" ADD "comment_count" integer NOT NULL DEFAULT '0'`);
        await queryRunner.query(`ALTER TABLE "facebook_posts" DROP COLUMN "like_counts"`);
        await queryRunner.query(`ALTER TABLE "facebook_posts" ADD "like_counts" integer NOT NULL DEFAULT '0'`);
    }

}
