Neue Version Index
This commit is contained in:
parent
b101cf0c85
commit
625f3f0eec
62
index.js
62
index.js
@ -310,45 +310,73 @@ app.post("/api/upload-news-image", uploadNewsImage.single("image"), (req, res) =
|
|||||||
app.get("/api/teams", async (req, res) => {
|
app.get("/api/teams", async (req, res) => {
|
||||||
try {
|
try {
|
||||||
const result = await pool.query(`
|
const result = await pool.query(`
|
||||||
SELECT
|
SELECT
|
||||||
t.id,
|
t.id,
|
||||||
t.name,
|
t.name,
|
||||||
|
t.liga,
|
||||||
|
t.spieler_gesucht,
|
||||||
|
t.social_media,
|
||||||
|
t.trainer,
|
||||||
|
t.carousel_images,
|
||||||
COUNT(pt.player_id) AS player_count
|
COUNT(pt.player_id) AS player_count
|
||||||
FROM teams t
|
FROM teams t
|
||||||
LEFT JOIN player_teams pt ON pt.team_id = t.id
|
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
|
ORDER BY t.name ASC
|
||||||
`);
|
`);
|
||||||
res.json(result.rows);
|
res.json(result.rows);
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
console.error(err);
|
console.error("Fehler beim Abrufen der Teams:", err);
|
||||||
res.status(500).send("Fehler beim Abrufen der Teams");
|
res.status(500).send("Fehler beim Abrufen der Teams");
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
//Teams anlegen
|
//Update Team
|
||||||
|
app.put("/api/teams/:id", async (req, res) => {
|
||||||
app.post("/api/teams", async (req, res) => {
|
const { name, liga, spieler_gesucht, social_media, trainer, carousel_images } = req.body;
|
||||||
const { name } = req.body;
|
const { id } = req.params;
|
||||||
|
|
||||||
if (!name) {
|
|
||||||
return res.status(400).send("Teamname ist erforderlich");
|
|
||||||
}
|
|
||||||
|
|
||||||
try {
|
try {
|
||||||
const result = await pool.query(
|
const result = await pool.query(
|
||||||
"INSERT INTO teams (name) VALUES ($1) RETURNING *",
|
`UPDATE teams
|
||||||
[name]
|
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]);
|
res.status(201).json(result.rows[0]);
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
if (err.code === "23505") {
|
if (err.code === "23505") {
|
||||||
// 23505 = Unique violation
|
|
||||||
return res.status(400).send("Ein Team mit diesem Namen existiert bereits");
|
return res.status(400).send("Ein Team mit diesem Namen existiert bereits");
|
||||||
}
|
}
|
||||||
|
|
||||||
console.error("Fehler beim Anlegen des Teams:", err);
|
console.error("Fehler beim Anlegen des Teams:", err);
|
||||||
res.status(500).send("Fehler beim Anlegen des Teams");
|
res.status(500).send("Fehler beim Anlegen des Teams");
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user