mirror of
https://github.com/LucasVbr/meeting-app.git
synced 2026-05-13 17:21:53 +00:00
Edit user api
Remove Delete Add GET by ID Took 16 minutes
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
import type {NextApiRequest, NextApiResponse} from 'next';
|
||||
import CRUD from '@/utils/CRUD';
|
||||
import {CreateUserQuery, DeleteUserQuery} from '@/models/api/user';
|
||||
import {CreateUserQuery} from '@/models/api/user';
|
||||
import {PrismaClient} from '@prisma/client';
|
||||
|
||||
export default function handler(
|
||||
@@ -10,8 +10,7 @@ export default function handler(
|
||||
switch (req.method) {
|
||||
case CRUD.CREATE: return createUser(req, res);
|
||||
case CRUD.READ: return readUser(req, res);
|
||||
// case CRUD.UPDATE: return updateUser(req, res);
|
||||
case CRUD.DELETE: return deleteUser(req, res);
|
||||
// case CRUD.DELETE: return deleteUser(req, res);
|
||||
default: return help(res);
|
||||
}
|
||||
}
|
||||
@@ -29,22 +28,17 @@ async function createUser(req: NextApiRequest, res: NextApiResponse) {
|
||||
return res.status(400).send({message: req.body});
|
||||
|
||||
const newUser = await prisma.user.create({
|
||||
data: {email, password, firstName, lastName},
|
||||
data: {...req.body},
|
||||
});
|
||||
|
||||
return res.status(201).send({message: 'createUser', newUser});
|
||||
}
|
||||
async function deleteUser(req: NextApiRequest, res: NextApiResponse) {
|
||||
const {id} = req.query as DeleteUserQuery;
|
||||
if (!id) return res.status(400).send({message: 'error'});
|
||||
|
||||
const deletedUser = await prisma.user.delete({
|
||||
where: {id},
|
||||
});
|
||||
return res.status(200).send({message: 'deleteUser', deletedUser});
|
||||
}
|
||||
async function readUser(req: NextApiRequest, res: NextApiResponse) {
|
||||
const users = await prisma.user.findMany();
|
||||
const user = (req.query.id)
|
||||
? await prisma.user.findUnique({where: {id: req.query.id}})
|
||||
: await prisma.user.findMany()
|
||||
;
|
||||
|
||||
return res.status(200).send({message: 'readUser', users});
|
||||
return res.status(200).send({message: 'readUser', user});
|
||||
}
|
||||
Reference in New Issue
Block a user