import { MigrationInterface, QueryRunner } from "typeorm"

export class ChangeRatingSmallintToDecimal1773812811013 implements MigrationInterface {
  name = "ChangeRatingSmallintToDecimal1773812811013"

  public async up(queryRunner: QueryRunner): Promise<void> {
    await queryRunner.query(
      `ALTER TABLE "mis_report_rating_feedbacks" DROP COLUMN "business_rating"`,
    )
    await queryRunner.query(
      `ALTER TABLE "mis_report_rating_feedbacks" ADD "business_rating" numeric(3,2) NOT NULL DEFAULT '0'`,
    )
    await queryRunner.query(
      `ALTER TABLE "mis_report_rating_feedbacks" DROP COLUMN "technical_rating"`,
    )
    await queryRunner.query(
      `ALTER TABLE "mis_report_rating_feedbacks" ADD "technical_rating" numeric(3,2) NOT NULL DEFAULT '0'`,
    )
    await queryRunner.query(
      `ALTER TABLE "mis_report_rating_feedbacks" DROP COLUMN "personal_rating"`,
    )
    await queryRunner.query(
      `ALTER TABLE "mis_report_rating_feedbacks" ADD "personal_rating" numeric(3,2) NOT NULL DEFAULT '0'`,
    )
    await queryRunner.query(
      `ALTER TABLE "mis_report_rating_feedbacks" DROP COLUMN "average_rating"`,
    )
    await queryRunner.query(
      `ALTER TABLE "mis_report_rating_feedbacks" ADD "average_rating" numeric(3,2) NOT NULL DEFAULT '0'`,
    )
    await queryRunner.query(
      `ALTER TABLE "business_kpis_ratings" DROP COLUMN "rating"`,
    )
    await queryRunner.query(
      `ALTER TABLE "business_kpis_ratings" ADD "rating" numeric(3,2) NOT NULL DEFAULT '0'`,
    )
  }

  public async down(queryRunner: QueryRunner): Promise<void> {
    await queryRunner.query(
      `ALTER TABLE "business_kpis_ratings" DROP COLUMN "rating"`,
    )
    await queryRunner.query(
      `ALTER TABLE "business_kpis_ratings" ADD "rating" smallint NOT NULL DEFAULT '0'`,
    )
    await queryRunner.query(
      `ALTER TABLE "mis_report_rating_feedbacks" DROP COLUMN "average_rating"`,
    )
    await queryRunner.query(
      `ALTER TABLE "mis_report_rating_feedbacks" ADD "average_rating" smallint NOT NULL DEFAULT '0'`,
    )
    await queryRunner.query(
      `ALTER TABLE "mis_report_rating_feedbacks" DROP COLUMN "personal_rating"`,
    )
    await queryRunner.query(
      `ALTER TABLE "mis_report_rating_feedbacks" ADD "personal_rating" smallint NOT NULL DEFAULT '0'`,
    )
    await queryRunner.query(
      `ALTER TABLE "mis_report_rating_feedbacks" DROP COLUMN "technical_rating"`,
    )
    await queryRunner.query(
      `ALTER TABLE "mis_report_rating_feedbacks" ADD "technical_rating" smallint NOT NULL DEFAULT '0'`,
    )
    await queryRunner.query(
      `ALTER TABLE "mis_report_rating_feedbacks" DROP COLUMN "business_rating"`,
    )
    await queryRunner.query(
      `ALTER TABLE "mis_report_rating_feedbacks" ADD "business_rating" smallint NOT NULL DEFAULT '0'`,
    )
  }
}
