feat(seeder) seeder data user privilege
parent
6596c776e8
commit
cefff6d5c7
|
@ -21,9 +21,12 @@
|
||||||
"orm": "ts-node --project ./tsconfig.json -r tsconfig-paths/register ./node_modules/typeorm/cli.js -d ./src/database/ormconfig.ts",
|
"orm": "ts-node --project ./tsconfig.json -r tsconfig-paths/register ./node_modules/typeorm/cli.js -d ./src/database/ormconfig.ts",
|
||||||
"migration:execute": "yarn run orm migration:run",
|
"migration:execute": "yarn run orm migration:run",
|
||||||
"seed:config": "ts-node -r tsconfig-paths/register ./node_modules/typeorm-seeding/dist/cli.js -n ./src/database/seed-ormconfig.ts config",
|
"seed:config": "ts-node -r tsconfig-paths/register ./node_modules/typeorm-seeding/dist/cli.js -n ./src/database/seed-ormconfig.ts config",
|
||||||
"seed:run": "ts-node -r tsconfig-paths/register ./node_modules/typeorm-seeding/dist/cli.js -n ./src/database/seed-ormconfig.ts seed"
|
"seed:run": "ts-node -r tsconfig-paths/register ./node_modules/typeorm-seeding/dist/cli.js -n ./src/database/seed-ormconfig.ts seed",
|
||||||
|
"factory:config": "ts-node -r tsconfig-paths/register ./node_modules/typeorm-seeding/dist/cli.js -n ./src/database/seed-data-ormconfig.ts config",
|
||||||
|
"factory:run": "ts-node -r tsconfig-paths/register ./node_modules/typeorm-seeding/dist/cli.js -n ./src/database/seed-data-ormconfig.ts seed"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
|
"@faker-js/faker": "^8.4.1",
|
||||||
"@nestjs/common": "^10.0.0",
|
"@nestjs/common": "^10.0.0",
|
||||||
"@nestjs/config": "^3.2.2",
|
"@nestjs/config": "^3.2.2",
|
||||||
"@nestjs/core": "^10.0.0",
|
"@nestjs/core": "^10.0.0",
|
||||||
|
|
|
@ -0,0 +1,9 @@
|
||||||
|
import { UserPrivilegeModel } from 'src/modules/user-related/user-privilege/data/models/user-privilege.model';
|
||||||
|
import { Connection } from 'typeorm';
|
||||||
|
import { Factory, Seeder } from 'typeorm-seeding';
|
||||||
|
|
||||||
|
export class SeedUserPrivilege implements Seeder {
|
||||||
|
public async run(factory: Factory, connection: Connection): Promise<void> {
|
||||||
|
await factory(UserPrivilegeModel)().createMany(100);
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,26 @@
|
||||||
|
import { faker } from '@faker-js/faker';
|
||||||
|
import { UserPrivilegeModel } from 'src/modules/user-related/user-privilege/data/models/user-privilege.model';
|
||||||
|
import { UserPrivilegeConfigurationHelper } from 'src/modules/user-related/user-privilege/domain/usecases/user-privilege-configuration/helpers/generate-user-privilege-configuration.helper';
|
||||||
|
import { define } from 'typeorm-seeding';
|
||||||
|
|
||||||
|
define(UserPrivilegeModel, () => {
|
||||||
|
const created_at = new Date(
|
||||||
|
faker.date.between({
|
||||||
|
from: '2020-01-01T00:00:00.000Z',
|
||||||
|
to: '2030-01-01T00:00:00.000Z',
|
||||||
|
}),
|
||||||
|
).getTime();
|
||||||
|
|
||||||
|
const configs = UserPrivilegeConfigurationHelper.createConfigurations();
|
||||||
|
|
||||||
|
const data = new UserPrivilegeModel();
|
||||||
|
data.name = faker.person.jobType();
|
||||||
|
data.created_at = created_at;
|
||||||
|
data.updated_at = created_at;
|
||||||
|
|
||||||
|
Object.assign(data, {
|
||||||
|
user_privilege_configurations: configs,
|
||||||
|
});
|
||||||
|
|
||||||
|
return data;
|
||||||
|
});
|
|
@ -0,0 +1,13 @@
|
||||||
|
module.exports = {
|
||||||
|
type: 'postgres',
|
||||||
|
host: process.env.DEFAULT_DB_HOST,
|
||||||
|
port: process.env.DEFAULT_DB_PORT,
|
||||||
|
username: process.env.DEFAULT_DB_USER,
|
||||||
|
password: process.env.DEFAULT_DB_PASS,
|
||||||
|
database: process.env.DEFAULT_DB_NAME,
|
||||||
|
logging: false,
|
||||||
|
synchronize: false,
|
||||||
|
entities: ['src/modules/**/**/data/models/*.ts'],
|
||||||
|
seeds: ['src/database/data-seeds/**/*{seed.ts,seed.js}'],
|
||||||
|
factories: ['src/database/factories/**/*{.ts,.js}'],
|
||||||
|
};
|
|
@ -16,15 +16,12 @@ export class SeedDefaultAdmin implements Seeder {
|
||||||
updated_at: new Date().getTime(),
|
updated_at: new Date().getTime(),
|
||||||
});
|
});
|
||||||
|
|
||||||
console.log(data, 'dsa');
|
|
||||||
await connection
|
await connection
|
||||||
.createQueryBuilder()
|
.createQueryBuilder()
|
||||||
.insert()
|
.insert()
|
||||||
.into(UserModel)
|
.into(UserModel)
|
||||||
.values([data])
|
.values([data])
|
||||||
.execute();
|
.execute();
|
||||||
} catch (error) {
|
} catch (error) {}
|
||||||
console.log(error, 'sdada');
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -3,11 +3,11 @@ import { LoginRequest } from '../../domain/entities/request.interface';
|
||||||
import { ApiProperty } from '@nestjs/swagger';
|
import { ApiProperty } from '@nestjs/swagger';
|
||||||
|
|
||||||
export class LoginDto implements LoginRequest {
|
export class LoginDto implements LoginRequest {
|
||||||
@ApiProperty({ name: 'username', required: true })
|
@ApiProperty({ name: 'username', required: true, default: 'superadmin' })
|
||||||
@IsString()
|
@IsString()
|
||||||
username: string;
|
username: string;
|
||||||
|
|
||||||
@ApiProperty({ name: 'password', required: true })
|
@ApiProperty({ name: 'password', required: true, default: 'Eigen123!' })
|
||||||
@IsString()
|
@IsString()
|
||||||
password: string;
|
password: string;
|
||||||
}
|
}
|
||||||
|
|
|
@ -388,6 +388,11 @@
|
||||||
resolved "https://registry.yarnpkg.com/@eslint/js/-/js-8.57.0.tgz#a5417ae8427873f1dd08b70b3574b453e67b5f7f"
|
resolved "https://registry.yarnpkg.com/@eslint/js/-/js-8.57.0.tgz#a5417ae8427873f1dd08b70b3574b453e67b5f7f"
|
||||||
integrity sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g==
|
integrity sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g==
|
||||||
|
|
||||||
|
"@faker-js/faker@^8.4.1":
|
||||||
|
version "8.4.1"
|
||||||
|
resolved "https://registry.yarnpkg.com/@faker-js/faker/-/faker-8.4.1.tgz#5d5e8aee8fce48f5e189bf730ebd1f758f491451"
|
||||||
|
integrity sha512-XQ3cU+Q8Uqmrbf2e0cIC/QN43sTBSC8KF12u29Mb47tWrt2hAgBXSgpZMj4Ao8Uk0iJcU99QsOCaIL8934obCg==
|
||||||
|
|
||||||
"@humanwhocodes/config-array@^0.11.14":
|
"@humanwhocodes/config-array@^0.11.14":
|
||||||
version "0.11.14"
|
version "0.11.14"
|
||||||
resolved "https://registry.yarnpkg.com/@humanwhocodes/config-array/-/config-array-0.11.14.tgz#d78e481a039f7566ecc9660b4ea7fe6b1fec442b"
|
resolved "https://registry.yarnpkg.com/@humanwhocodes/config-array/-/config-array-0.11.14.tgz#d78e481a039f7566ecc9660b4ea7fe6b1fec442b"
|
||||||
|
|
Loading…
Reference in New Issue