import { MigrationInterface, QueryRunner, TableColumn } from "typeorm"; import { templateUsage } from "../entity/configuration/templateUsage"; import { getTypeByORM, getDefaultByORM } from "./ormHelper"; export class TemplatesAndProtocolSort1742549956787 implements MigrationInterface { name = "TemplatesAndProtocolSort1742549956787"; public async up(queryRunner: QueryRunner): Promise { await queryRunner.manager .createQueryBuilder() .insert() .into(templateUsage) .values([{ scope: "member" }]) .orIgnore() .execute(); await queryRunner.manager .createQueryBuilder() .delete() .from(templateUsage) .where({ scope: "member.list" }) .execute(); await queryRunner.addColumn( "protocol_agenda", new TableColumn({ name: "sort", ...getTypeByORM("int"), default: getDefaultByORM("number", 0) }) ); await queryRunner.addColumn( "protocol_decision", new TableColumn({ name: "sort", ...getTypeByORM("int"), default: getDefaultByORM("number", 0) }) ); await queryRunner.addColumn( "protocol_voting", new TableColumn({ name: "sort", ...getTypeByORM("int"), default: getDefaultByORM("number", 0) }) ); } public async down(queryRunner: QueryRunner): Promise { await queryRunner.dropColumn("protocol_agenda", "sort"); await queryRunner.dropColumn("protocol_decision", "sort"); await queryRunner.dropColumn("protocol_voting", "sort"); await queryRunner.manager .createQueryBuilder() .insert() .into(templateUsage) .values([{ scope: "member.list" }]) .orIgnore() .execute(); await queryRunner.manager.createQueryBuilder().delete().from(templateUsage).where({ scope: "member" }).execute(); } }