Neue Version Index

This commit is contained in:
Server 2025-04-29 10:04:42 +02:00
parent b101cf0c85
commit 625f3f0eec

View File

@ -313,42 +313,70 @@ app.get("/api/teams", async (req, res) => {
SELECT
t.id,
t.name,
t.liga,
t.spieler_gesucht,
t.social_media,
t.trainer,
t.carousel_images,
COUNT(pt.player_id) AS player_count
FROM teams t
LEFT JOIN player_teams pt ON pt.team_id = t.id
GROUP BY t.id
GROUP BY t.id, t.liga, t.spieler_gesucht, t.social_media, t.trainer, t.carousel_images
ORDER BY t.name ASC
`);
res.json(result.rows);
} catch (err) {
console.error(err);
console.error("Fehler beim Abrufen der Teams:", err);
res.status(500).send("Fehler beim Abrufen der Teams");
}
});
//Teams anlegen
app.post("/api/teams", async (req, res) => {
const { name } = req.body;
if (!name) {
return res.status(400).send("Teamname ist erforderlich");
}
//Update Team
app.put("/api/teams/:id", async (req, res) => {
const { name, liga, spieler_gesucht, social_media, trainer, carousel_images } = req.body;
const { id } = req.params;
try {
const result = await pool.query(
"INSERT INTO teams (name) VALUES ($1) RETURNING *",
[name]
`UPDATE teams
SET name = $1, liga = $2, spieler_gesucht = $3, social_media = $4, trainer = $5, carousel_images = $6
WHERE id = $7 RETURNING *`,
[name, liga, spieler_gesucht, social_media, trainer, carousel_images, id]
);
if (result.rowCount === 0) return res.status(404).send("Team nicht gefunden");
res.json(result.rows[0]);
} catch (err) {
console.error("Fehler beim Aktualisieren des Teams:", err);
res.status(500).send("Fehler beim Aktualisieren des Teams");
}
});
//Teams anlegen
app.post("/api/teams", async (req, res) => {
const { name, liga, spieler_gesucht, social_media, trainer, carousel_images } = req.body;
if (!name) return res.status(400).send("Teamname ist erforderlich");
try {
const result = await pool.query(
`INSERT INTO teams (name, liga, spieler_gesucht, social_media, trainer, carousel_images)
VALUES ($1, $2, $3, $4, $5, $6) RETURNING *`,
[name, liga, spieler_gesucht, social_media, trainer, carousel_images]
);
res.status(201).json(result.rows[0]);
} catch (err) {
if (err.code === "23505") {
// 23505 = Unique violation
return res.status(400).send("Ein Team mit diesem Namen existiert bereits");
}
console.error("Fehler beim Anlegen des Teams:", err);
res.status(500).send("Fehler beim Anlegen des Teams");
}