Improve validation and error handling

+ Check code and routes
+ Comment code
This commit is contained in:
Stephan
2022-05-29 13:25:11 +02:00
parent c41bbe9ab4
commit 197fd9c654
4 changed files with 27 additions and 67 deletions
+11 -11
View File
@@ -9,12 +9,12 @@ import { createRolesForTeam } from "./role.controller";
import { z } from "zod";
const TeamBody = z.object({
teamName: z.string(),
leaderEmail: z.string(),
disciplineId: z.string(),
partFirstName: z.string(),
partLastName: z.string(),
partGroupId: z.string(),
teamName: z.string().min(1),
leaderEmail: z.string().email(),
disciplineId: z.string().uuid(),
partFirstName: z.string().min(1),
partLastName: z.string().min(1),
partGroupId: z.string().uuid(),
})
interface CreateTeamBody {
@@ -26,22 +26,22 @@ interface CreateTeamBody {
partGroupId: string;
}
// TODO: Some kind of auth (Teamleader probably)
export const register = async (req: Request<{}, {}, CreateTeamBody>, res: Response) => {
const result = TeamBody.safeParse(req.body);
if (result.success === false) {
res.status(400).json(
return res.status(400).json(
generateInvalidBodyError({
teamName: DataType.STRING,
leaderEmail: DataType.STRING,
disciplineId: DataType.STRING,
disciplineId: DataType.UUID,
partFirstName: DataType.STRING,
partLastName: DataType.STRING,
partGroupId: DataType.STRING,
})
partGroupId: DataType.UUID,
}, result.error)
);
return;
}
const body = result.data;