Files
dsc-api/database/migrations/1740574122421-AddBusinessFieldsToUserSubscription.ts
T
2025-02-26 20:15:16 +03:30

74 lines
1.9 KiB
TypeScript

import { MigrationInterface, QueryRunner, TableColumn } from "typeorm";
export class AddBusinessFieldsToUserSubscription1740574122421 implements MigrationInterface {
public async up(queryRunner: QueryRunner): Promise<void> {
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<void> {
await queryRunner.dropColumns("user_subscription", [
new TableColumn({ name: "businessName", type: "varchar" }),
new TableColumn({ name: "businessPhone", type: "varchar" }),
new TableColumn({ name: "description", type: "text" }),
]);
}
}