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",
|
||||
"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: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": {
|
||||
"@faker-js/faker": "^8.4.1",
|
||||
"@nestjs/common": "^10.0.0",
|
||||
"@nestjs/config": "^3.2.2",
|
||||
"@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(),
|
||||
});
|
||||
|
||||
console.log(data, 'dsa');
|
||||
await connection
|
||||
.createQueryBuilder()
|
||||
.insert()
|
||||
.into(UserModel)
|
||||
.values([data])
|
||||
.execute();
|
||||
} catch (error) {
|
||||
console.log(error, 'sdada');
|
||||
}
|
||||
} catch (error) {}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -3,11 +3,11 @@ import { LoginRequest } from '../../domain/entities/request.interface';
|
|||
import { ApiProperty } from '@nestjs/swagger';
|
||||
|
||||
export class LoginDto implements LoginRequest {
|
||||
@ApiProperty({ name: 'username', required: true })
|
||||
@ApiProperty({ name: 'username', required: true, default: 'superadmin' })
|
||||
@IsString()
|
||||
username: string;
|
||||
|
||||
@ApiProperty({ name: 'password', required: true })
|
||||
@ApiProperty({ name: 'password', required: true, default: 'Eigen123!' })
|
||||
@IsString()
|
||||
password: string;
|
||||
}
|
||||
|
|
|
@ -388,6 +388,11 @@
|
|||
resolved "https://registry.yarnpkg.com/@eslint/js/-/js-8.57.0.tgz#a5417ae8427873f1dd08b70b3574b453e67b5f7f"
|
||||
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":
|
||||
version "0.11.14"
|
||||
resolved "https://registry.yarnpkg.com/@humanwhocodes/config-array/-/config-array-0.11.14.tgz#d78e481a039f7566ecc9660b4ea7fe6b1fec442b"
|
||||
|
|
Loading…
Reference in New Issue