penisularhr / src / database / migrations / 1698309623027-create-remark.ts
1698309623027-create-remark.ts
Raw
/* eslint-disable max-len */
/* eslint-disable canonical/no-unused-exports */
import { type MigrationInterface, type QueryRunner } from 'typeorm';

export class CreateRemark1698309623027 implements MigrationInterface {
  name = 'CreateRemark1698309623027';

  public async up(queryRunner: QueryRunner): Promise<void> {
    // eslint-disable-next-line prettier/prettier
    await queryRunner.query(
      `ALTER TABLE "employees" DROP COLUMN "is_referral_fee_paid"`,
    );
    await queryRunner.query(
      `ALTER TABLE "ot_records" ADD "remark" character varying`,
    );
    await queryRunner.query(
      `ALTER TYPE "public"."activity_record_settings_incentive_name_enum" RENAME TO "activity_record_settings_incentive_name_enum_old"`,
    );
    await queryRunner.query(
      `CREATE TYPE "public"."activity_record_settings_incentive_name_enum" AS ENUM('meal', 'perfect attendance', 'sucker planting', 'sucker harvest', 'fruit harvest', 'referral', 'long service')`,
    );
    await queryRunner.query(
      `ALTER TABLE "activity_record_settings" ALTER COLUMN "incentive_name" TYPE "public"."activity_record_settings_incentive_name_enum" USING "incentive_name"::"text"::"public"."activity_record_settings_incentive_name_enum"`,
    );
    await queryRunner.query(
      `DROP TYPE "public"."activity_record_settings_incentive_name_enum_old"`,
    );
    await queryRunner.query(
      `ALTER TABLE "ot_settings" ALTER COLUMN "extra_rate_per" SET DEFAULT '1.5'`,
    );
  }

  public async down(queryRunner: QueryRunner): Promise<void> {
    await queryRunner.query(
      `ALTER TABLE "ot_settings" ALTER COLUMN "extra_rate_per" SET DEFAULT 1.5`,
    );
    await queryRunner.query(
      `CREATE TYPE "public"."activity_record_settings_incentive_name_enum_old" AS ENUM('meal', 'perfect attendence', 'sucker planting', 'sucker harvest', 'fruit harvest', 'referral', 'long service')`,
    );
    await queryRunner.query(
      `ALTER TABLE "activity_record_settings" ALTER COLUMN "incentive_name" TYPE "public"."activity_record_settings_incentive_name_enum_old" USING "incentive_name"::"text"::"public"."activity_record_settings_incentive_name_enum_old"`,
    );
    await queryRunner.query(
      `DROP TYPE "public"."activity_record_settings_incentive_name_enum"`,
    );
    await queryRunner.query(
      `ALTER TYPE "public"."activity_record_settings_incentive_name_enum_old" RENAME TO "activity_record_settings_incentive_name_enum"`,
    );
    await queryRunner.query(`ALTER TABLE "ot_records" DROP COLUMN "remark"`);
    await queryRunner.query(
      `ALTER TABLE "employees" ADD "is_referral_fee_paid" boolean`,
    );
  }
}