add systemid column and constraint to member.ts entity as well as migration

This commit is contained in:
2026-04-17 10:39:13 -04:00
parent ee4dca2ae3
commit ae04e91dbd
3 changed files with 33 additions and 2 deletions

View File

@@ -1,4 +1,14 @@
import {Entity, PrimaryGeneratedColumn, Column, CreateDateColumn, UpdateDateColumn, Unique} from "typeorm" import {
Entity,
PrimaryGeneratedColumn,
Column,
CreateDateColumn,
UpdateDateColumn,
Unique,
ManyToOne,
JoinColumn
} from "typeorm"
import {System} from "./System";
@Entity({name: "Member", synchronize: true}) @Entity({name: "Member", synchronize: true})
@Unique("UQ_Member_userid_name", ['userid', 'name']) @Unique("UQ_Member_userid_name", ['userid', 'name'])
@@ -10,6 +20,10 @@ export class Member {
@Column() @Column()
userid: string userid: string
@ManyToOne(() => System, (system) => system.id, {eager: true, orphanedRowAction: "delete"})
@JoinColumn({ name: "systemid" })
system: System
@Column({ @Column({
length: 100 length: 100
}) })

View File

@@ -0,0 +1,16 @@
import { MigrationInterface, QueryRunner } from "typeorm";
export class Update1773756156389 implements MigrationInterface {
name = 'Update1773756156389'
public async up(queryRunner: QueryRunner): Promise<void> {
await queryRunner.query(`ALTER TABLE "Member" ADD "systemid" integer`);
await queryRunner.query(`ALTER TABLE "Member" ADD CONSTRAINT "FK_Member_System" FOREIGN KEY ("systemid") REFERENCES "System"("id") ON DELETE NO ACTION ON UPDATE NO ACTION`);
}
public async down(queryRunner: QueryRunner): Promise<void> {
await queryRunner.query(`ALTER TABLE "Member" DROP CONSTRAINT "FK_Member_System"`);
await queryRunner.query(`ALTER TABLE "Member" DROP COLUMN "systemid"`);
}
}

View File

@@ -36,7 +36,8 @@
"test": "jest", "test": "jest",
"start": "ts-node src/bot.js", "start": "ts-node src/bot.js",
"new-migration": "typeorm-ts-node-commonjs migration:create database/migrations/update", "new-migration": "typeorm-ts-node-commonjs migration:create database/migrations/update",
"generate-db": "typeorm-ts-node-commonjs migration:generate -d database/data-source.ts database/migrations/update", "revert-migration": "typeorm-ts-node-commonjs migration:revert -d database/data-source.ts",
"generate-migration": "typeorm-ts-node-commonjs migration:generate -d database/data-source.ts database/migrations/update",
"run-migration": "typeorm-ts-node-commonjs migration:run -d database/data-source.ts" "run-migration": "typeorm-ts-node-commonjs migration:run -d database/data-source.ts"
} }
} }