import { MigrationInterface, QueryRunner } from 'typeorm';

export class FixInternationalOnlyCampaignHomeCountryOrders1781600000000 implements MigrationInterface {
  public async up(queryRunner: QueryRunner): Promise<void> {
    await queryRunner.query(`
      DELETE FROM campaign_category_country_order cco
      USING campaign_categories cc, campaigns c, countries co
      WHERE cco.campaign_category_id = cc.id
        AND cc.campaign_id = c.id
        AND cco.country_id = co.id
        AND c.is_only_international_influencer = true
        AND co.two_digit_code = c.campaign_country
        AND cco.deleted_at IS NULL
    `);
  }

  public async down(queryRunner: QueryRunner): Promise<void> {
    // Data cleanup migration; home-country orders for international-only campaigns are invalid.
  }
}
