Skip to content

Commit f1782f6

Browse files
committed
refactor: simplify createWithEmail method by removing DTO and using email directly
1 parent b78338b commit f1782f6

File tree

2 files changed

+12
-20
lines changed

2 files changed

+12
-20
lines changed

server/src/seed/seed.service.ts

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -50,10 +50,9 @@ export class SeedService {
5050
const createdUsers: UserDocument[] = [];
5151

5252
for (let i = 0; i < 100; i++) {
53-
const user = await this.userService.createWithEmail({
54-
email: faker.internet.email(),
55-
username: faker.internet.username(),
56-
});
53+
const user = await this.userService.createWithEmail(
54+
faker.internet.email(),
55+
);
5756

5857
//change user creation date
5958
(user as any).createdAt = this.generateRandomDate(

server/src/user/user.service.ts

Lines changed: 9 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -33,32 +33,25 @@ export class UserService {
3333
}
3434
}
3535

36-
public async createWithEmail(
37-
registerDto: NewEmailUserDto,
38-
): Promise<UserDocument> {
36+
public async createWithEmail(email: string): Promise<UserDocument> {
3937
// verify if user exists same email, username or publicName
40-
const user_registered = await this.findByEmail(registerDto.email);
38+
const userByEmail = await this.findByEmail(email);
4139

42-
const username_registered = await this.findByUsername(registerDto.username);
43-
44-
if (user_registered) {
40+
if (userByEmail) {
4541
throw new HttpException(
4642
'Email already registered',
4743
HttpStatus.BAD_REQUEST,
4844
);
4945
}
5046

51-
if (username_registered) {
52-
throw new HttpException(
53-
'Username already registered',
54-
HttpStatus.BAD_REQUEST,
55-
);
56-
}
47+
const emailPrefixUsername = await this.generateUsername(
48+
email.split('@')[0],
49+
);
5750

5851
const user = await this.userModel.create({
59-
email: registerDto.email,
60-
username: registerDto.username,
61-
publicName: registerDto.username,
52+
email: userByEmail,
53+
username: emailPrefixUsername,
54+
publicName: emailPrefixUsername,
6255
});
6356

6457
return user;

0 commit comments

Comments
 (0)