Use EntitySchemas in comments-server, Fix duplicate migrations
This commit is contained in:
parent
960fc96d28
commit
42bda32985
@ -5,20 +5,23 @@ const transformer = {
|
||||
to: (value: undefined | null | string) => value ? new Date(value) : value,
|
||||
}
|
||||
|
||||
export const BaseEntitySchemaPart: Record<
|
||||
'id' | 'createDate' | 'updateDate', EntitySchemaColumnOptions> = {
|
||||
export const BaseEntitySchemaPart: {
|
||||
id: EntitySchemaColumnOptions
|
||||
createDate: EntitySchemaColumnOptions
|
||||
updateDate: EntitySchemaColumnOptions
|
||||
} = {
|
||||
id: {
|
||||
type: 'integer',
|
||||
type: Number,
|
||||
primary: true,
|
||||
generated: true,
|
||||
},
|
||||
createDate: {
|
||||
type: 'datetime',
|
||||
type: Date,
|
||||
createDate: true,
|
||||
transformer,
|
||||
},
|
||||
updateDate: {
|
||||
type: 'datetime',
|
||||
type: Date,
|
||||
updateDate: true,
|
||||
transformer,
|
||||
},
|
||||
|
||||
@ -9,7 +9,7 @@ export const SessionEntity = new EntitySchema<Session>({
|
||||
primary: true,
|
||||
},
|
||||
expiredAt: {
|
||||
type: Number,
|
||||
type: 'bigint',
|
||||
// default: () => Date.now(),
|
||||
},
|
||||
userId: {
|
||||
|
||||
@ -0,0 +1,35 @@
|
||||
import {MigrationInterface, QueryRunner} from "typeorm";
|
||||
|
||||
export class sessionExpiredAtBigint1569211662484 implements MigrationInterface {
|
||||
|
||||
public async up(queryRunner: QueryRunner): Promise<any> {
|
||||
await queryRunner.query(`DROP INDEX "IDX_28c5d1d16da7908c97c9bc2f74"`, undefined);
|
||||
await queryRunner.query(`CREATE TABLE "temporary_session" ("id" varchar PRIMARY KEY NOT NULL, "expiredAt" integer NOT NULL, "userId" integer, "json" text NOT NULL, CONSTRAINT "FK_3d2f174ef04fb312fdebd0ddc53" FOREIGN KEY ("userId") REFERENCES "user" ("id") ON DELETE NO ACTION ON UPDATE NO ACTION)`, undefined);
|
||||
await queryRunner.query(`INSERT INTO "temporary_session"("id", "expiredAt", "userId", "json") SELECT "id", "expiredAt", "userId", "json" FROM "session"`, undefined);
|
||||
await queryRunner.query(`DROP TABLE "session"`, undefined);
|
||||
await queryRunner.query(`ALTER TABLE "temporary_session" RENAME TO "session"`, undefined);
|
||||
await queryRunner.query(`CREATE INDEX "IDX_28c5d1d16da7908c97c9bc2f74" ON "session" ("expiredAt") `, undefined);
|
||||
await queryRunner.query(`DROP INDEX "IDX_28c5d1d16da7908c97c9bc2f74"`, undefined);
|
||||
await queryRunner.query(`CREATE TABLE "temporary_session" ("id" varchar PRIMARY KEY NOT NULL, "expiredAt" bigint NOT NULL, "userId" integer, "json" text NOT NULL, CONSTRAINT "FK_3d2f174ef04fb312fdebd0ddc53" FOREIGN KEY ("userId") REFERENCES "user" ("id") ON DELETE NO ACTION ON UPDATE NO ACTION)`, undefined);
|
||||
await queryRunner.query(`INSERT INTO "temporary_session"("id", "expiredAt", "userId", "json") SELECT "id", "expiredAt", "userId", "json" FROM "session"`, undefined);
|
||||
await queryRunner.query(`DROP TABLE "session"`, undefined);
|
||||
await queryRunner.query(`ALTER TABLE "temporary_session" RENAME TO "session"`, undefined);
|
||||
await queryRunner.query(`CREATE INDEX "IDX_28c5d1d16da7908c97c9bc2f74" ON "session" ("expiredAt") `, undefined);
|
||||
}
|
||||
|
||||
public async down(queryRunner: QueryRunner): Promise<any> {
|
||||
await queryRunner.query(`DROP INDEX "IDX_28c5d1d16da7908c97c9bc2f74"`, undefined);
|
||||
await queryRunner.query(`ALTER TABLE "session" RENAME TO "temporary_session"`, undefined);
|
||||
await queryRunner.query(`CREATE TABLE "session" ("id" varchar PRIMARY KEY NOT NULL, "expiredAt" integer NOT NULL, "userId" integer, "json" text NOT NULL, CONSTRAINT "FK_3d2f174ef04fb312fdebd0ddc53" FOREIGN KEY ("userId") REFERENCES "user" ("id") ON DELETE NO ACTION ON UPDATE NO ACTION)`, undefined);
|
||||
await queryRunner.query(`INSERT INTO "session"("id", "expiredAt", "userId", "json") SELECT "id", "expiredAt", "userId", "json" FROM "temporary_session"`, undefined);
|
||||
await queryRunner.query(`DROP TABLE "temporary_session"`, undefined);
|
||||
await queryRunner.query(`CREATE INDEX "IDX_28c5d1d16da7908c97c9bc2f74" ON "session" ("expiredAt") `, undefined);
|
||||
await queryRunner.query(`DROP INDEX "IDX_28c5d1d16da7908c97c9bc2f74"`, undefined);
|
||||
await queryRunner.query(`ALTER TABLE "session" RENAME TO "temporary_session"`, undefined);
|
||||
await queryRunner.query(`CREATE TABLE "session" ("id" varchar PRIMARY KEY NOT NULL, "expiredAt" integer NOT NULL, "userId" integer, "json" text NOT NULL, CONSTRAINT "FK_3d2f174ef04fb312fdebd0ddc53" FOREIGN KEY ("userId") REFERENCES "user" ("id") ON DELETE NO ACTION ON UPDATE NO ACTION)`, undefined);
|
||||
await queryRunner.query(`INSERT INTO "session"("id", "expiredAt", "userId", "json") SELECT "id", "expiredAt", "userId", "json" FROM "temporary_session"`, undefined);
|
||||
await queryRunner.query(`DROP TABLE "temporary_session"`, undefined);
|
||||
await queryRunner.query(`CREATE INDEX "IDX_28c5d1d16da7908c97c9bc2f74" ON "session" ("expiredAt") `, undefined);
|
||||
}
|
||||
|
||||
}
|
||||
@ -9,3 +9,4 @@ export * from './1548412884820-role-unique'
|
||||
export * from './1552227347990-comment-parentid-nullable'
|
||||
export * from './1552227652042-nullable'
|
||||
export * from './1552899385211-user-first-last-name'
|
||||
export * from './1569211662484-session_expiredAt_bigint'
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user