[UPD] add findOrCreate function
This commit is contained in:
@@ -1,3 +1,5 @@
|
|||||||
|
// users/users.service.ts
|
||||||
|
|
||||||
import { Injectable } from '@nestjs/common';
|
import { Injectable } from '@nestjs/common';
|
||||||
import { User, Prisma } from '@prisma/client';
|
import { User, Prisma } from '@prisma/client';
|
||||||
import { PrismaService } from 'src/prisma/prisma.service';
|
import { PrismaService } from 'src/prisma/prisma.service';
|
||||||
@@ -55,4 +57,20 @@ export class UsersService {
|
|||||||
where,
|
where,
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
async findOrCreate(user: any): Promise<User> {
|
||||||
|
const existingUser = await this.prisma.user.findUnique({
|
||||||
|
where: { email: user.email },
|
||||||
|
});
|
||||||
|
if (existingUser) {
|
||||||
|
return existingUser;
|
||||||
|
}
|
||||||
|
return this.prisma.user.create({
|
||||||
|
data: {
|
||||||
|
email: user.email,
|
||||||
|
username: `${user.firstName} ${user.lastName}`,
|
||||||
|
password: '',
|
||||||
|
},
|
||||||
|
});
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user