import { MigrationInterface, QueryRunner, TableColumn } from "typeorm"; export class AddBusinessFieldsToUserSubscription1740574122421 implements MigrationInterface { public async up(queryRunner: QueryRunner): Promise { await queryRunner.addColumns("user_subscription", [ new TableColumn({ name: "businessName", type: "varchar", length: "250", isNullable: true, default: "'Unknown Business'", }), new TableColumn({ name: "businessPhone", type: "varchar", length: "50", isNullable: true, default: "''", }), new TableColumn({ name: "description", type: "text", // length: "250", isNullable: true, default: "''", }), ]); await queryRunner.query( `UPDATE "user_subscription" SET "businessName" = 'Unknown Business', "businessPhone" = '', "description" = '' WHERE "businessName" IS NULL`, ); await queryRunner.changeColumn( "user_subscription", "businessName", new TableColumn({ name: "businessName", type: "varchar", length: "250", isNullable: false, }), ); await queryRunner.changeColumn( "user_subscription", "businessPhone", new TableColumn({ name: "businessPhone", type: "varchar", length: "50", isNullable: false, }), ); await queryRunner.changeColumn( "user_subscription", "description", new TableColumn({ name: "description", type: "text", isNullable: false, }), ); } public async down(queryRunner: QueryRunner): Promise { await queryRunner.dropColumns("user_subscription", [ new TableColumn({ name: "businessName", type: "varchar" }), new TableColumn({ name: "businessPhone", type: "varchar" }), new TableColumn({ name: "description", type: "text" }), ]); } }