File

src/migrations/1592655527980-initdb.ts

Implements

MigrationInterface

Index

Properties
Methods
  • Public Async down
  • Public Async up

Properties

name
Type : string
Default value : "initdb1592655527980"

Methods

Public Async down
down(queryRunner: QueryRunner)
Parameters :
Name Type Optional
queryRunner QueryRunner No
Returns : Promise<void>
Public Async up
up(queryRunner: QueryRunner)
Parameters :
Name Type Optional
queryRunner QueryRunner No
Returns : Promise<void>
import { MigrationInterface, QueryRunner } from "typeorm";
import { User } from "src/entity/user.entity";
import { Group } from "src/entity/group.entity";

export class initdb1592655527980 implements MigrationInterface {
  name = "initdb1592655527980";

  public async up(queryRunner: QueryRunner): Promise<void> {
    const users = await queryRunner.connection.getRepository(User).find();
    const groups = await queryRunner.connection.getRepository(Group).find();

    if (groups.length === 0) {
      await queryRunner.query(
        `INSERT INTO ${process.env.TYPEORM_DATABASE}.group (name) VALUES 
          ('Admin')
          ;`
      );
      await queryRunner.query(
        `INSERT INTO ${process.env.TYPEORM_DATABASE}.group (name) VALUES 
          ('Maintainer')
          ;`
      );
      await queryRunner.query(
        `INSERT INTO ${process.env.TYPEORM_DATABASE}.group (name) VALUES 
          ('User')
          ;`
      );

    }
    if (users.length === 0) {
      await queryRunner.query(
        `INSERT INTO ${process.env.TYPEORM_DATABASE}.user (email,password,created,modified, name, groupId) VALUES 
          ('admin@teszt.hu','$2a$10$ObWiH34v6a/Rz9jGe0lZp.5F1NruAVT.P6vsHGFmQ9tqfmaH0IhmS','2020-06-20 10:27:36.664432','2020-06-20 10:45:35.0','Admin' ,1)
          ;`
      );
      await queryRunner.query(
        `INSERT INTO ${process.env.TYPEORM_DATABASE}.user (email,password,created,modified, name, groupId) VALUES 
          ('maintainer@teszt.hu','$2a$10$ObWiH34v6a/Rz9jGe0lZp.5F1NruAVT.P6vsHGFmQ9tqfmaH0IhmS','2020-06-20 10:27:36.664432','2020-06-20 10:45:35.0','Maintainer' ,2)
          ;`
      );
      await queryRunner.query(
        `INSERT INTO ${process.env.TYPEORM_DATABASE}.user (email,password,created,modified, name, groupId) VALUES 
          ('user@teszt.hu','$2a$10$ObWiH34v6a/Rz9jGe0lZp.5F1NruAVT.P6vsHGFmQ9tqfmaH0IhmS','2020-06-20 10:27:36.664432','2020-06-20 10:45:35.0','User' ,3)
          ;`
      );
    }
  }

  public async down(queryRunner: QueryRunner): Promise<void> { }
}

result-matching ""

    No results matching ""