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,
|
to: (value: undefined | null | string) => value ? new Date(value) : value,
|
||||||
}
|
}
|
||||||
|
|
||||||
export const BaseEntitySchemaPart: Record<
|
export const BaseEntitySchemaPart: {
|
||||||
'id' | 'createDate' | 'updateDate', EntitySchemaColumnOptions> = {
|
id: EntitySchemaColumnOptions
|
||||||
|
createDate: EntitySchemaColumnOptions
|
||||||
|
updateDate: EntitySchemaColumnOptions
|
||||||
|
} = {
|
||||||
id: {
|
id: {
|
||||||
type: 'integer',
|
type: Number,
|
||||||
primary: true,
|
primary: true,
|
||||||
generated: true,
|
generated: true,
|
||||||
},
|
},
|
||||||
createDate: {
|
createDate: {
|
||||||
type: 'datetime',
|
type: Date,
|
||||||
createDate: true,
|
createDate: true,
|
||||||
transformer,
|
transformer,
|
||||||
},
|
},
|
||||||
updateDate: {
|
updateDate: {
|
||||||
type: 'datetime',
|
type: Date,
|
||||||
updateDate: true,
|
updateDate: true,
|
||||||
transformer,
|
transformer,
|
||||||
},
|
},
|
||||||
|
|||||||
@ -9,7 +9,7 @@ export const SessionEntity = new EntitySchema<Session>({
|
|||||||
primary: true,
|
primary: true,
|
||||||
},
|
},
|
||||||
expiredAt: {
|
expiredAt: {
|
||||||
type: Number,
|
type: 'bigint',
|
||||||
// default: () => Date.now(),
|
// default: () => Date.now(),
|
||||||
},
|
},
|
||||||
userId: {
|
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 './1552227347990-comment-parentid-nullable'
|
||||||
export * from './1552227652042-nullable'
|
export * from './1552227652042-nullable'
|
||||||
export * from './1552899385211-user-first-last-name'
|
export * from './1552899385211-user-first-last-name'
|
||||||
|
export * from './1569211662484-session_expiredAt_bigint'
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user