mirror of
https://github.com/detleph/server.git
synced 2026-09-07 07:56:18 +02:00
moved deleteUnverifiedTeams to event router
This commit is contained in:
@@ -44,7 +44,7 @@ const detailedTeam = {
|
|||||||
const verified = {
|
const verified = {
|
||||||
verified: {
|
verified: {
|
||||||
equals: true,
|
equals: true,
|
||||||
}
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
export const getTeams = async (req: Request, res: Response) => {
|
export const getTeams = async (req: Request, res: Response) => {
|
||||||
@@ -66,7 +66,7 @@ export const getTeam = async (req: Request<{ pid: string }>, res: Response) => {
|
|||||||
}
|
}
|
||||||
|
|
||||||
const team = await prisma.team.findUnique({
|
const team = await prisma.team.findUnique({
|
||||||
where: {pid: pid},
|
where: { pid: pid },
|
||||||
select: detailedTeam,
|
select: detailedTeam,
|
||||||
});
|
});
|
||||||
|
|
||||||
@@ -150,13 +150,13 @@ export const deleteTeam = async (req: Request, res: Response) => {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
export const deleteUnverifiedTeams =async (req: Request, res: Response) => {
|
export const deleteUnverifiedTeams = async (req: Request, res: Response) => {
|
||||||
const { pid } = req.params;
|
const { pid } = req.params;
|
||||||
|
|
||||||
await _deleteUnverifiedTeams(pid);
|
await _deleteUnverifiedTeams(pid);
|
||||||
|
|
||||||
res.status(204).end();
|
res.status(204).end();
|
||||||
}
|
};
|
||||||
|
|
||||||
export async function checkTeamExistence(teamPid: string) {
|
export async function checkTeamExistence(teamPid: string) {
|
||||||
const teamCount = await prisma.team.count({
|
const teamCount = await prisma.team.count({
|
||||||
@@ -165,7 +165,7 @@ export async function checkTeamExistence(teamPid: string) {
|
|||||||
if (teamCount == 0) {
|
if (teamCount == 0) {
|
||||||
throw new NotFoundError("team", teamPid);
|
throw new NotFoundError("team", teamPid);
|
||||||
}
|
}
|
||||||
};
|
}
|
||||||
|
|
||||||
export async function getGroupsByTeamPid(teamPid: string) {
|
export async function getGroupsByTeamPid(teamPid: string) {
|
||||||
const team = await prisma.team.findUnique({
|
const team = await prisma.team.findUnique({
|
||||||
@@ -175,20 +175,17 @@ export async function getGroupsByTeamPid(teamPid: string) {
|
|||||||
|
|
||||||
let groups: string[] = [];
|
let groups: string[] = [];
|
||||||
|
|
||||||
team?.participants.forEach((participant: { group: { pid: string; }; }) => {
|
team?.participants.forEach((participant: { group: { pid: string } }) => {
|
||||||
groups.push(participant.group.pid);
|
groups.push(participant.group.pid);
|
||||||
});
|
});
|
||||||
|
|
||||||
return groups;
|
return groups;
|
||||||
};
|
}
|
||||||
|
|
||||||
export async function _deleteUnverifiedTeams(eventPid: string) {
|
export async function _deleteUnverifiedTeams(eventPid: string) {
|
||||||
await prisma.team.deleteMany({
|
await prisma.team.deleteMany({
|
||||||
where: {
|
where: {
|
||||||
AND: [{discipline: {event: {pid: eventPid}}},
|
AND: [{ discipline: { event: { pid: eventPid } } }, { verified: { equals: false } }],
|
||||||
{verified: {equals: false}}
|
},
|
||||||
]
|
|
||||||
}
|
|
||||||
|
|
||||||
});
|
});
|
||||||
};
|
}
|
||||||
|
|||||||
@@ -1,7 +1,8 @@
|
|||||||
import Express from "express";
|
import Express from "express";
|
||||||
import { string } from "zod";
|
import { string } from "zod";
|
||||||
import { addEvent, deleteEvent, getAllEvents, getEvent, updateEvent } from "../Controllers/event.controller";
|
import { addEvent, deleteEvent, getAllEvents, getEvent, updateEvent } from "../Controllers/event.controller";
|
||||||
import { requireAuthentication } from "../Middleware/auth/auth";
|
import { requireAuthentication, requireConfiguredAuthentication } from "../Middleware/auth/auth";
|
||||||
|
import { deleteUnverifiedTeams } from "../Controllers/team.controller";
|
||||||
const router = Express.Router();
|
const router = Express.Router();
|
||||||
|
|
||||||
router.get("/", getAllEvents);
|
router.get("/", getAllEvents);
|
||||||
@@ -14,4 +15,10 @@ router.patch<"/:pid/", { pid: string }>("/:pid/", requireAuthentication, updateE
|
|||||||
|
|
||||||
router.delete<"/:pid/", { pid: string }>("/:pid/", requireAuthentication, deleteEvent);
|
router.delete<"/:pid/", { pid: string }>("/:pid/", requireAuthentication, deleteEvent);
|
||||||
|
|
||||||
|
router.delete<"/:pid/deleteUnverified/", {pid: string}>(
|
||||||
|
"/:pid/deleteUnverified/",
|
||||||
|
requireConfiguredAuthentication({optional: false, type: "admin"}),
|
||||||
|
deleteUnverifiedTeams
|
||||||
|
);
|
||||||
|
|
||||||
export default router;
|
export default router;
|
||||||
|
|||||||
@@ -22,10 +22,5 @@ router.delete<"/:pid/", { pid: string }>(
|
|||||||
requireConfiguredAuthentication({ optional: false, type: { admin: true, teamleader: true } }),
|
requireConfiguredAuthentication({ optional: false, type: { admin: true, teamleader: true } }),
|
||||||
deleteTeam
|
deleteTeam
|
||||||
);
|
);
|
||||||
router.delete<"/:pid/deleteUnverified/", {pid: string}>(
|
|
||||||
"/:pid/deleteUnverified/",
|
|
||||||
requireConfiguredAuthentication({optional: false, type: "admin"}),
|
|
||||||
deleteUnverifiedTeams
|
|
||||||
);
|
|
||||||
|
|
||||||
export default router;
|
export default router;
|
||||||
|
|||||||
Reference in New Issue
Block a user